* added extra guards for a couple commands
* Abstracted guard checking to util
* Updated the delete commands
* Updated the read commands
* Updated the update commands
* Create slow-buckets-draw.md
* my friend prettier
* improving error/response handling
* updated request function to expose the response on error
* updated the composables where needed
* Create few-rules-talk.md
* ran prettier
* undid unintended type change
* added missing awaits for onResponse
* Update few-rules-talk.md
* Mark it as major change
* unpack directus errors instead of nesting
* ran prettier
* Update .changeset/few-rules-talk.md
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
---------
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
* add isolated-vm@4.6.0
* add mvp replacing vm2 with isolated-vm, two env vars
* make copying async and add tests
* add env vars to docs
* remove isolate-logging function
* update docs for FLOWS_EXEC_ALLOWED_MODULES removal
* further removal of allowed module usage
* rename env vars and their usage, remove script "compiling" and replace Reference with ExternalCopy
* remove logging and catching, let the outer executeOperation function do it
* remove vm2 from dependencies
* remove unused var
* run prettier formatting
* run eslint
* create changeset
* rename env var without unit suffix, add minimum to doc
* add two tests for config testing
* fix 'mb' spelling
* update changeset
* Mark it as major change for `@directus/api`
* Breaking change copy
* add logging from the operation
* run linting
* Update docs/releases/breaking-changes.md
* Update docs/releases/breaking-changes.md
* run linting, make operation cursive
* Mention HTTP requests in breaking changes
* make linter happy
* changed cursive to bold (asked kevin)
* add to the test for timeouts
* run linter
* Update api/src/operations/exec/index.ts
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
* Update api/src/operations/exec/index.ts
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
* Update note on run script modules
* Update breaking changes
* Update docs/app/flows/operations.md
Co-authored-by: ian <licitdev@gmail.com>
---------
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
Co-authored-by: Kevin Lewis <kvn@lws.io>
Co-authored-by: ian <licitdev@gmail.com>
* Setup build chain
* Initial structure
* Typing, exports, fix build
* Reorganize
* prutsen met output types
* Thursday fun times
* failed experiments in feature composition
* got feature flags on the client
* using interfaces instead of literals
* messed with decorators
* split up decorators
* added fetch and ws types
* reintroduced the global.d.ts we'll figure that out later
* reworked composables
* some changes
* experimenting with commands
* got the read item command working again with types
* trying authentication
* basic gql implementation
* Super basic websocket implementation
* renamed websocket composable and removed obsolete code
* Typing relational fields
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
* fixed recursive type
* SDK revamp revamp (#18916)
* Split up files
* Simplify some more (too much?)
* Oh boy we figured out object extending
* OK JK now we're there
* OK getting somewhere real now
* Start structuring type helpers
* Types werken zowaar!
* Remove unneeded "T"'s for readability
* Added support for array relational types
* split up query nesting logic
* make relational fields optional to support multiple relations
* improved readability
* updated REST
* Move URL to top level
* Remove T
* recursively join fields in params
* cleaning up
* updated graphql implementation
* removing old unused code
---------
Co-authored-by: Brainslug <tim@brainslug.nl>
* Reduce global reuse of rest
* Start messing with output types
* Return it from the rest command
* first level schema output filtering
* It works!! but will need some docs for context
* Added some comments
* removed export keyword from types that do not need to be exported
* cleaned up debug script
* graphql update
* Added dom for WebSocket and Fetch typings
* initial readme setup
* moved some types
* removed accidental commit
* Refactor `useDirectus` and improve token handling (#18966)
* Add comment and reduce code of useDirectus
* Add fabian-hiller to contributors.yml
* Change token handling of useDirectus client
---------
Co-authored-by: Brainslug <br41nslug@users.noreply.github.com>
* Change ClientConfig type back to interface (#18968)
* initial realtime feature
* started on some ws commands and implemented message receiving callback
* disabled rest config for now
* setup auth extension boilerplate
* Added some websocket examples to the readme
* docs: add getting started guide
* docs: add link to previous sdk
* docs: updates
* implemented readItem
* updated readItems
* Added delete commands
* docs: updates to snippets and phrasing
* updated lockfile
* Update dictionary
* docs: removed repeated typescript snippet
* Enrich package.json for SDK
* docs: update snippet
* Fix casing of readme
* added create items commands
* fixed read items output
* removed obsolete types
* added update commands
* updated tsup
* removed unused dependencies
* implemented basic memory storage fallback
* implemented the login function for auth
* implemented refresh and logout auth functions
* docs: update guide
* updated auth refresh logic
* oops, have to actually store the expires at value
* fixed authentication timeout
* added autoRefresh config option
* updated readme
* updated getting started
* docs: updates to guide
* added beta version nr
* removed debug scripts
* added docblocks to the composables
* Added some docblocks
* Added BETA warning to readme
* Added extra type extends object checks
* added a bunch of index files
* updated tsup build entrypoints and exports
* updated import paths
* updated code examples
* docs: removed unnecessary phrases
* Unignore SDK changesets
* Revert "docs: removed unnecessary phrases"
This reverts commit 3559ade873.
* docs: removed unnecessary phrases
* Make sure we export all available functions
* Tweak exports
* Add TypeDoc for new (and old) SDK
* Update docs/guides/sdk/getting-started.md
* Re-add beta version flag in package.json
* Format readme
* Tweaks
* Spellchecker
* v10.4.0
* Add link to TypeDoc of new SDK
* updated query types
* trying to expand the query types
* extending the Query options
* add all exports to the root
* fixed incorrect field mapping
* Abstracted more of the request logic for more flexibility
* partial error handling, global fetch settings and fetch response options
* reworked the requests for better options control and started on better error handling
* type fix
* Run formatter & linter
* Spell fixes
* added onRequest handler
* updated global request hooks
* expanded ItemType to accept singletons
* updated output types for singletons
* fixed fields type generation
* removed rest globaloptions in favor of onRequest
* started singleton command
* different commands for singletons
* ran prettier
* updated readme
* stateless helpers for tomorrow
* support m2a in field types
* added m2a fields parsing and attempt at output typing
* made the base client stateless
* making sure things are exported as needed
* added minimal core table schema for files and users
* added update singleton command
* Added core user read commands
* merged related commands into the same file
* Added create users commands
* Added user update commands
* added user delete commands
* updated query handling
* ran prettier and bumped version
* ran prettier
* disabled global error handling for now
* fixed output formatting for delete commands
* fixed onResponse handling
* fixed item types for create and update
* added missing partial item for create
* ran prettier
* updated readme
* added missing export
* Publish beta version
* Added a bunch of core collection types
* updated users commands
* added more complex core types
* double checked nullable core fields
* fixed core collection merging with custom properties
* added authentication commands
* ran prettier and fixed line endings
* Added all core read commands
* Added all core create commands
* Added all core delete commands
* Added all core update commands
* ran prettier
* renamed `useDirectus` to `createDirectus` and `.use` to `.with` to prevent naming confusion with reacthooks or express middleware.
* ran prettier
* added more misc core commands
* added schema endpoints
* added server api commands
* ran prettier
* added most utility endpoints
* finished utility endpoints
* checking the command typing and jsdoc
* fixed those pesky relational output types
* ran prettier
* removed obsolete type
* initial aggregation typing
* improved aggregation and grouping typing
* ran prettier
* checked exports
* Beta 4
* fixed the m2a fields regression
* added basic client test
* do query parsing at the latest stage
* extra type comments
* reverted accidental commit and ran prettier
* Adjust tsconfig to updated @directus/tsconfig package
* updated websocket event handling
* fixed capitalization
* removed obsolete queryToParams usage
* implemented websocket reconnecting and some non-happy path fixes
* persist subscription across reconnecting
* updated readme
* ran prettier
* 11.0.0-beta.5
* using plurar for uploadFiles ad removed "D" from updateFiles
* fix incorrect paths
* created new util types file
* extracted output types
* fixed input typing issue (for items)
* extracted functions to its own file
* fixed path for presets
* ran prettier
* Applied typing fix to all commands
* fixed naming error `updatedItems` -> `updateItems`
* fixed type error
* Failing types gracefully if no schema is provided
* beta.6
* Clean-up tsup config
- Use documented way to define config
- Doesn't need to be ts file: not type checked, intellisense available
in vscode anyway
- remove default & deprecated options
* added other user commands
* added other share commands
* satisfy prettier
* added string array types to webhook core schema
* fixed plain string request output
* keep nullability for relational fields
* Update documentation guides to use new SDK (#19131)
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
Co-authored-by: Kevin Lewis <kvn@lws.io>
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
Co-authored-by: Brainslug <tim@brainslug.nl>
* Fix error messages for core collections
* updated dictionary
* updated partial item input for fields
* Ready, set, go!
---------
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
Co-authored-by: Fabian Hiller <35291865+fabian-hiller@users.noreply.github.com>
Co-authored-by: Esther Agbaje <folasadeagbaje@gmail.com>
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
Co-authored-by: Esther Agbaje <53586167+estheragbaje@users.noreply.github.com>
Co-authored-by: Kevin Lewis <kvn@lws.io>