@forestadmin/datasource-sql 1.12.0 → 1.12.2

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.
package/dist/index.d.ts CHANGED
@@ -2,8 +2,8 @@ import type { PlainConnectionOptions, PlainConnectionOptionsOrUri, SslMode } fro
2
2
  import type { DataSourceFactory, Logger } from '@forestadmin/datasource-toolkit';
3
3
  import { Sequelize } from 'sequelize';
4
4
  import listCollectionsFromIntrospection from './introspection/list-collections-from-introspection';
5
- import { LatestIntrospection, LegacyIntrospection, Table } from './introspection/types';
6
- export declare function introspect(uriOrOptions: PlainConnectionOptionsOrUri, logger?: Logger): Promise<LatestIntrospection>;
5
+ import { Introspection, LegacyIntrospection, Table } from './introspection/types';
6
+ export declare function introspect(uriOrOptions: PlainConnectionOptionsOrUri, logger?: Logger): Promise<Introspection>;
7
7
  export declare function buildSequelizeInstance(uriOrOptions: PlainConnectionOptionsOrUri, logger: Logger, introspection?: LegacyIntrospection): Promise<Sequelize>;
8
8
  export declare function createSqlDataSource(uriOrOptions: PlainConnectionOptionsOrUri, options?: {
9
9
  introspection?: LegacyIntrospection;
@@ -11,6 +11,6 @@ export declare function createSqlDataSource(uriOrOptions: PlainConnectionOptions
11
11
  /** Preprocess the connection options so that they can be cached for faster connections */
12
12
  export declare function preprocessOptions(uriOrOptions: PlainConnectionOptionsOrUri): Promise<PlainConnectionOptions>;
13
13
  export * from './connection/errors';
14
- export type { PlainConnectionOptionsOrUri as ConnectionOptions, Table, SslMode, LatestIntrospection as Introspection, };
14
+ export type { PlainConnectionOptionsOrUri as ConnectionOptions, Table, SslMode, Introspection };
15
15
  export { listCollectionsFromIntrospection };
16
16
  //# sourceMappingURL=index.d.ts.map
package/dist/index.js CHANGED
@@ -72,4 +72,4 @@ async function preprocessOptions(uriOrOptions) {
72
72
  }
73
73
  exports.preprocessOptions = preprocessOptions;
74
74
  __exportStar(require("./connection/errors"), exports);
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHQSw0RUFBd0U7QUFHeEUsOERBQW1DO0FBQ25DLHlGQUFnRTtBQUNoRSxpRkFBd0Q7QUFDeEQsZ0ZBQXdEO0FBQ3hELDhIQUFtRztBQW9GMUYsMkNBcEZGLDZDQUFnQyxDQW9GRTtBQWxGekMsZ0VBQStDO0FBQy9DLHdFQUFzRDtBQUUvQyxLQUFLLFVBQVUsVUFBVSxDQUM5QixZQUF5QyxFQUN6QyxNQUFlO0lBRWYsTUFBTSxPQUFPLEdBQUcsSUFBSSw0QkFBaUIsQ0FBQyxZQUFZLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDNUQsSUFBSSxTQUFvQixDQUFDO0lBRXpCLElBQUk7UUFDRixTQUFTLEdBQUcsTUFBTSxJQUFBLG9CQUFPLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFFbkMsT0FBTyxNQUFNLHNCQUFZLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQztLQUN6RDtZQUFTO1FBQ1IsTUFBTSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUM7S0FDMUI7QUFDSCxDQUFDO0FBZEQsZ0NBY0M7QUFFRCxLQUFLLFVBQVUsdUJBQXVCLENBQ3BDLFNBQW9CLEVBQ3BCLE1BQWMsRUFDZCxhQUFrQztJQUVsQyxJQUFJO1FBQ0YsTUFBTSxtQkFBbUIsR0FBRyxNQUFNLHNCQUFZLENBQUMsbUJBQW1CLENBQ2hFLFNBQVMsRUFDVCxNQUFNLEVBQ04sYUFBYSxDQUNkLENBQUM7UUFDRixlQUFZLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztRQUNsRSxtQkFBZSxDQUFDLGVBQWUsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLG1CQUFtQixDQUFDLENBQUM7UUFFeEUsT0FBTyxtQkFBbUIsQ0FBQztLQUM1QjtJQUFDLE9BQU8sS0FBSyxFQUFFO1FBQ2QsTUFBTSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUM7UUFDekIsTUFBTSxLQUFLLENBQUM7S0FDYjtBQUNILENBQUM7QUFFTSxLQUFLLFVBQVUsc0JBQXNCLENBQzFDLFlBQXlDLEVBQ3pDLE1BQWMsRUFDZCxhQUFtQztJQUVuQyxNQUFNLE9BQU8sR0FBRyxJQUFJLDRCQUFpQixDQUFDLFlBQVksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUM1RCxNQUFNLFNBQVMsR0FBRyxNQUFNLElBQUEsb0JBQU8sRUFBQyxPQUFPLENBQUMsQ0FBQztJQUN6QyxNQUFNLHVCQUF1QixDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFFaEUsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQztBQVZELHdEQVVDO0FBRUQsU0FBZ0IsbUJBQW1CLENBQ2pDLFlBQXlDLEVBQ3pDLE9BQWlEO0lBRWpELE9BQU8sS0FBSyxFQUFFLE1BQWMsRUFBRSxFQUFFO1FBQzlCLE1BQU0sU0FBUyxHQUFHLE1BQU0sSUFBQSxvQkFBTyxFQUFDLElBQUksNEJBQWlCLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDN0UsTUFBTSxtQkFBbUIsR0FBRyxNQUFNLHVCQUF1QixDQUN2RCxTQUFTLEVBQ1QsTUFBTSxFQUNOLE9BQU8sRUFBRSxhQUFhLENBQ3ZCLENBQUM7UUFFRixPQUFPLElBQUksd0JBQWEsQ0FBQyxJQUFJLDBDQUFtQixDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsRUFBRSxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsRyxDQUFDLENBQUM7QUFDSixDQUFDO0FBZEQsa0RBY0M7QUFFRCwwRkFBMEY7QUFDbkYsS0FBSyxVQUFVLGlCQUFpQixDQUNyQyxZQUF5QztJQUV6QyxPQUFPLElBQUksNEJBQWlCLENBQUMsWUFBWSxDQUFDLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztBQUN4RSxDQUFDO0FBSkQsOENBSUM7QUFFRCxzREFBb0MifQ==
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHQSw0RUFBd0U7QUFHeEUsOERBQW1DO0FBQ25DLHlGQUFnRTtBQUNoRSxpRkFBd0Q7QUFDeEQsZ0ZBQXdEO0FBQ3hELDhIQUFtRztBQStFMUYsMkNBL0VGLDZDQUFnQyxDQStFRTtBQTdFekMsZ0VBQStDO0FBQy9DLHdFQUFzRDtBQUUvQyxLQUFLLFVBQVUsVUFBVSxDQUM5QixZQUF5QyxFQUN6QyxNQUFlO0lBRWYsTUFBTSxPQUFPLEdBQUcsSUFBSSw0QkFBaUIsQ0FBQyxZQUFZLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDNUQsSUFBSSxTQUFvQixDQUFDO0lBRXpCLElBQUk7UUFDRixTQUFTLEdBQUcsTUFBTSxJQUFBLG9CQUFPLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFFbkMsT0FBTyxNQUFNLHNCQUFZLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQztLQUN6RDtZQUFTO1FBQ1IsTUFBTSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUM7S0FDMUI7QUFDSCxDQUFDO0FBZEQsZ0NBY0M7QUFFRCxLQUFLLFVBQVUsdUJBQXVCLENBQ3BDLFNBQW9CLEVBQ3BCLE1BQWMsRUFDZCxhQUFrQztJQUVsQyxJQUFJO1FBQ0YsTUFBTSxtQkFBbUIsR0FBRyxNQUFNLHNCQUFZLENBQUMsbUJBQW1CLENBQ2hFLFNBQVMsRUFDVCxNQUFNLEVBQ04sYUFBYSxDQUNkLENBQUM7UUFDRixlQUFZLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztRQUNsRSxtQkFBZSxDQUFDLGVBQWUsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLG1CQUFtQixDQUFDLENBQUM7UUFFeEUsT0FBTyxtQkFBbUIsQ0FBQztLQUM1QjtJQUFDLE9BQU8sS0FBSyxFQUFFO1FBQ2QsTUFBTSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUM7UUFDekIsTUFBTSxLQUFLLENBQUM7S0FDYjtBQUNILENBQUM7QUFFTSxLQUFLLFVBQVUsc0JBQXNCLENBQzFDLFlBQXlDLEVBQ3pDLE1BQWMsRUFDZCxhQUFtQztJQUVuQyxNQUFNLE9BQU8sR0FBRyxJQUFJLDRCQUFpQixDQUFDLFlBQVksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUM1RCxNQUFNLFNBQVMsR0FBRyxNQUFNLElBQUEsb0JBQU8sRUFBQyxPQUFPLENBQUMsQ0FBQztJQUN6QyxNQUFNLHVCQUF1QixDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFFaEUsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQztBQVZELHdEQVVDO0FBRUQsU0FBZ0IsbUJBQW1CLENBQ2pDLFlBQXlDLEVBQ3pDLE9BQWlEO0lBRWpELE9BQU8sS0FBSyxFQUFFLE1BQWMsRUFBRSxFQUFFO1FBQzlCLE1BQU0sU0FBUyxHQUFHLE1BQU0sSUFBQSxvQkFBTyxFQUFDLElBQUksNEJBQWlCLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDN0UsTUFBTSxtQkFBbUIsR0FBRyxNQUFNLHVCQUF1QixDQUN2RCxTQUFTLEVBQ1QsTUFBTSxFQUNOLE9BQU8sRUFBRSxhQUFhLENBQ3ZCLENBQUM7UUFFRixPQUFPLElBQUksd0JBQWEsQ0FBQyxJQUFJLDBDQUFtQixDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsRUFBRSxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsRyxDQUFDLENBQUM7QUFDSixDQUFDO0FBZEQsa0RBY0M7QUFFRCwwRkFBMEY7QUFDbkYsS0FBSyxVQUFVLGlCQUFpQixDQUNyQyxZQUF5QztJQUV6QyxPQUFPLElBQUksNEJBQWlCLENBQUMsWUFBWSxDQUFDLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztBQUN4RSxDQUFDO0FBSkQsOENBSUM7QUFFRCxzREFBb0MifQ==
@@ -19,61 +19,104 @@ class PostgreSQLDialect {
19
19
  if (!tableNames?.length)
20
20
  return [];
21
21
  const conditions = `(${tableNames
22
- .map((_, index) => `(c.table_schema = :schemaName${index}
23
- AND c.table_name = :tableName${index}
22
+ .map((_, index) => `(columns.table_schema = :schemaName${index}
23
+ AND columns.table_name = :tableName${index}
24
24
  )`)
25
25
  .join(' OR ')})`;
26
26
  // Query inspired by Sequelize, but adapted for multiple tables
27
27
  // and support of multiple databases
28
28
  const query = `
29
- SELECT
30
- c.table_schema as "Schema",
31
- c.table_name as "Table",
32
- c.column_name as "Field",
33
- pk.constraint_type as "Constraint",
34
- c.column_default as "Default",
35
- c.is_nullable as "Null",
36
- c.identity_generation as "Identity",
37
- (CASE WHEN c.udt_name = 'hstore' THEN c.udt_name ELSE c.data_type END)
38
- || (CASE WHEN c.character_maximum_length IS NOT NULL
39
- THEN '(' || c.character_maximum_length || ')'
40
- ELSE '' END) as "Type",
29
+ SELECT
30
+ "Schema",
31
+ "Table",
32
+ "Field",
33
+ "Constraint",
34
+ "Default",
35
+ "Null",
36
+ "Identity",
37
+ "Type",
38
+ "ElementType",
39
+ "Comment",
40
+ CASE WHEN SUBSTRING("TechnicalElementType", 1, LENGTH("Schema") + 1) = "Schema" || '.'
41
+ THEN SUBSTRING("TechnicalElementType", LENGTH("Schema") + 2)
42
+ ELSE "TechnicalElementType"
43
+ END AS "TechnicalElementType",
41
44
  (SELECT array_agg(en.enumlabel)
42
- FROM pg_catalog.pg_type t JOIN pg_catalog.pg_enum en ON t.oid = en.enumtypid
43
- WHERE t.typname = c.udt_name OR t.typname = e.udt_name
44
- ) AS "Special",
45
- (SELECT pgd.description
46
- FROM pg_catalog.pg_statio_all_tables AS st
47
- INNER JOIN pg_catalog.pg_description pgd on (pgd.objoid=st.relid)
48
- WHERE c.ordinal_position=pgd.objsubid AND c.table_name=st.relname
49
- ) AS "Comment",
50
- e.data_type AS "ElementType",
51
- e.udt_name AS "TechnicalElementType"
52
- FROM
53
- information_schema.columns c
54
- LEFT JOIN (
55
- SELECT tc.table_schema, tc.table_name,
56
- cu.column_name, tc.constraint_type
57
- FROM information_schema.TABLE_CONSTRAINTS tc
58
- JOIN information_schema.KEY_COLUMN_USAGE cu
59
- ON tc.table_schema=cu.table_schema
60
- AND tc.table_name=cu.table_name
61
- AND tc.constraint_name=cu.constraint_name
62
- AND tc.constraint_type='PRIMARY KEY'
63
- AND tc.constraint_catalog=:database
64
- ) pk ON pk.table_schema=c.table_schema
65
- AND pk.table_name=c.table_name
66
- AND pk.column_name=c.column_name
67
- LEFT JOIN INFORMATION_SCHEMA.element_types e ON (
68
- c.table_catalog = e.object_catalog AND
69
- c.table_schema = e.object_schema AND
70
- c.table_name = e.object_name AND
71
- 'TABLE' = e.object_type AND
72
- c.dtd_identifier = e.collection_type_identifier
73
- )
74
- WHERE c.table_catalog = :database
75
- AND ${conditions}
76
- ORDER BY c.table_schema, c.table_name, c.ordinal_position;
45
+ FROM pg_catalog.pg_type t
46
+ JOIN pg_catalog.pg_enum en ON t.oid = en.enumtypid
47
+ INNER JOIN pg_catalog.pg_namespace ON pg_namespace.oid = t.typnamespace
48
+ WHERE (pg_namespace.nspname = "Schema" AND t.typname = udt_name)
49
+ OR (pg_namespace.nspname = 'public' AND t.typname = "TechnicalElementType")
50
+ OR CONCAT(pg_namespace.nspname, '.', t.typname) = "TechnicalElementType"
51
+ ) AS "Special"
52
+ FROM (
53
+ SELECT
54
+ *,
55
+ (CASE
56
+ WHEN "ElementType" LIKE '"%"[]'
57
+ THEN SUBSTRING("ElementType", 2, LENGTH("ElementType") - 4)
58
+ WHEN "ElementType" LIKE '%[]'
59
+ THEN SUBSTRING("ElementType", 1, LENGTH("ElementType") - 2)
60
+ ELSE NULL
61
+ END) AS "TechnicalElementType"
62
+ FROM (
63
+ SELECT
64
+ columns.table_schema as "Schema",
65
+ columns.table_name as "Table",
66
+ columns.column_name as "Field",
67
+ pk.constraint_type as "Constraint",
68
+ columns.column_default as "Default",
69
+ columns.is_nullable as "Null",
70
+ columns.identity_generation as "Identity",
71
+ columns.udt_name as "udt_name",
72
+ (CASE
73
+ WHEN columns.udt_name = 'hstore'
74
+ THEN columns.udt_name
75
+ ELSE columns.data_type
76
+ END)
77
+ ||
78
+ (CASE
79
+ WHEN columns.character_maximum_length IS NOT NULL
80
+ THEN '(' || columns.character_maximum_length || ')'
81
+ ELSE ''
82
+ END) as "Type",
83
+ pg_catalog.format_type(pg_attribute.atttypid, pg_attribute.atttypmod) AS "ElementType",
84
+ (SELECT pgd.description
85
+ FROM pg_catalog.pg_statio_all_tables AS st
86
+ INNER JOIN pg_catalog.pg_description pgd on (pgd.objoid=st.relid)
87
+ WHERE columns.ordinal_position=pgd.objsubid AND columns.table_name=st.relname
88
+ ) AS "Comment"
89
+ FROM
90
+ information_schema.columns
91
+ LEFT JOIN (
92
+ SELECT tc.table_schema, tc.table_name,
93
+ cu.column_name, tc.constraint_type
94
+ FROM information_schema.TABLE_CONSTRAINTS tc
95
+ JOIN information_schema.KEY_COLUMN_USAGE cu
96
+ ON tc.table_schema=cu.table_schema
97
+ AND tc.table_name=cu.table_name
98
+ AND tc.constraint_name=cu.constraint_name
99
+ AND tc.constraint_type='PRIMARY KEY'
100
+ AND tc.constraint_catalog=:database
101
+ ) pk ON pk.table_schema=columns.table_schema
102
+ AND pk.table_name=columns.table_name
103
+ AND pk.column_name=columns.column_name
104
+ INNER JOIN pg_catalog.pg_namespace ON (
105
+ pg_namespace.nspname = columns.table_schema
106
+ )
107
+ INNER JOIN pg_catalog.pg_class ON (
108
+ pg_class.relname = columns.table_name
109
+ AND pg_namespace.oid = pg_class.relnamespace
110
+ )
111
+ INNER JOIN pg_catalog.pg_attribute ON (
112
+ pg_class.oid = pg_attribute.attrelid
113
+ AND pg_attribute.attname = columns.column_name
114
+ )
115
+ WHERE columns.table_catalog = :database
116
+ AND ${conditions}
117
+ ORDER BY columns.table_schema, columns.table_name, columns.ordinal_position
118
+ ) as raw_info
119
+ ) as with_technical_element_type;
77
120
  `;
78
121
  const replacements = tableNames.reduce((acc, tableName, index) => ({
79
122
  ...acc,
@@ -108,15 +151,15 @@ class PostgreSQLDialect {
108
151
  }
109
152
  getColumnDescription(dbColumn) {
110
153
  const type = dbColumn.Type.toUpperCase();
111
- const elementType = dbColumn.ElementType?.toUpperCase() === 'USER-DEFINED'
112
- ? dbColumn.TechnicalElementType
113
- : dbColumn.ElementType?.toUpperCase();
154
+ const special = (0, parse_array_1.default)(dbColumn.Special);
155
+ const elementType = dbColumn.TechnicalElementType || dbColumn.ElementType;
114
156
  const sequelizeColumn = {
115
157
  type,
116
- elementType,
158
+ // Don't change the casing of types when it's an enum
159
+ elementType: special ? elementType : elementType?.toUpperCase(),
117
160
  allowNull: dbColumn.Null === 'YES',
118
161
  comment: dbColumn.Comment,
119
- special: (0, parse_array_1.default)(dbColumn.Special),
162
+ special,
120
163
  primaryKey: dbColumn.Constraint === 'PRIMARY KEY',
121
164
  defaultValue: dbColumn.Default,
122
165
  // Supabase databases do not expose a default value for auto-increment columns
@@ -182,4 +225,4 @@ class PostgreSQLDialect {
182
225
  }
183
226
  }
184
227
  exports.default = PostgreSQLDialect;
185
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaW50cm9zcGVjdGlvbi9kaWFsZWN0cy9wb3N0Z3Jlc3FsLWRpYWxlY3QvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx5Q0FBa0Q7QUFFbEQsZ0VBQXVDO0FBdUJ2QyxNQUFxQixpQkFBaUI7SUFDcEMsZ0JBQWdCO1FBQ2QsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQztJQUVELGtCQUFrQixDQUFDLGVBQXlDO1FBQzFELE9BQU8sZUFBZSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxLQUFLLENBQUMsV0FBVyxDQUNmLFVBQXNDLEVBQ3RDLFNBQW9CO1FBRXBCLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxFQUFFLEVBQUU7WUFDaEMsTUFBTSxJQUFJLEtBQUssQ0FBQyxtRUFBbUUsQ0FBQyxDQUFDO1NBQ3RGO1FBRUQsSUFBSSxDQUFDLFVBQVUsRUFBRSxNQUFNO1lBQUUsT0FBTyxFQUFFLENBQUM7UUFFbkMsTUFBTSxVQUFVLEdBQUcsSUFBSSxVQUFVO2FBQzlCLEdBQUcsQ0FDRixDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUNYLGdDQUFnQyxLQUFLOzJDQUNKLEtBQUs7Y0FDbEMsQ0FDUDthQUNBLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDO1FBRW5CLCtEQUErRDtRQUMvRCxvQ0FBb0M7UUFDcEMsTUFBTSxLQUFLLEdBQUc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O2NBK0NKLFVBQVU7O0tBRW5CLENBQUM7UUFFRixNQUFNLFlBQVksR0FBRyxVQUFVLENBQUMsTUFBTSxDQUNwQyxDQUFDLEdBQUcsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzFCLEdBQUcsR0FBRztZQUNOLENBQUMsWUFBWSxLQUFLLEVBQUUsQ0FBQyxFQUFFLFNBQVMsQ0FB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
228
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaW50cm9zcGVjdGlvbi9kaWFsZWN0cy9wb3N0Z3Jlc3FsLWRpYWxlY3QvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx5Q0FBa0Q7QUFFbEQsZ0VBQXVDO0FBdUJ2QyxNQUFxQixpQkFBaUI7SUFDcEMsZ0JBQWdCO1FBQ2QsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQztJQUVELGtCQUFrQixDQUFDLGVBQXlDO1FBQzFELE9BQU8sZUFBZSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxLQUFLLENBQUMsV0FBVyxDQUNmLFVBQXNDLEVBQ3RDLFNBQW9CO1FBRXBCLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxFQUFFLEVBQUU7WUFDaEMsTUFBTSxJQUFJLEtBQUssQ0FBQyxtRUFBbUUsQ0FBQyxDQUFDO1NBQ3RGO1FBRUQsSUFBSSxDQUFDLFVBQVUsRUFBRSxNQUFNO1lBQUUsT0FBTyxFQUFFLENBQUM7UUFFbkMsTUFBTSxVQUFVLEdBQUcsSUFBSSxVQUFVO2FBQzlCLEdBQUcsQ0FDRixDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUNYLHNDQUFzQyxLQUFLO2lEQUNKLEtBQUs7Y0FDeEMsQ0FDUDthQUNBLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDO1FBRW5CLCtEQUErRDtRQUMvRCxvQ0FBb0M7UUFDcEMsTUFBTSxLQUFLLEdBQUc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7a0JBd0ZBLFVBQVU7Ozs7S0FJdkIsQ0FBQztRQUVGLE1BQU0sWUFBWSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQ3BDLENBQUMsR0FBRyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDMUIsR0FBRyxHQUFH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
@@ -90,6 +90,7 @@ class SqlTypeConverter {
90
90
  case 'REAL':
91
91
  return 'REAL';
92
92
  case 'NUMERIC':
93
+ case this.typeStartsWith(upType, 'NUMERIC'):
93
94
  case this.typeContains(upType, 'DECIMAL'):
94
95
  return 'DECIMAL';
95
96
  case 'DOUBLE':
@@ -121,4 +122,4 @@ class SqlTypeConverter {
121
122
  }
122
123
  exports.default = SqlTypeConverter;
123
124
  SqlTypeConverter.enumRegex = /ENUM\((.*)\)/i;
124
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3FsLXR5cGUtY29udmVydGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2ludHJvc3BlY3Rpb24vaGVscGVycy9zcWwtdHlwZS1jb252ZXJ0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFJQSxNQUFxQixnQkFBZ0I7SUFHbkMsTUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQ2xCLGVBQXlDLEVBQ3pDLFVBQTZCO1FBRTdCLFFBQVEsVUFBVSxDQUFDLElBQUksRUFBRTtZQUN2QixLQUFLLE9BQU87Z0JBQ1YsT0FBTyxJQUFJLENBQUMsdUJBQXVCLENBQUMsZUFBZSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1lBRW5FLEtBQUssY0FBYyxDQUFDO1lBQ3BCLEtBQUssSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLGdCQUFnQixDQUFDLFNBQVMsQ0FBQztnQkFDOUQsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBRXRDO2dCQUNFLE9BQU8sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1NBQzNFO0lBQ0gsQ0FBQztJQUVELGdFQUFnRTtJQUN4RCxNQUFNLENBQUMsV0FBVyxDQUFDLFVBQTZCO1FBQ3RELE9BQU8sVUFBVSxDQUFDLFVBQVUsRUFBRSxNQUFNLEdBQUcsQ0FBQztZQUN0QyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxVQUFVLENBQUMsVUFBVSxFQUFFO1lBQ2pELENBQUMsQ0FBQywwREFBMEQ7Z0JBQzFELEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLENBQUM7SUFDNUMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSyxNQUFNLENBQUMsS0FBSyxDQUFDLHVCQUF1QixDQUMxQyxlQUF5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
125
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3FsLXR5cGUtY29udmVydGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2ludHJvc3BlY3Rpb24vaGVscGVycy9zcWwtdHlwZS1jb252ZXJ0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFJQSxNQUFxQixnQkFBZ0I7SUFHbkMsTUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQ2xCLGVBQXlDLEVBQ3pDLFVBQTZCO1FBRTdCLFFBQVEsVUFBVSxDQUFDLElBQUksRUFBRTtZQUN2QixLQUFLLE9BQU87Z0JBQ1YsT0FBTyxJQUFJLENBQUMsdUJBQXVCLENBQUMsZUFBZSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1lBRW5FLEtBQUssY0FBYyxDQUFDO1lBQ3BCLEtBQUssSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLGdCQUFnQixDQUFDLFNBQVMsQ0FBQztnQkFDOUQsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBRXRDO2dCQUNFLE9BQU8sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1NBQzNFO0lBQ0gsQ0FBQztJQUVELGdFQUFnRTtJQUN4RCxNQUFNLENBQUMsV0FBVyxDQUFDLFVBQTZCO1FBQ3RELE9BQU8sVUFBVSxDQUFDLFVBQVUsRUFBRSxNQUFNLEdBQUcsQ0FBQztZQUN0QyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxVQUFVLENBQUMsVUFBVSxFQUFFO1lBQ2pELENBQUMsQ0FBQywwREFBMEQ7Z0JBQzFELEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLENBQUM7SUFDNUMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSyxNQUFNLENBQUMsS0FBSyxDQUFDLHVCQUF1QixDQUMxQyxlQUF5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
@@ -1,12 +1,12 @@
1
1
  import { Logger } from '@forestadmin/datasource-toolkit';
2
2
  import { Sequelize } from 'sequelize';
3
- import { LatestIntrospection, LegacyIntrospection } from './types';
3
+ import { Introspection, LegacyIntrospection } from './types';
4
4
  export default class Introspector {
5
- static readonly FORMAT_VERSION = 1;
5
+ static readonly FORMAT_VERSION = 3;
6
6
  static readonly SOURCE = "@forestadmin/datasource-sql";
7
- static migrateOrIntrospect(sequelize: Sequelize, logger?: Logger, introspection?: LegacyIntrospection): Promise<LatestIntrospection>;
8
- static introspect(sequelize: Sequelize, logger?: Logger): Promise<LatestIntrospection>;
9
- static getIntrospectionInLatestFormat(introspection?: LegacyIntrospection): LatestIntrospection | undefined;
7
+ static migrateOrIntrospect(sequelize: Sequelize, logger?: Logger, introspection?: LegacyIntrospection): Promise<Introspection>;
8
+ static introspect(sequelize: Sequelize, logger?: Logger): Promise<Introspection>;
9
+ static getIntrospectionInLatestFormat(introspection?: LegacyIntrospection): Introspection | undefined;
10
10
  private static migrateIntrospectionInLatestFormat;
11
11
  /** Get names of all tables in the public schema of the db */
12
12
  private static getTableNames;
@@ -22,5 +22,6 @@ export default class Introspector {
22
22
  private static sanitizeInPlace;
23
23
  private static logBrokenRelationship;
24
24
  private static getViews;
25
+ private static getProperty;
25
26
  }
26
27
  //# sourceMappingURL=introspector.d.ts.map
@@ -22,13 +22,11 @@ class Introspector {
22
22
  return { tables, views, version: this.FORMAT_VERSION, source: this.SOURCE };
23
23
  }
24
24
  static getIntrospectionInLatestFormat(introspection) {
25
- const formattedIntrospection = this.migrateIntrospectionInLatestFormat(introspection);
26
- if (formattedIntrospection && formattedIntrospection.source !== this.SOURCE) {
27
- throw new Error(
28
- // eslint-disable-next-line max-len
29
- `This introspection has not been generated by the package @forestadmin/datasource-sql, but with ${formattedIntrospection.source}.`);
30
- }
31
- if (formattedIntrospection && formattedIntrospection.version > this.FORMAT_VERSION) {
25
+ if (!introspection)
26
+ return undefined;
27
+ const version = this.getProperty(introspection, 'version');
28
+ const source = this.getProperty(introspection, 'source');
29
+ if (version && version > this.FORMAT_VERSION) {
32
30
  /* This can only occur in CLOUD version, either:
33
31
  - forest-cloud does not have the same version of datasource-sql
34
32
  as cloud-agent-manager & forestadmin-server (We need to fix)
@@ -38,7 +36,12 @@ class Introspector {
38
36
  throw new Error('This version of introspection is newer than this package version. ' +
39
37
  'Please update @forestadmin/datasource-sql');
40
38
  }
41
- return formattedIntrospection;
39
+ if (source && source !== this.SOURCE) {
40
+ throw new Error(
41
+ // eslint-disable-next-line max-len
42
+ `This introspection has not been generated by the package @forestadmin/datasource-sql, but with ${source}.`);
43
+ }
44
+ return this.migrateIntrospectionInLatestFormat(introspection);
42
45
  }
43
46
  static migrateIntrospectionInLatestFormat(introspection) {
44
47
  if (!introspection)
@@ -54,8 +57,9 @@ class Introspector {
54
57
  }
55
58
  return {
56
59
  ...introspection,
57
- source: introspection.source || this.SOURCE,
58
- views: introspection.views || [],
60
+ views: this.getProperty(introspection, 'views') || [],
61
+ source: this.SOURCE,
62
+ version: this.FORMAT_VERSION,
59
63
  };
60
64
  }
61
65
  /** Get names of all tables in the public schema of the db */
@@ -204,8 +208,14 @@ class Introspector {
204
208
  };
205
209
  }));
206
210
  }
211
+ static getProperty(introspection, property) {
212
+ if (!Array.isArray(introspection) && property in introspection) {
213
+ return introspection[property];
214
+ }
215
+ return undefined;
216
+ }
207
217
  }
208
218
  exports.default = Introspector;
209
- Introspector.FORMAT_VERSION = 1;
219
+ Introspector.FORMAT_VERSION = 3;
210
220
  Introspector.SOURCE = '@forestadmin/datasource-sql';
211
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50cm9zcGVjdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ludHJvc3BlY3Rpb24vaW50cm9zcGVjdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBR0EsaUZBQXFFO0FBRXJFLDBGQUFnRTtBQUNoRSxzRkFBNEQ7QUFTNUQsTUFBcUIsWUFBWTtJQUkvQixNQUFNLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUM5QixTQUFvQixFQUNwQixNQUFlLEVBQ2YsYUFBbUM7UUFFbkMsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLENBQUMsOEJBQThCLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFL0UsSUFBSSxtQkFBbUI7WUFBRSxPQUFPLG1CQUFtQixDQUFDO1FBRXBELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFNBQW9CLEVBQUUsTUFBZTtRQUMzRCxNQUFNLE9BQU8sR0FBRyxJQUFBLHlCQUEyQixFQUFDLFNBQVMsQ0FBQyxVQUFVLEVBQWEsQ0FBQyxDQUFDO1FBQy9FLE1BQU0sVUFBVSxHQUFHLE1BQU0sSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLEVBQUUsU0FBaUMsQ0FBQyxDQUFDO1FBQ3hGLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUM1RSxNQUFNLEtBQUssR0FBRyxNQUFNLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLFNBQWlDLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFFdEYsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFFckMsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxjQUFj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
221
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50cm9zcGVjdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ludHJvc3BlY3Rpb24vaW50cm9zcGVjdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBR0EsaUZBQXFFO0FBRXJFLDBGQUFnRTtBQUNoRSxzRkFBNEQ7QUFTNUQsTUFBcUIsWUFBWTtJQUkvQixNQUFNLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUM5QixTQUFvQixFQUNwQixNQUFlLEVBQ2YsYUFBbUM7UUFFbkMsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLENBQUMsOEJBQThCLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFL0UsSUFBSSxtQkFBbUI7WUFBRSxPQUFPLG1CQUFtQixDQUFDO1FBRXBELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFNBQW9CLEVBQUUsTUFBZTtRQUMzRCxNQUFNLE9BQU8sR0FBRyxJQUFBLHlCQUEyQixFQUFDLFNBQVMsQ0FBQyxVQUFVLEVBQWEsQ0FBQyxDQUFDO1FBQy9FLE1BQU0sVUFBVSxHQUFHLE1BQU0sSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLEVBQUUsU0FBaUMsQ0FBQyxDQUFDO1FBQ3hGLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUM1RSxNQUFNLEtBQUssR0FBRyxNQUFNLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLFNBQWlDLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFFdEYsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFFckMsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxjQUFj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
@@ -38,12 +38,21 @@ export type Table = {
38
38
  }[];
39
39
  }[];
40
40
  };
41
- export type ObjectIntrospection = {
41
+ export type Introspection1 = {
42
42
  tables: Table[];
43
- version: number;
44
- source?: '@forestadmin/datasource-sql';
45
- views?: Table[];
43
+ version: 1;
46
44
  };
47
- export type LegacyIntrospection = ObjectIntrospection | Table[];
48
- export type LatestIntrospection = Required<ObjectIntrospection>;
45
+ export type Introspection2 = {
46
+ tables: Table[];
47
+ source: '@forestadmin/datasource-sql';
48
+ version: 2;
49
+ };
50
+ export type Introspection3 = {
51
+ tables: Table[];
52
+ views: Table[];
53
+ source: '@forestadmin/datasource-sql';
54
+ version: 3;
55
+ };
56
+ export type Introspection = Introspection3;
57
+ export type LegacyIntrospection = Table[] | Introspection1 | Introspection2 | Introspection3;
49
58
  //# sourceMappingURL=types.d.ts.map
@@ -1,8 +1,8 @@
1
1
  import { Logger } from '@forestadmin/datasource-toolkit';
2
2
  import { Sequelize } from 'sequelize';
3
- import { LatestIntrospection } from '../introspection/types';
3
+ import { Introspection } from '../introspection/types';
4
4
  export default class ModelBuilder {
5
- static defineModels(sequelize: Sequelize, logger: Logger, introspection: LatestIntrospection): void;
5
+ static defineModels(sequelize: Sequelize, logger: Logger, introspection: Introspection): void;
6
6
  private static defineModelFromTable;
7
7
  private static buildModelAttributes;
8
8
  /**
@@ -113,4 +113,4 @@ class ModelBuilder {
113
113
  }
114
114
  }
115
115
  exports.default = ModelBuilder;
116
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvb3JtLWJ1aWxkZXIvbW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFDQSx5Q0FBK0Q7QUFJL0QsOEVBQTREO0FBSzVELE1BQXFCLFlBQVk7SUFDL0IsTUFBTSxDQUFDLFlBQVksQ0FDakIsU0FBb0IsRUFDcEIsTUFBYyxFQUNkLGFBQWtDO1FBRWxDLEtBQUssTUFBTSxLQUFLLElBQUksYUFBYSxDQUFDLE1BQU0sRUFBRTtZQUN4QyxJQUFJLENBQUMsb0JBQW9CLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztTQUNyRDtRQUVELEtBQUssTUFBTSxLQUFLLElBQUksYUFBYSxDQUFDLEtBQUssRUFBRTtZQUN2QyxJQUFJLENBQUMsb0JBQW9CLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxFQUFFLEdBQUcsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1NBQ3hFO0lBQ0gsQ0FBQztJQUVPLE1BQU0sQ0FBQyxvQkFBb0IsQ0FDakMsU0FBb0IsRUFDcEIsTUFBYyxFQUNkLEtBQWtCO1FBRWxCLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEQsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMxQyxNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDdkMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsYUFBYSxFQUFFLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUVoRyxJQUFJO1lBQ0YsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRTtnQkFDckQsU0FBUyxFQUFF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
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvb3JtLWJ1aWxkZXIvbW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFDQSx5Q0FBK0Q7QUFJL0QsOEVBQTREO0FBSzVELE1BQXFCLFlBQVk7SUFDL0IsTUFBTSxDQUFDLFlBQVksQ0FBQyxTQUFvQixFQUFFLE1BQWMsRUFBRSxhQUE0QjtRQUNwRixLQUFLLE1BQU0sS0FBSyxJQUFJLGFBQWEsQ0FBQyxNQUFNLEVBQUU7WUFDeEMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDckQ7UUFFRCxLQUFLLE1BQU0sS0FBSyxJQUFJLGFBQWEsQ0FBQyxLQUFLLEVBQUU7WUFDdkMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsRUFBRSxHQUFHLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztTQUN4RTtJQUNILENBQUM7SUFFTyxNQUFNLENBQUMsb0JBQW9CLENBQ2pDLFNBQW9CLEVBQ3BCLE1BQWMsRUFDZCxLQUFrQjtRQUVsQixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2hELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDMUMsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3ZDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFFaEcsSUFBSTtZQUNGLE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7Z0JBQ3JELFNBQVMsRUFBRSxL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
@@ -1,8 +1,8 @@
1
1
  import { Logger } from '@forestadmin/datasource-toolkit';
2
2
  import { Sequelize } from 'sequelize';
3
- import { LatestIntrospection } from '../introspection/types';
3
+ import { Introspection } from '../introspection/types';
4
4
  export default class RelationBuilder {
5
- static defineRelations(sequelize: Sequelize, logger: Logger, introspection: LatestIntrospection): void;
5
+ static defineRelations(sequelize: Sequelize, logger: Logger, introspection: Introspection): void;
6
6
  private static defineTableRelations;
7
7
  private static defineRelation;
8
8
  }
@@ -61,4 +61,4 @@ class RelationBuilder {
61
61
  }
62
62
  }
63
63
  exports.default = RelationBuilder;
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVsYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL29ybS1idWlsZGVyL3JlbGF0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUlBLHNGQUE2RDtBQUM3RCxnR0FBc0U7QUFJdEUsTUFBcUIsZUFBZTtJQUNsQyxNQUFNLENBQUMsZUFBZSxDQUNwQixTQUFvQixFQUNwQixNQUFjLEVBQ2QsYUFBa0M7UUFFbEMsS0FBSyxNQUFNLEtBQUssSUFBSSxDQUFDLEdBQUcsYUFBYSxDQUFDLE1BQU0sRUFBRSxHQUFHLGFBQWEsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNyRSxJQUFJLENBQUMsb0JBQW9CLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQzNFO0lBQ0gsQ0FBQztJQUVPLE1BQU0sQ0FBQyxvQkFBb0IsQ0FDakMsU0FBb0IsRUFDcEIsTUFBYyxFQUNkLEtBQVksRUFDWixNQUFlO1FBRWYsTUFBTSxTQUFTLEdBQUcsNEJBQWlCLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDdEUsTUFBTSxhQUFhLEdBQUcsaUNBQXFCLENBQUMsc0JBQXNCLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBRXJGLEtBQUssTUFBTSxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsSUFBSSxTQUFTLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDbkQsTUFBTSxFQUFFLEdBQUcsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRWhDLElBQUk7Z0JBQ0YsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLEVBQUUsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2FBQzlDO1lBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQ1YsTUFBTSxFQUFFLENBQUMsTUFBTSxFQUFFLHNCQUFzQixLQUFLLENBQUMsSUFBSSxJQUFJLEVBQUUsdUJBQXVCLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO2FBQzVGO1NBQ0Y7SUFDSCxDQUFDO0lBRU8sTUFBTSxDQUFDLGNBQWMsQ0FBQyxTQUFvQixFQUFFLFFBQWtCLEVBQUUsRUFBVTtRQUNoRixNQUFNLFdBQVcsR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuRCxNQUFNLFdBQVcsR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUVqRCxJQUFJLFFBQVEsQ0FBQyxJQUFJLEtBQUssV0FBVyxFQUFFO1lBQ2pDLFdBQVcsQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFO2dCQUNqQyxFQUFFO2dCQUNGLFVBQVUsRUFBRSxRQUFRLENBQUMsVUFBVTtnQkFDL0IsU0FBUyxFQUFFLFFBQVEsQ0FBQyxnQkFBZ0I7YUFDckMsQ0FBQyxDQUFDO1NBQ0o7YUFBTSxJQUFJLFFBQVEsQ0FBQyxJQUFJLEtBQUssU0FBUyxFQUFFO1lBQ3RDLFdBQVcsQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFO2dCQUMvQixFQUFFO2dCQUNGLFVBQVUsRUFBRSxRQUFRLENBQUMsU0FBUztnQkFDOUIsU0FBUyxFQUFFLFFBQVEsQ0FBQyxlQUFlO2FBQ3BDLENBQUMsQ0FBQztTQUNKO2FBQU0sSUFBSSxRQUFRLENBQUMsSUFBSSxLQUFLLGVBQWUsRUFBRTtZQUM1QyxXQUFXLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFBRTtnQkFDckMsRUFBRTtnQkFDRixPQUFPLEVBQUUsUUFBUSxDQUFDLE9BQU87Z0JBQ3pCLFFBQVEsRUFBRSxRQUFRLENBQUMsVUFBVTtnQkFDN0IsVUFBVSxFQUFFLFFBQVEsQ0FBQyxTQUFTO2dCQUM5QixTQUFTLEVBQUUsUUFBUSxDQUFDLGdCQUFnQjtnQkFDcEMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxlQUFlO2FBQ3BDLENBQUMsQ0FBQztTQUNKO2FBQU0sSUFBSSxRQUFRLENBQUMsSUFBSSxLQUFLLFFBQVEsRUFBRTtZQUNyQyxXQUFXLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRTtnQkFDOUIsRUFBRTtnQkFDRixVQUFVLEVBQUUsUUFBUSxDQUFDLFNBQVM7Z0JBQzlCLFNBQVMsRUFBRSxRQUFRLENBQUMsZUFBZTthQUNwQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7Q0FDRjtBQWhFRCxrQ0FnRUMifQ==
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVsYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL29ybS1idWlsZGVyL3JlbGF0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUlBLHNGQUE2RDtBQUM3RCxnR0FBc0U7QUFJdEUsTUFBcUIsZUFBZTtJQUNsQyxNQUFNLENBQUMsZUFBZSxDQUFDLFNBQW9CLEVBQUUsTUFBYyxFQUFFLGFBQTRCO1FBQ3ZGLEtBQUssTUFBTSxLQUFLLElBQUksQ0FBQyxHQUFHLGFBQWEsQ0FBQyxNQUFNLEVBQUUsR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDckUsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUMzRTtJQUNILENBQUM7SUFFTyxNQUFNLENBQUMsb0JBQW9CLENBQ2pDLFNBQW9CLEVBQ3BCLE1BQWMsRUFDZCxLQUFZLEVBQ1osTUFBZTtRQUVmLE1BQU0sU0FBUyxHQUFHLDRCQUFpQixDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3RFLE1BQU0sYUFBYSxHQUFHLGlDQUFxQixDQUFDLHNCQUFzQixDQUFDLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQztRQUVyRixLQUFLLE1BQU0sQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLElBQUksU0FBUyxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQ25ELE1BQU0sRUFBRSxHQUFHLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUVoQyxJQUFJO2dCQUNGLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQzthQUM5QztZQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUNWLE1BQU0sRUFBRSxDQUFDLE1BQU0sRUFBRSxzQkFBc0IsS0FBSyxDQUFDLElBQUksSUFBSSxFQUFFLHVCQUF1QixDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQzthQUM1RjtTQUNGO0lBQ0gsQ0FBQztJQUVPLE1BQU0sQ0FBQyxjQUFjLENBQUMsU0FBb0IsRUFBRSxRQUFrQixFQUFFLEVBQVU7UUFDaEYsTUFBTSxXQUFXLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkQsTUFBTSxXQUFXLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFakQsSUFBSSxRQUFRLENBQUMsSUFBSSxLQUFLLFdBQVcsRUFBRTtZQUNqQyxXQUFXLENBQUMsU0FBUyxDQUFDLFdBQVcsRUFBRTtnQkFDakMsRUFBRTtnQkFDRixVQUFVLEVBQUUsUUFBUSxDQUFDLFVBQVU7Z0JBQy9CLFNBQVMsRUFBRSxRQUFRLENBQUMsZ0JBQWdCO2FBQ3JDLENBQUMsQ0FBQztTQUNKO2FBQU0sSUFBSSxRQUFRLENBQUMsSUFBSSxLQUFLLFNBQVMsRUFBRTtZQUN0QyxXQUFXLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRTtnQkFDL0IsRUFBRTtnQkFDRixVQUFVLEVBQUUsUUFBUSxDQUFDLFNBQVM7Z0JBQzlCLFNBQVMsRUFBRSxRQUFRLENBQUMsZUFBZTthQUNwQyxDQUFDLENBQUM7U0FDSjthQUFNLElBQUksUUFBUSxDQUFDLElBQUksS0FBSyxlQUFlLEVBQUU7WUFDNUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUU7Z0JBQ3JDLEVBQUU7Z0JBQ0YsT0FBTyxFQUFFLFFBQVEsQ0FBQyxPQUFPO2dCQUN6QixRQUFRLEVBQUUsUUFBUSxDQUFDLFVBQVU7Z0JBQzdCLFVBQVUsRUFBRSxRQUFRLENBQUMsU0FBUztnQkFDOUIsU0FBUyxFQUFFLFFBQVEsQ0FBQyxnQkFBZ0I7Z0JBQ3BDLFNBQVMsRUFBRSxRQUFRLENBQUMsZUFBZTthQUNwQyxDQUFDLENBQUM7U0FDSjthQUFNLElBQUksUUFBUSxDQUFDLElBQUksS0FBSyxRQUFRLEVBQUU7WUFDckMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUU7Z0JBQzlCLEVBQUU7Z0JBQ0YsVUFBVSxFQUFFLFFBQVEsQ0FBQyxTQUFTO2dCQUM5QixTQUFTLEVBQUUsUUFBUSxDQUFDLGVBQWU7YUFDcEMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0NBQ0Y7QUE1REQsa0NBNERDIn0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forestadmin/datasource-sql",
3
- "version": "1.12.0",
3
+ "version": "1.12.2",
4
4
  "main": "dist/index.js",
5
5
  "license": "GPL-3.0",
6
6
  "publishConfig": {