mirror of
https://github.com/directus/directus.git
synced 2026-04-25 03:00:53 -04:00
* Naming typo * First experiments * Setup testing playground * Fetch in client stream * Add logging * Remove unneeded stream to string util * added logical operator to complex test and cleanup * Improve typing * started adding function support * Support nested m2o in data-sql * Implement join sql string creation * It's alive! * Remove unused aliases * Add todo reminder * fix build * small improvements for fn conversion * function conversion in pg driver * more expressive typedocs * toMatchObject in data sql to ignore alias and path * added type to sort node * moved and fixes tests for comparison * moved condition tests * separate file for functions * test for function condition * added proper args to function although not in use * AT TIME ZONE 'UTC' when needed, proper arg value * intersects support in pg driver * convert geo value * docs for intersects * reworked column as function input * support for functions in abstract select * fixes tests * count support in select * refactoring: split up filter conversion * starting every and some operators Co-authored-by: Nicola Krumschmidt <nickrum@users.noreply.github.com> * extracted variable in test * in operator with sub query support * split up conditions type into multiple types * type for a single query parameter * condition type * intersects_bbox in pg driver * finalized type declarations * geo condition types * pnpm lock update * removed playground * join * fixed geo * fixed types in test * changeset * made path prop required again * geojson for intersects to the driver * removed sub query from set-condition * clean up form sub query removal * added between support * fixed geo condition test type * formatting * moved number operators to utils * xy-condition to condition-xy * remove between * between clean up * formatter * refactoring: split up condition generation * changeset * split up type for geo condition * refactoring: split up conditions converter * fix formatter * split up types * split up abstract query into multiple files * export fix * split up condition builders in pg driver * enabled all functions in select and nr condition * adjusted join conversion and added test * added test for node conversion * moved index generator to converter dir * docs * format fix * split up abstract query types further * split up abstract sql types further * split ups in converter and fine granular tests * fix format * proper index file in converter * proper type for generator * more docs on data-sql * updated data readme * readme tweaks * removed circular dependency and added union type * moved create-identifier function * added index file in sql utils * comment on converter usage * removed circular deps in sql types * last dependency fixes in data sql * fixed tests * cleanup up dependencies in overall abstract query * removed base type to reduce noise * reduce some index files in sql types declaration * formatter * more dependency tweaks * formatter * graphs for data and data-sql * added dependency cruiser * added lock file * pnpm downgrade 8.6.0 to fixed lock file * try fixing again with 8.6.2 * formatting * formatting, now with correct formatter * fixed dependencies * formatter * extracted variable for more readable code Co-authored-by: Brainslug <br41nslug@users.noreply.github.com> * formatter * fixed export of condition types for driver * consistent file naming for conditions * updated docs * type fix * removed todo * another type fix * split up expand func and added test * todo test for driver class * fixed unit test * fixed typo * removed todo, though about it, it's good as it is * separated path map creation from query-converter * renamed converter to query-converter * user specific aliases for primitives * fixed linter * user specified alias for m2o * documentation * redesigned the function types and added alias support * formatter * unit test for pg driver index file * moved call to source as class member * moved alias map creation back to converter * moved unique alias generation to ORM * tsup update * renamed nodes to fields * redefined return type of query converter * modifier conversion similar to fields conversion * added response converter dir again * aligned unit tests * fixed circular dependency * moved orm logic one level up again * formatter * removed SVGs * Update pull_request_template.md * Update pull_request_template.md * Run formatter * a bit renaming and restructuring * formatter --------- Co-authored-by: rijkvanzanten <rijkvanzanten@me.com> Co-authored-by: Nicola Krumschmidt <nickrum@users.noreply.github.com> Co-authored-by: Brainslug <br41nslug@users.noreply.github.com>
895 B
895 B
@directus/data-sql
A package which all SQL drivers use. Is consists out of three individual parts:
- A set of types, which defines the abstract SQL query language.
- A query converter, which converts an abstract query into the abstract SQL query.
- A database response converter which converts the flat database response into a nested object in regards to tables that have been joined. It also replaces the actual column name from the database, with an user specified alias if one was provided.
- Some smaller utility functions, like for converting operators into SQL equivalents
Installation
npm install @directus/data-sql
Current architecture of this package
To get an overview of how the package is organized regarding it's files, directories and the dependencies between them,
run pnpm run depcruise and have a look in the created dependency-graph.svg image.