0
Fork 0
mirror of https://github.com/logto-io/logto.git synced 2024-12-16 20:26:19 -05:00
logto/packages/schemas
2023-03-20 11:00:16 +08:00
..
alterations refactor(schemas,core,toolkit): remove connector db storage and disable access (#3505) 2023-03-19 11:45:13 +00:00
src refactor(console): hide Management API from editing (#3509) 2023-03-20 11:00:16 +08:00
tables refactor(schemas,core,toolkit): remove connector db storage and disable access (#3505) 2023-03-19 11:45:13 +00:00
.gitignore fix: alteration script in dev 2022-10-18 15:40:36 +08:00
CHANGELOG.md release: version core packages (#3225) 2023-02-25 23:15:42 +08:00
generate.sh refactor(schemas): remove eslint in generate script (#2669) 2022-12-15 04:02:51 +00:00
jest.config.js refactor(core): check connector-kit compatibility when load connector (#2798) 2023-01-01 18:36:46 +08:00
package.json refactor: use essentials tryThat and trySafe 2023-03-18 13:02:51 +08:00
README.md refactor: use RLS 2023-02-08 18:58:45 +08:00
tsconfig.build.alterations.json fix: alteration script in dev 2022-10-18 15:40:36 +08:00
tsconfig.build.gen.json test: update to native ESM (batch 1) 2022-12-12 21:52:55 +08:00
tsconfig.build.json refactor: schema export and id generator 2022-12-20 00:02:35 +08:00
tsconfig.json refactor: update tsconfig 2023-02-17 13:41:05 +08:00
tsconfig.test.json test: update to native ESM (batch 1) 2022-12-12 21:52:55 +08:00
update-next.sh fix: handle versioning when no next-*.ts found (#2202) 2022-10-19 08:01:49 +00:00

@logto/schemas

The central packages for all database schemas and their TypeScript definitions and utilities.

Table init

The Logto CLI will pick up all necessary SQL queries in tables/ and src/models/ and run them in the following order:

  1. Run tables/_before_all.sql
  2. Run tables/*.sql with the snippet /* init_order = <number> */ in ascending order of <number>
  3. Run tables/*.sql without the init_order snippet in ascending order of filename (tables/) or table name (src/models/)
  4. Run tables/_after_all.sql

Additional rules for step 2 and 3:

  • If no snippet /* no_after_each */ found, run tables/_after_each.sql after each SQL file
  • Exclude lifecycle scripts tables/_[lifecycle].sql where [lifecycle] could be one of:
    • after_all
    • after_each
    • before_all

In the after_each lifecycle script, you can use ${name} to represent the current filename (tables/) or table name (src/models/).

In all lifecycle scripts, you can use ${database} to represent the current database.