@atproto/dev-env 0.5.10 → 0.5.12

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.
Files changed (49) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/dist/bsky.d.ts.map +1 -1
  3. package/dist/bsky.js.map +1 -1
  4. package/dist/bsync.d.ts.map +1 -1
  5. package/dist/bsync.js.map +1 -1
  6. package/dist/feed-gen.d.ts.map +1 -1
  7. package/dist/introspect.d.ts.map +1 -1
  8. package/dist/introspect.js.map +1 -1
  9. package/dist/mock/img/blur-hash-avatar-b64.d.ts +1 -1
  10. package/dist/mock/img/blur-hash-avatar-b64.d.ts.map +1 -1
  11. package/dist/mock/img/labeled-img-b64.d.ts +1 -1
  12. package/dist/mock/img/labeled-img-b64.d.ts.map +1 -1
  13. package/dist/mock/index.d.ts.map +1 -1
  14. package/dist/mock/index.js +15 -8
  15. package/dist/mock/index.js.map +1 -1
  16. package/dist/moderator-client.d.ts.map +1 -1
  17. package/dist/moderator-client.js.map +1 -1
  18. package/dist/network-no-appview.d.ts.map +1 -1
  19. package/dist/network-no-appview.js.map +1 -1
  20. package/dist/network.d.ts.map +1 -1
  21. package/dist/network.js.map +1 -1
  22. package/dist/ozone.d.ts.map +1 -1
  23. package/dist/ozone.js.map +1 -1
  24. package/dist/pds.d.ts.map +1 -1
  25. package/dist/pds.js.map +1 -1
  26. package/dist/plc.d.ts.map +1 -1
  27. package/dist/plc.js.map +1 -1
  28. package/dist/seed/author-feed.d.ts.map +1 -1
  29. package/dist/seed/basic.d.ts +1 -1
  30. package/dist/seed/basic.d.ts.map +1 -1
  31. package/dist/seed/client.d.ts.map +1 -1
  32. package/dist/seed/client.js.map +1 -1
  33. package/dist/seed/follows.d.ts.map +1 -1
  34. package/dist/seed/likes.d.ts.map +1 -1
  35. package/dist/seed/quotes.d.ts.map +1 -1
  36. package/dist/seed/reposts.d.ts.map +1 -1
  37. package/dist/seed/thread-v2.d.ts +4 -4
  38. package/dist/seed/users-bulk.d.ts.map +1 -1
  39. package/dist/seed/users.d.ts.map +1 -1
  40. package/dist/seed/verifications.d.ts.map +1 -1
  41. package/dist/service-profile-lexicon.d.ts.map +1 -1
  42. package/dist/service-profile-ozone.d.ts.map +1 -1
  43. package/dist/service-profile-ozone.js.map +1 -1
  44. package/dist/service-profile.d.ts.map +1 -1
  45. package/dist/service-profile.js.map +1 -1
  46. package/dist/util.d.ts.map +1 -1
  47. package/package.json +19 -18
  48. package/src/mock/index.ts +10 -5
  49. package/tsconfig.build.tsbuildinfo +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"service-profile-ozone.js","sourceRoot":"","sources":["../src/service-profile-ozone.ts"],"names":[],"mappings":"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","sourcesContent":["import { AtpAgent } from '@atproto/api'\nimport { Secp256k1Keypair } from '@atproto/crypto'\nimport { TestPds } from './pds.js'\nimport {\n ServiceMigrationOptions,\n ServiceProfile,\n ServiceUserDetails,\n} from './service-profile.js'\n\nexport class OzoneServiceProfile extends ServiceProfile {\n static async create(\n pds: TestPds,\n ozoneUrl: string,\n userDetails = {\n email: 'mod-authority@test.com',\n handle: 'mod-authority.test',\n password: 'hunter2',\n },\n ) {\n const agent = pds.getAgent()\n await agent.createAccount(userDetails)\n\n const key = await Secp256k1Keypair.create({ exportable: true })\n\n return new OzoneServiceProfile(pds, agent, userDetails, ozoneUrl, key)\n }\n\n protected constructor(\n pds: TestPds,\n agent: AtpAgent,\n userDetails: ServiceUserDetails,\n readonly ozoneUrl: string,\n readonly key: Secp256k1Keypair,\n ) {\n super(pds, agent, userDetails)\n }\n\n async createAppPasswordForVerification() {\n const { data } = await this.agent.com.atproto.server.createAppPassword({\n name: 'ozone-verifier',\n })\n return data.password\n }\n\n async migrateTo(pds: TestPds, options: ServiceMigrationOptions = {}) {\n await super.migrateTo(pds, {\n ...options,\n services: {\n ...options.services,\n atproto_labeler: {\n type: 'AtprotoLabeler',\n endpoint: this.ozoneUrl,\n },\n },\n verificationMethods: {\n ...options.verificationMethods,\n atproto_label: this.key.did(),\n },\n })\n }\n\n async createRecords() {\n await this.agent.app.bsky.actor.profile.create(\n { repo: this.did },\n {\n displayName: 'Dev-env Moderation',\n description: `The pretend version of mod.bsky.app`,\n },\n )\n\n await this.agent.app.bsky.labeler.service.create(\n { repo: this.did, rkey: 'self' },\n {\n policies: {\n labelValues: [\n '!hide',\n '!warn',\n 'porn',\n 'sexual',\n 'nudity',\n 'sexual-figurative',\n 'graphic-media',\n 'self-harm',\n 'sensitive',\n 'extremist',\n 'intolerant',\n 'threat',\n 'rude',\n 'illicit',\n 'security',\n 'unsafe-link',\n 'impersonation',\n 'misinformation',\n 'scam',\n 'engagement-farming',\n 'spam',\n 'rumor',\n 'misleading',\n 'inauthentic',\n ],\n labelValueDefinitions: [\n {\n identifier: 'spam',\n blurs: 'content',\n severity: 'inform',\n defaultSetting: 'hide',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Spam',\n description:\n 'Unwanted, repeated, or unrelated actions that bother users.',\n },\n ],\n },\n {\n identifier: 'impersonation',\n blurs: 'none',\n severity: 'inform',\n defaultSetting: 'hide',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Impersonation',\n description:\n 'Pretending to be someone else without permission.',\n },\n ],\n },\n {\n identifier: 'scam',\n blurs: 'content',\n severity: 'alert',\n defaultSetting: 'hide',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Scam',\n description: 'Scams, phishing & fraud.',\n },\n ],\n },\n {\n identifier: 'intolerant',\n blurs: 'content',\n severity: 'alert',\n defaultSetting: 'warn',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Intolerance',\n description: 'Discrimination against protected groups.',\n },\n ],\n },\n {\n identifier: 'self-harm',\n blurs: 'content',\n severity: 'alert',\n defaultSetting: 'warn',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Self-Harm',\n description:\n 'Promotes self-harm, including graphic images, glorifying discussions, or triggering stories.',\n },\n ],\n },\n {\n identifier: 'security',\n blurs: 'content',\n severity: 'alert',\n defaultSetting: 'hide',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Security Concerns',\n description:\n 'May be unsafe and could harm your device, steal your info, or get your account hacked.',\n },\n ],\n },\n {\n identifier: 'misleading',\n blurs: 'content',\n severity: 'alert',\n defaultSetting: 'warn',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Misleading',\n description:\n 'Altered images/videos, deceptive links, or false statements.',\n },\n ],\n },\n {\n identifier: 'threat',\n blurs: 'content',\n severity: 'inform',\n defaultSetting: 'hide',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Threats',\n description:\n 'Promotes violence or harm towards others, including threats, incitement, or advocacy of harm.',\n },\n ],\n },\n {\n identifier: 'unsafe-link',\n blurs: 'content',\n severity: 'alert',\n defaultSetting: 'hide',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Unsafe link',\n description:\n 'Links to harmful sites with malware, phishing, or violating content that risk security and privacy.',\n },\n ],\n },\n {\n identifier: 'illicit',\n blurs: 'content',\n severity: 'alert',\n defaultSetting: 'hide',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Illicit',\n description:\n 'Promoting or selling potentially illicit goods, services, or activities.',\n },\n ],\n },\n {\n identifier: 'misinformation',\n blurs: 'content',\n severity: 'inform',\n defaultSetting: 'warn',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Misinformation',\n description:\n 'Spreading false or misleading info, including unverified claims and harmful conspiracy theories.',\n },\n ],\n },\n {\n identifier: 'rumor',\n blurs: 'content',\n severity: 'inform',\n defaultSetting: 'warn',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Rumor',\n description:\n 'Approach with caution, as these claims lack evidence from credible sources.',\n },\n ],\n },\n {\n identifier: 'rude',\n blurs: 'content',\n severity: 'inform',\n defaultSetting: 'hide',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Rude',\n description:\n 'Rude or impolite, including crude language and disrespectful comments, without constructive purpose.',\n },\n ],\n },\n {\n identifier: 'extremist',\n blurs: 'content',\n severity: 'alert',\n defaultSetting: 'hide',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Extremist',\n description:\n 'Radical views advocating violence, hate, or discrimination against individuals or groups.',\n },\n ],\n },\n {\n identifier: 'sensitive',\n blurs: 'content',\n severity: 'alert',\n defaultSetting: 'warn',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Sensitive',\n description:\n 'May be upsetting, covering topics like substance abuse or mental health issues, cautioning sensitive viewers.',\n },\n ],\n },\n {\n identifier: 'engagement-farming',\n blurs: 'content',\n severity: 'alert',\n defaultSetting: 'hide',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Engagement Farming',\n description:\n 'Insincere content or bulk actions aimed at gaining followers, including frequent follows, posts, and likes.',\n },\n ],\n },\n {\n identifier: 'inauthentic',\n blurs: 'content',\n severity: 'alert',\n defaultSetting: 'hide',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Inauthentic Account',\n description: 'Bot or a person pretending to be someone else.',\n },\n ],\n },\n {\n identifier: 'sexual-figurative',\n blurs: 'media',\n severity: 'none',\n defaultSetting: 'show',\n adultOnly: true,\n locales: [\n {\n lang: 'en',\n name: 'Sexually Suggestive (Cartoon)',\n description:\n 'Art with explicit or suggestive sexual themes, including provocative imagery or partial nudity.',\n },\n ],\n },\n ],\n },\n createdAt: new Date().toISOString(),\n },\n )\n }\n}\n"]}
1
+ {"version":3,"file":"service-profile-ozone.js","sourceRoot":"","sources":["../src/service-profile-ozone.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAElD,OAAO,EAEL,cAAc,GAEf,MAAM,sBAAsB,CAAA;AAE7B,MAAM,OAAO,mBAAoB,SAAQ,cAAc;IACrD,MAAM,CAAC,KAAK,CAAC,MAAM,CACjB,GAAY,EACZ,QAAgB,EAChB,WAAW,GAAG;QACZ,KAAK,EAAE,wBAAwB;QAC/B,MAAM,EAAE,oBAAoB;QAC5B,QAAQ,EAAE,SAAS;KACpB;QAED,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAA;QAC5B,MAAM,KAAK,CAAC,aAAa,CAAC,WAAW,CAAC,CAAA;QAEtC,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;QAE/D,OAAO,IAAI,mBAAmB,CAAC,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAA;IACxE,CAAC;IAED,YACE,GAAY,EACZ,KAAe,EACf,WAA+B,EACtB,QAAgB,EAChB,GAAqB;QAE9B,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE,WAAW,CAAC,CAAA;wBAHrB,QAAQ;mBACR,GAAG;IAGd,CAAC;IAED,KAAK,CAAC,gCAAgC;QACpC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC;YACrE,IAAI,EAAE,gBAAgB;SACvB,CAAC,CAAA;QACF,OAAO,IAAI,CAAC,QAAQ,CAAA;IACtB,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,GAAY,EAAE,OAAO,GAA4B,EAAE;QACjE,MAAM,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;YACzB,GAAG,OAAO;YACV,QAAQ,EAAE;gBACR,GAAG,OAAO,CAAC,QAAQ;gBACnB,eAAe,EAAE;oBACf,IAAI,EAAE,gBAAgB;oBACtB,QAAQ,EAAE,IAAI,CAAC,QAAQ;iBACxB;aACF;YACD,mBAAmB,EAAE;gBACnB,GAAG,OAAO,CAAC,mBAAmB;gBAC9B,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE;aAC9B;SACF,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAC5C,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,EAClB;YACE,WAAW,EAAE,oBAAoB;YACjC,WAAW,EAAE,qCAAqC;SACnD,CACF,CAAA;QAED,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAC9C,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,EAChC;YACE,QAAQ,EAAE;gBACR,WAAW,EAAE;oBACX,OAAO;oBACP,OAAO;oBACP,MAAM;oBACN,QAAQ;oBACR,QAAQ;oBACR,mBAAmB;oBACnB,eAAe;oBACf,WAAW;oBACX,WAAW;oBACX,WAAW;oBACX,YAAY;oBACZ,QAAQ;oBACR,MAAM;oBACN,SAAS;oBACT,UAAU;oBACV,aAAa;oBACb,eAAe;oBACf,gBAAgB;oBAChB,MAAM;oBACN,oBAAoB;oBACpB,MAAM;oBACN,OAAO;oBACP,YAAY;oBACZ,aAAa;iBACd;gBACD,qBAAqB,EAAE;oBACrB;wBACE,UAAU,EAAE,MAAM;wBAClB,KAAK,EAAE,SAAS;wBAChB,QAAQ,EAAE,QAAQ;wBAClB,cAAc,EAAE,MAAM;wBACtB,SAAS,EAAE,KAAK;wBAChB,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,IAAI;gCACV,IAAI,EAAE,MAAM;gCACZ,WAAW,EACT,6DAA6D;6BAChE;yBACF;qBACF;oBACD;wBACE,UAAU,EAAE,eAAe;wBAC3B,KAAK,EAAE,MAAM;wBACb,QAAQ,EAAE,QAAQ;wBAClB,cAAc,EAAE,MAAM;wBACtB,SAAS,EAAE,KAAK;wBAChB,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,IAAI;gCACV,IAAI,EAAE,eAAe;gCACrB,WAAW,EACT,mDAAmD;6BACtD;yBACF;qBACF;oBACD;wBACE,UAAU,EAAE,MAAM;wBAClB,KAAK,EAAE,SAAS;wBAChB,QAAQ,EAAE,OAAO;wBACjB,cAAc,EAAE,MAAM;wBACtB,SAAS,EAAE,KAAK;wBAChB,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,IAAI;gCACV,IAAI,EAAE,MAAM;gCACZ,WAAW,EAAE,0BAA0B;6BACxC;yBACF;qBACF;oBACD;wBACE,UAAU,EAAE,YAAY;wBACxB,KAAK,EAAE,SAAS;wBAChB,QAAQ,EAAE,OAAO;wBACjB,cAAc,EAAE,MAAM;wBACtB,SAAS,EAAE,KAAK;wBAChB,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,IAAI;gCACV,IAAI,EAAE,aAAa;gCACnB,WAAW,EAAE,0CAA0C;6BACxD;yBACF;qBACF;oBACD;wBACE,UAAU,EAAE,WAAW;wBACvB,KAAK,EAAE,SAAS;wBAChB,QAAQ,EAAE,OAAO;wBACjB,cAAc,EAAE,MAAM;wBACtB,SAAS,EAAE,KAAK;wBAChB,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,IAAI;gCACV,IAAI,EAAE,WAAW;gCACjB,WAAW,EACT,8FAA8F;6BACjG;yBACF;qBACF;oBACD;wBACE,UAAU,EAAE,UAAU;wBACtB,KAAK,EAAE,SAAS;wBAChB,QAAQ,EAAE,OAAO;wBACjB,cAAc,EAAE,MAAM;wBACtB,SAAS,EAAE,KAAK;wBAChB,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,IAAI;gCACV,IAAI,EAAE,mBAAmB;gCACzB,WAAW,EACT,wFAAwF;6BAC3F;yBACF;qBACF;oBACD;wBACE,UAAU,EAAE,YAAY;wBACxB,KAAK,EAAE,SAAS;wBAChB,QAAQ,EAAE,OAAO;wBACjB,cAAc,EAAE,MAAM;wBACtB,SAAS,EAAE,KAAK;wBAChB,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,IAAI;gCACV,IAAI,EAAE,YAAY;gCAClB,WAAW,EACT,8DAA8D;6BACjE;yBACF;qBACF;oBACD;wBACE,UAAU,EAAE,QAAQ;wBACpB,KAAK,EAAE,SAAS;wBAChB,QAAQ,EAAE,QAAQ;wBAClB,cAAc,EAAE,MAAM;wBACtB,SAAS,EAAE,KAAK;wBAChB,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,IAAI;gCACV,IAAI,EAAE,SAAS;gCACf,WAAW,EACT,+FAA+F;6BAClG;yBACF;qBACF;oBACD;wBACE,UAAU,EAAE,aAAa;wBACzB,KAAK,EAAE,SAAS;wBAChB,QAAQ,EAAE,OAAO;wBACjB,cAAc,EAAE,MAAM;wBACtB,SAAS,EAAE,KAAK;wBAChB,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,IAAI;gCACV,IAAI,EAAE,aAAa;gCACnB,WAAW,EACT,qGAAqG;6BACxG;yBACF;qBACF;oBACD;wBACE,UAAU,EAAE,SAAS;wBACrB,KAAK,EAAE,SAAS;wBAChB,QAAQ,EAAE,OAAO;wBACjB,cAAc,EAAE,MAAM;wBACtB,SAAS,EAAE,KAAK;wBAChB,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,IAAI;gCACV,IAAI,EAAE,SAAS;gCACf,WAAW,EACT,0EAA0E;6BAC7E;yBACF;qBACF;oBACD;wBACE,UAAU,EAAE,gBAAgB;wBAC5B,KAAK,EAAE,SAAS;wBAChB,QAAQ,EAAE,QAAQ;wBAClB,cAAc,EAAE,MAAM;wBACtB,SAAS,EAAE,KAAK;wBAChB,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,IAAI;gCACV,IAAI,EAAE,gBAAgB;gCACtB,WAAW,EACT,kGAAkG;6BACrG;yBACF;qBACF;oBACD;wBACE,UAAU,EAAE,OAAO;wBACnB,KAAK,EAAE,SAAS;wBAChB,QAAQ,EAAE,QAAQ;wBAClB,cAAc,EAAE,MAAM;wBACtB,SAAS,EAAE,KAAK;wBAChB,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,IAAI;gCACV,IAAI,EAAE,OAAO;gCACb,WAAW,EACT,6EAA6E;6BAChF;yBACF;qBACF;oBACD;wBACE,UAAU,EAAE,MAAM;wBAClB,KAAK,EAAE,SAAS;wBAChB,QAAQ,EAAE,QAAQ;wBAClB,cAAc,EAAE,MAAM;wBACtB,SAAS,EAAE,KAAK;wBAChB,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,IAAI;gCACV,IAAI,EAAE,MAAM;gCACZ,WAAW,EACT,sGAAsG;6BACzG;yBACF;qBACF;oBACD;wBACE,UAAU,EAAE,WAAW;wBACvB,KAAK,EAAE,SAAS;wBAChB,QAAQ,EAAE,OAAO;wBACjB,cAAc,EAAE,MAAM;wBACtB,SAAS,EAAE,KAAK;wBAChB,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,IAAI;gCACV,IAAI,EAAE,WAAW;gCACjB,WAAW,EACT,2FAA2F;6BAC9F;yBACF;qBACF;oBACD;wBACE,UAAU,EAAE,WAAW;wBACvB,KAAK,EAAE,SAAS;wBAChB,QAAQ,EAAE,OAAO;wBACjB,cAAc,EAAE,MAAM;wBACtB,SAAS,EAAE,KAAK;wBAChB,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,IAAI;gCACV,IAAI,EAAE,WAAW;gCACjB,WAAW,EACT,+GAA+G;6BAClH;yBACF;qBACF;oBACD;wBACE,UAAU,EAAE,oBAAoB;wBAChC,KAAK,EAAE,SAAS;wBAChB,QAAQ,EAAE,OAAO;wBACjB,cAAc,EAAE,MAAM;wBACtB,SAAS,EAAE,KAAK;wBAChB,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,IAAI;gCACV,IAAI,EAAE,oBAAoB;gCAC1B,WAAW,EACT,6GAA6G;6BAChH;yBACF;qBACF;oBACD;wBACE,UAAU,EAAE,aAAa;wBACzB,KAAK,EAAE,SAAS;wBAChB,QAAQ,EAAE,OAAO;wBACjB,cAAc,EAAE,MAAM;wBACtB,SAAS,EAAE,KAAK;wBAChB,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,IAAI;gCACV,IAAI,EAAE,qBAAqB;gCAC3B,WAAW,EAAE,gDAAgD;6BAC9D;yBACF;qBACF;oBACD;wBACE,UAAU,EAAE,mBAAmB;wBAC/B,KAAK,EAAE,OAAO;wBACd,QAAQ,EAAE,MAAM;wBAChB,cAAc,EAAE,MAAM;wBACtB,SAAS,EAAE,IAAI;wBACf,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,IAAI;gCACV,IAAI,EAAE,+BAA+B;gCACrC,WAAW,EACT,iGAAiG;6BACpG;yBACF;qBACF;iBACF;aACF;YACD,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CACF,CAAA;IACH,CAAC;CACF","sourcesContent":["import { AtpAgent } from '@atproto/api'\nimport { Secp256k1Keypair } from '@atproto/crypto'\nimport { TestPds } from './pds.js'\nimport {\n ServiceMigrationOptions,\n ServiceProfile,\n ServiceUserDetails,\n} from './service-profile.js'\n\nexport class OzoneServiceProfile extends ServiceProfile {\n static async create(\n pds: TestPds,\n ozoneUrl: string,\n userDetails = {\n email: 'mod-authority@test.com',\n handle: 'mod-authority.test',\n password: 'hunter2',\n },\n ) {\n const agent = pds.getAgent()\n await agent.createAccount(userDetails)\n\n const key = await Secp256k1Keypair.create({ exportable: true })\n\n return new OzoneServiceProfile(pds, agent, userDetails, ozoneUrl, key)\n }\n\n protected constructor(\n pds: TestPds,\n agent: AtpAgent,\n userDetails: ServiceUserDetails,\n readonly ozoneUrl: string,\n readonly key: Secp256k1Keypair,\n ) {\n super(pds, agent, userDetails)\n }\n\n async createAppPasswordForVerification() {\n const { data } = await this.agent.com.atproto.server.createAppPassword({\n name: 'ozone-verifier',\n })\n return data.password\n }\n\n async migrateTo(pds: TestPds, options: ServiceMigrationOptions = {}) {\n await super.migrateTo(pds, {\n ...options,\n services: {\n ...options.services,\n atproto_labeler: {\n type: 'AtprotoLabeler',\n endpoint: this.ozoneUrl,\n },\n },\n verificationMethods: {\n ...options.verificationMethods,\n atproto_label: this.key.did(),\n },\n })\n }\n\n async createRecords() {\n await this.agent.app.bsky.actor.profile.create(\n { repo: this.did },\n {\n displayName: 'Dev-env Moderation',\n description: `The pretend version of mod.bsky.app`,\n },\n )\n\n await this.agent.app.bsky.labeler.service.create(\n { repo: this.did, rkey: 'self' },\n {\n policies: {\n labelValues: [\n '!hide',\n '!warn',\n 'porn',\n 'sexual',\n 'nudity',\n 'sexual-figurative',\n 'graphic-media',\n 'self-harm',\n 'sensitive',\n 'extremist',\n 'intolerant',\n 'threat',\n 'rude',\n 'illicit',\n 'security',\n 'unsafe-link',\n 'impersonation',\n 'misinformation',\n 'scam',\n 'engagement-farming',\n 'spam',\n 'rumor',\n 'misleading',\n 'inauthentic',\n ],\n labelValueDefinitions: [\n {\n identifier: 'spam',\n blurs: 'content',\n severity: 'inform',\n defaultSetting: 'hide',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Spam',\n description:\n 'Unwanted, repeated, or unrelated actions that bother users.',\n },\n ],\n },\n {\n identifier: 'impersonation',\n blurs: 'none',\n severity: 'inform',\n defaultSetting: 'hide',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Impersonation',\n description:\n 'Pretending to be someone else without permission.',\n },\n ],\n },\n {\n identifier: 'scam',\n blurs: 'content',\n severity: 'alert',\n defaultSetting: 'hide',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Scam',\n description: 'Scams, phishing & fraud.',\n },\n ],\n },\n {\n identifier: 'intolerant',\n blurs: 'content',\n severity: 'alert',\n defaultSetting: 'warn',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Intolerance',\n description: 'Discrimination against protected groups.',\n },\n ],\n },\n {\n identifier: 'self-harm',\n blurs: 'content',\n severity: 'alert',\n defaultSetting: 'warn',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Self-Harm',\n description:\n 'Promotes self-harm, including graphic images, glorifying discussions, or triggering stories.',\n },\n ],\n },\n {\n identifier: 'security',\n blurs: 'content',\n severity: 'alert',\n defaultSetting: 'hide',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Security Concerns',\n description:\n 'May be unsafe and could harm your device, steal your info, or get your account hacked.',\n },\n ],\n },\n {\n identifier: 'misleading',\n blurs: 'content',\n severity: 'alert',\n defaultSetting: 'warn',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Misleading',\n description:\n 'Altered images/videos, deceptive links, or false statements.',\n },\n ],\n },\n {\n identifier: 'threat',\n blurs: 'content',\n severity: 'inform',\n defaultSetting: 'hide',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Threats',\n description:\n 'Promotes violence or harm towards others, including threats, incitement, or advocacy of harm.',\n },\n ],\n },\n {\n identifier: 'unsafe-link',\n blurs: 'content',\n severity: 'alert',\n defaultSetting: 'hide',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Unsafe link',\n description:\n 'Links to harmful sites with malware, phishing, or violating content that risk security and privacy.',\n },\n ],\n },\n {\n identifier: 'illicit',\n blurs: 'content',\n severity: 'alert',\n defaultSetting: 'hide',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Illicit',\n description:\n 'Promoting or selling potentially illicit goods, services, or activities.',\n },\n ],\n },\n {\n identifier: 'misinformation',\n blurs: 'content',\n severity: 'inform',\n defaultSetting: 'warn',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Misinformation',\n description:\n 'Spreading false or misleading info, including unverified claims and harmful conspiracy theories.',\n },\n ],\n },\n {\n identifier: 'rumor',\n blurs: 'content',\n severity: 'inform',\n defaultSetting: 'warn',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Rumor',\n description:\n 'Approach with caution, as these claims lack evidence from credible sources.',\n },\n ],\n },\n {\n identifier: 'rude',\n blurs: 'content',\n severity: 'inform',\n defaultSetting: 'hide',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Rude',\n description:\n 'Rude or impolite, including crude language and disrespectful comments, without constructive purpose.',\n },\n ],\n },\n {\n identifier: 'extremist',\n blurs: 'content',\n severity: 'alert',\n defaultSetting: 'hide',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Extremist',\n description:\n 'Radical views advocating violence, hate, or discrimination against individuals or groups.',\n },\n ],\n },\n {\n identifier: 'sensitive',\n blurs: 'content',\n severity: 'alert',\n defaultSetting: 'warn',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Sensitive',\n description:\n 'May be upsetting, covering topics like substance abuse or mental health issues, cautioning sensitive viewers.',\n },\n ],\n },\n {\n identifier: 'engagement-farming',\n blurs: 'content',\n severity: 'alert',\n defaultSetting: 'hide',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Engagement Farming',\n description:\n 'Insincere content or bulk actions aimed at gaining followers, including frequent follows, posts, and likes.',\n },\n ],\n },\n {\n identifier: 'inauthentic',\n blurs: 'content',\n severity: 'alert',\n defaultSetting: 'hide',\n adultOnly: false,\n locales: [\n {\n lang: 'en',\n name: 'Inauthentic Account',\n description: 'Bot or a person pretending to be someone else.',\n },\n ],\n },\n {\n identifier: 'sexual-figurative',\n blurs: 'media',\n severity: 'none',\n defaultSetting: 'show',\n adultOnly: true,\n locales: [\n {\n lang: 'en',\n name: 'Sexually Suggestive (Cartoon)',\n description:\n 'Art with explicit or suggestive sexual themes, including provocative imagery or partial nudity.',\n },\n ],\n },\n ],\n },\n createdAt: new Date().toISOString(),\n },\n )\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"service-profile.d.ts","sourceRoot":"","sources":["../src/service-profile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAElC,MAAM,MAAM,kBAAkB,GAAG;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClC,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC9C,CAAA;AAED,qBAAa,cAAc;IAEvB,SAAS,CAAC,GAAG,EAAE,OAAO;IACtB,yDAAyD;IACzD,SAAS,CAAC,KAAK,EAAE,QAAQ;IACzB,SAAS,CAAC,WAAW,EAAE,kBAAkB;IAJ3C,SAAS,aACG,GAAG,EAAE,OAAO;IACtB,yDAAyD;IAC/C,KAAK,EAAE,QAAQ,EACf,WAAW,EAAE,kBAAkB;IAG3C,IAAI,GAAG,IAAI,SAAS,CAEnB;IAEK,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,GAAE,uBAA4B;CAmEvE"}
1
+ {"version":3,"file":"service-profile.d.ts","sourceRoot":"","sources":["../src/service-profile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAElC,MAAM,MAAM,kBAAkB,GAAG;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClC,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC9C,CAAA;AAED,qBAAa,cAAc;IAEvB,SAAS,CAAC,GAAG,EAAE,OAAO;IACtB,yDAAyD;IACzD,SAAS,CAAC,KAAK,EAAE,QAAQ;IACzB,SAAS,CAAC,WAAW,EAAE,kBAAkB;IAJ3C,SAAS,aACG,GAAG,EAAE,OAAO;IACtB,yDAAyD;IAC/C,KAAK,EAAE,QAAQ,EACf,WAAW,EAAE,kBAAkB,EACvC;IAEJ,IAAI,GAAG,IAAI,SAAS,CAEnB;IAEK,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,GAAE,uBAA4B,iBAkErE;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"service-profile.js","sourceRoot":"","sources":["../src/service-profile.ts"],"names":[],"mappings":"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","sourcesContent":["import { AtpAgent } from '@atproto/api'\nimport { DidString } from '@atproto/lex'\nimport { TestPds } from './pds.js'\n\nexport type ServiceUserDetails = {\n email: string\n handle: string\n password: string\n}\n\nexport type ServiceMigrationOptions = {\n services?: Record<string, unknown>\n verificationMethods?: Record<string, unknown>\n}\n\nexport class ServiceProfile {\n protected constructor(\n protected pds: TestPds,\n /** @note assumes the session is already authenticated */\n protected agent: AtpAgent,\n protected userDetails: ServiceUserDetails,\n ) {}\n\n get did(): DidString {\n return this.agent.assertDid\n }\n\n async migrateTo(newPds: TestPds, options: ServiceMigrationOptions = {}) {\n const newAgent = newPds.getAgent()\n\n const newPdsDesc = await newAgent.com.atproto.server.describeServer()\n const serviceAuth = await this.agent.com.atproto.server.getServiceAuth({\n aud: newPdsDesc.data.did,\n lxm: 'com.atproto.server.createAccount',\n })\n\n const inviteCode = newPds.ctx.cfg.invites.required\n ? await newAgent.com.atproto.server\n .createInviteCode(\n { useCount: 1 },\n {\n encoding: 'application/json',\n headers: newPds.adminAuthHeaders(),\n },\n )\n .then((res) => res.data.code)\n : undefined\n\n await newAgent.createAccount(\n {\n ...this.userDetails,\n inviteCode,\n did: this.did,\n },\n {\n encoding: 'application/json',\n headers: { authorization: `Bearer ${serviceAuth.data.token}` },\n },\n )\n\n // The session manager will use the \"didDoc\" in the result of\n // \"createAccount\" in order to setup the pdsUrl. However, since are in the\n // process of migrating, that didDoc references the old PDS. In order to\n // avoid calling the old PDS, let's clear the pdsUrl, which will result in\n // the (new) serviceUrl being used.\n newAgent.sessionManager.pdsUrl = undefined\n\n const newDidCredentialsRes =\n await newAgent.com.atproto.identity.getRecommendedDidCredentials()\n\n await this.agent.com.atproto.identity.requestPlcOperationSignature()\n const { token } = await this.pds.ctx.accountManager.db.db\n .selectFrom('email_token')\n .select('token')\n .where('did', '=', this.did)\n .where('purpose', '=', 'plc_operation')\n .executeTakeFirstOrThrow()\n\n const op = { ...newDidCredentialsRes.data, token }\n Object.assign((op.services ??= {}), options.services)\n Object.assign((op.verificationMethods ??= {}), options.verificationMethods)\n\n const signedPlcOperation =\n await this.agent.com.atproto.identity.signPlcOperation(op)\n\n await newAgent.com.atproto.identity.submitPlcOperation({\n operation: signedPlcOperation.data.operation,\n })\n\n await newAgent.com.atproto.server.activateAccount()\n\n this.pds = newPds\n this.agent = newAgent\n }\n}\n"]}
1
+ {"version":3,"file":"service-profile.js","sourceRoot":"","sources":["../src/service-profile.ts"],"names":[],"mappings":"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","sourcesContent":["import { AtpAgent } from '@atproto/api'\nimport { DidString } from '@atproto/lex'\nimport { TestPds } from './pds.js'\n\nexport type ServiceUserDetails = {\n email: string\n handle: string\n password: string\n}\n\nexport type ServiceMigrationOptions = {\n services?: Record<string, unknown>\n verificationMethods?: Record<string, unknown>\n}\n\nexport class ServiceProfile {\n protected constructor(\n protected pds: TestPds,\n /** @note assumes the session is already authenticated */\n protected agent: AtpAgent,\n protected userDetails: ServiceUserDetails,\n ) {}\n\n get did(): DidString {\n return this.agent.assertDid\n }\n\n async migrateTo(newPds: TestPds, options: ServiceMigrationOptions = {}) {\n const newAgent = newPds.getAgent()\n\n const newPdsDesc = await newAgent.com.atproto.server.describeServer()\n const serviceAuth = await this.agent.com.atproto.server.getServiceAuth({\n aud: newPdsDesc.data.did,\n lxm: 'com.atproto.server.createAccount',\n })\n\n const inviteCode = newPds.ctx.cfg.invites.required\n ? await newAgent.com.atproto.server\n .createInviteCode(\n { useCount: 1 },\n {\n encoding: 'application/json',\n headers: newPds.adminAuthHeaders(),\n },\n )\n .then((res) => res.data.code)\n : undefined\n\n await newAgent.createAccount(\n {\n ...this.userDetails,\n inviteCode,\n did: this.did,\n },\n {\n encoding: 'application/json',\n headers: { authorization: `Bearer ${serviceAuth.data.token}` },\n },\n )\n\n // The session manager will use the \"didDoc\" in the result of\n // \"createAccount\" in order to setup the pdsUrl. However, since are in the\n // process of migrating, that didDoc references the old PDS. In order to\n // avoid calling the old PDS, let's clear the pdsUrl, which will result in\n // the (new) serviceUrl being used.\n newAgent.sessionManager.pdsUrl = undefined\n\n const newDidCredentialsRes =\n await newAgent.com.atproto.identity.getRecommendedDidCredentials()\n\n await this.agent.com.atproto.identity.requestPlcOperationSignature()\n const { token } = await this.pds.ctx.accountManager.db.db\n .selectFrom('email_token')\n .select('token')\n .where('did', '=', this.did)\n .where('purpose', '=', 'plc_operation')\n .executeTakeFirstOrThrow()\n\n const op = { ...newDidCredentialsRes.data, token }\n Object.assign((op.services ??= {}), options.services)\n Object.assign((op.verificationMethods ??= {}), options.verificationMethods)\n\n const signedPlcOperation =\n await this.agent.com.atproto.identity.signPlcOperation(op)\n\n await newAgent.com.atproto.identity.submitPlcOperation({\n operation: signedPlcOperation.data.operation,\n })\n\n await newAgent.com.atproto.server.activateAccount()\n\n this.pds = newPds\n this.agent = newAgent\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAEtC,eAAO,MAAM,oBAAoB,GAAI,KAAK,OAAO,EAAE,OAAO,QAAQ,SAMjE,CAAA;AAED,eAAO,MAAM,aAAa,GAAI,YAAY,UAAU,EAAE,KAAK,OAAO,SAwCjE,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,KAAK,OAAO,SAQtC,CAAA;AAGD,eAAO,MAAM,YAAY,cAOxB,CAAA;AAED,eAAO,MAAM,eAAe,GAAU,MAAM;IAC1C,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;CACZ,KAAG,OAAO,CAAC,SAAS,CAcpB,CAAA"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAEtC,eAAO,MAAM,oBAAoB,QAAS,OAAO,SAAS,QAAQ,SAMjE,CAAA;AAED,eAAO,MAAM,aAAa,eAAgB,UAAU,OAAO,OAAO,SAwCjE,CAAA;AAED,eAAO,MAAM,UAAU,QAAS,OAAO,SAQtC,CAAA;AAGD,eAAO,MAAM,YAAY,cAOxB,CAAA;AAED,eAAO,MAAM,eAAe,SAAgB;IAC1C,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;CACZ,KAAG,OAAO,CAAC,SAAS,CAcpB,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atproto/dev-env",
3
- "version": "0.5.10",
3
+ "version": "0.5.12",
4
4
  "license": "MIT",
5
5
  "description": "Local development environment helper for atproto development",
6
6
  "keywords": [
@@ -12,7 +12,6 @@
12
12
  "url": "https://github.com/bluesky-social/atproto",
13
13
  "directory": "packages/dev-env"
14
14
  },
15
- "bin": "bin.js",
16
15
  "engines": {
17
16
  "node": ">=22"
18
17
  },
@@ -25,23 +24,22 @@
25
24
  "multiformats": "^13.0.0",
26
25
  "uint8arrays": "^5.0.0",
27
26
  "undici": "^6.14.1",
28
- "@atproto/api": "^0.20.13",
29
- "@atproto/bsky": "^0.0.241",
30
- "@atproto/common-web": "^0.5.0",
31
- "@atproto/identity": "^0.5.0",
32
- "@atproto/crypto": "^0.5.0",
33
- "@atproto/lexicon": "^0.7.1",
34
- "@atproto/pds": "^0.5.2",
35
- "@atproto/ozone": "^0.2.3",
36
- "@atproto/lex": "^0.1.3",
37
- "@atproto/sync": "^0.3.1",
38
- "@atproto/syntax": "^0.6.1",
39
- "@atproto/xrpc-server": "^0.11.1",
40
- "@atproto/bsync": "^0.0.27"
27
+ "@atproto/api": "^0.20.16",
28
+ "@atproto/bsync": "^0.0.28",
29
+ "@atproto/bsky": "^0.0.242",
30
+ "@atproto/common-web": "^0.5.1",
31
+ "@atproto/crypto": "^0.5.1",
32
+ "@atproto/identity": "^0.5.1",
33
+ "@atproto/lex": "^0.1.4",
34
+ "@atproto/lexicon": "^0.7.2",
35
+ "@atproto/pds": "^0.5.5",
36
+ "@atproto/ozone": "^0.2.4",
37
+ "@atproto/syntax": "^0.6.2",
38
+ "@atproto/sync": "^0.3.2",
39
+ "@atproto/xrpc-server": "^0.11.2"
41
40
  },
42
41
  "devDependencies": {
43
- "@types/express": "^4.17.13",
44
- "typescript": "^6.0.3"
42
+ "@types/express": "^4.17.13"
45
43
  },
46
44
  "type": "module",
47
45
  "exports": {
@@ -51,8 +49,11 @@
51
49
  }
52
50
  },
53
51
  "scripts": {
54
- "build": "tsc --build tsconfig.build.json",
52
+ "build": "tsgo --build tsconfig.build.json",
55
53
  "start": "../dev-infra/with-test-redis-and-db.sh node --enable-source-maps dist/bin.js",
56
54
  "dev": "../dev-infra/with-test-redis-and-db.sh node --enable-source-maps --watch dist/bin.js"
55
+ },
56
+ "bin": {
57
+ "dev-env": "bin.js"
57
58
  }
58
59
  }
package/src/mock/index.ts CHANGED
@@ -333,19 +333,24 @@ export async function generateMockSetup(env: TestNetwork) {
333
333
  rkey: urip.rkey,
334
334
  })
335
335
  const author = picka(userAgents)
336
- posts.push(
337
- await author.app.bsky.feed.post.create(
336
+ try {
337
+ const post = await author.app.bsky.feed.post.create(
338
338
  { repo: author.did },
339
339
  {
340
340
  text: picka(replyTexts),
341
341
  reply: {
342
- root: target.value.reply ? target.value.reply.root : target,
342
+ root: target.value.reply?.root ?? target,
343
343
  parent: target,
344
344
  },
345
345
  createdAt: date.next().value,
346
346
  },
347
- ),
348
- )
347
+ )
348
+
349
+ posts.push(post)
350
+ } catch (err) {
351
+ // @TODO Investigate why this sometimes fails.
352
+ console.error('Failed to create reply', err)
353
+ }
349
354
  }
350
355
 
351
356
  // a set of likes
@@ -1 +1 @@
1
- {"root":["./src/bin.ts","./src/bsky.ts","./src/bsync.ts","./src/const.ts","./src/env.ts","./src/feed-gen.ts","./src/index.ts","./src/introspect.ts","./src/moderator-client.ts","./src/network-no-appview.ts","./src/network.ts","./src/ozone.ts","./src/pds.ts","./src/plc.ts","./src/service-profile-lexicon.ts","./src/service-profile-ozone.ts","./src/service-profile.ts","./src/types.ts","./src/util.ts","./src/mock/data.ts","./src/mock/index.ts","./src/mock/img/blur-hash-avatar-b64.ts","./src/mock/img/labeled-img-b64.ts","./src/seed/author-feed.ts","./src/seed/basic.ts","./src/seed/client.ts","./src/seed/follows.ts","./src/seed/index.ts","./src/seed/likes.ts","./src/seed/quotes.ts","./src/seed/reposts.ts","./src/seed/thread-v2.ts","./src/seed/users-bulk.ts","./src/seed/users.ts","./src/seed/verifications.ts"],"version":"6.0.3"}
1
+ {"version":"7.0.0-dev.20260614.1","root":["./src/bin.ts","./src/bsky.ts","./src/bsync.ts","./src/const.ts","./src/env.ts","./src/feed-gen.ts","./src/index.ts","./src/introspect.ts","./src/moderator-client.ts","./src/network-no-appview.ts","./src/network.ts","./src/ozone.ts","./src/pds.ts","./src/plc.ts","./src/service-profile-lexicon.ts","./src/service-profile-ozone.ts","./src/service-profile.ts","./src/types.ts","./src/util.ts","./src/mock/data.ts","./src/mock/index.ts","./src/mock/img/blur-hash-avatar-b64.ts","./src/mock/img/labeled-img-b64.ts","./src/seed/author-feed.ts","./src/seed/basic.ts","./src/seed/client.ts","./src/seed/follows.ts","./src/seed/index.ts","./src/seed/likes.ts","./src/seed/quotes.ts","./src/seed/reposts.ts","./src/seed/thread-v2.ts","./src/seed/users-bulk.ts","./src/seed/users.ts","./src/seed/verifications.ts"]}