* Fix typo
* Add failing test for attaching image to a post
* Tidy failing test
* Fix
* Expand the available image resize fit modes
* Add proper validation of glob-prefixed mimes (eg image/*)
* Detect and handle blobs in post embeds
* evert "Expand the available image resize fit modes"
This reverts commit 3390fbe4d091a04f9b67a2885eae19d025747fc4.
* Use fit: inside for post media
* Update tests
* Make the thumbnail optional in external embeds
Co-authored-by: Devin Ivy <devinivy@gmail.com>
* Fix the generated type for encoding when the value is */* (close#391)
* Add 'toKnownError' test and fix named error for updateProfile
* Improve blob errors
* adding in banners & some lex codegen improvements for server
* fix up spacing
* couple small fixes
* client codegen & remove media embed schemas
* hook up banners
* missed a couple of lexicons
* fix byte streaming from mem blobstore
* Enlarge avatar maxSize to 300kb
* Skip the cache on empty files
Co-authored-by: Paul Frazee <pfrazee@gmail.com>
* Update LexXrpcBody encoding to always be a single string with comma-separated values
* Update lexicon union-type to use as a discriminator, and add closed flag to establish if new union members may be added
* Fix to generated code for open unions
* Factor out app.bsky.system.declRef
* Factor out app.bsky.actor.ref and app.bsky.feed.embed
* Factor out com.atproto.repo.strongRef and use app.bsky.actor.ref in more places
* Modify app.bsky.actor.ref to be light reference, add #withInfo for indexed info
* Implement types and validation for new NIH lexicon DSL
* Update xprc and xrpc-server to use new NIH lexicon DSL
* Simplification: dont allow lexicon definitions to be refs or ref arrays
* Add 'unknown' primitive type to NIH lexicon
* Implement client codegen for NIH Lexicon
* Implement server codegen for NIH Lexicon
* Add the 'datetime' primitive type to the NIH Lexicon
* Rework lexicons to use new NIH Lexicon DSL
* Readd tokens to code generation
* Update all code to use new NIH Lexicon (all tests passing!)
* Add imports from external files to lex-cli codegen
* Do not allow records, queries, or procedures outside of the main def
* Update packages/lex-cli/src/util.ts
Co-authored-by: devin ivy <devinivy@gmail.com>
* Linter pass
* Add knownValue output to codegen
* Add comments to codegen
* Use enum and const in codegen
* Rework lexicon 'properties' structure
* Treat falsy query params as undefined
Co-authored-by: devin ivy <devinivy@gmail.com>
* Remove now-redundant param presence validation
Co-authored-by: devin ivy <devinivy@gmail.com>
* Include scene trends in feeds
* Tidy
* Tidy
* Sweep app.bsky schemas for standard actor declarations, remove reference from com.atproto
* Replace declarationCid on follow, assertion, confirmation records
* Sweep pds for standard app.bsky actor declarations
* Fix dev-env
* Tidy after merge
* Model procedure for setting a vote on a post
* Implement app.bsky.feed.setVote() method
* Support json schema subset for parameters in lexicon and lex-cli
* Update lexicons w/ json schema parameters
* Use enum in getVotes parameters
* Support json schema subset for parameters in xrpc-server, ajv validation
* Include parameter enums in generated markdown
* Tidy
* Unify xrpc parameter md docs with inputs and outputs: show ts interfaces
* Tidy
* Add a scene to the dev-env mock data
* Add 'member' to myState output of getProfile
* Await db writes in dev env mock data
Co-authored-by: devin ivy <devinivy@gmail.com>
Co-authored-by: devin ivy <devinivy@gmail.com>
* Model votes in lexicon, remove likes
* Model votes in db, setup notifs, fix schema
* Update pds logic, move likes to votes
* Codegen
* Update tests for votes
* Test vote filter by direction
* Fix dev-env
* scene creation w unique handles
* wip
* user_dids -> did_handle
* invites -> assertion/confirmation
* do all the ops on scene create
* start tests + bug fixin
* user can make requests on behalf of scene
* accepting invites
* fix schema names
* get scene profiles
* return actor type in getProfile
* scene views test
* notifications test
* patch up a few db things
* rework handle & email noramlization
* codegen createscene errors
* Segment lexicons into more specific namespaces and tighten up some naming conventions
* Update API to use new lexicons
* Update pds and dev-env to use new lexicons
* Update lexicons of xprc procedures to avoid using query params when possible
* Update code generated by lex-cli to reduce param counts
* Update all API usages to new signatures
* Fix readme
* Remove params from postNotifiactionsSeen lexicon schema
* Add token schema types to lexicon package
* Add token-schema support to lex-cli package generation of markdown, client code, and server code
* Add two token lexicons: actorUser and actorScene
* Remove dead code
* schemas
* database & buffing up schemas
* declaration on createAccount, + fixing up test client
* fix up dev-env
* schema comments
* nsid for declaration actorType
* declaration description
* oops token schema slipped in
* declaration -> declarationCid
* missed a couple of db things
* user-did table
* yay fixed it
* resolve available domains from db
* serverDid + tests
* check for invalid domains
* mv available domain check to constructor
* oops reverse check
* clean up old todos
* recovery key in server cfg & allow user provided key
* tests & rename
* testing did creation
* recoveryKey in dev-env
* require recovery key
* update schemas for keyed
* codegen dict
* codgen record ids
* determine key type from schema
* allow non-tid keys
* rm tids from batch write schema
* use schema ids record in db layouts
* standardize on rkey
* doc update
* crud test
* repo tests for custom rkeys
* record type for accepted badge
* getBadgeMembers view
* updateProfile procedure
* better return type on updateProfile & gen client
* add badges to getProfile view
* testing & bug fixes
* tests for updating profile & linking badges
* errors
* badgeOffer record type
* getProfile view ensures badges are both offered & accepted
* getBadgeMembers test
* PR feedback
* cid check
* Add initial schemas for getUsersSearch and getUsersTypeahead
* Stub-out pds user search/typeahead, add pg indexes to support it
* Implement and test user typeahead method for postgres
* Implement user typeahead for sqlite
* Tidy
* Get user search view working, except pagination
* Get pagination working on pds user search w/ postgres
* Bail on jest snapshots for the conditional pg/sqlite search results
* Refactor user search queries out of user search method
* Apply user search helpers to typeahead
* Tidy user search implementation
* Test bad search input for sqlite
* Fix loading of pg_trgm extension to be friendly with the test suite
* Fix typo
* Query consistency
* All server tests can reference app
* Handle bad user search cursors
* Update lexicon doc format to support .defs field and .descriptions within method bodies
* Add correct resolution to lexicon, including to lex: URIs
* Update lexicons and generated code to use new resolution