@expo/entity-database-adapter-knex 0.46.0 → 0.48.0
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/package.json +7 -4
- package/src/__integration-tests__/PostgresEntityIntegration-test.ts +27 -0
- package/src/__testfixtures__/PostgresTestEntity.ts +6 -0
- package/build/src/__integration-tests__/EntityCreationUtils-test.d.ts +0 -1
- package/build/src/__integration-tests__/EntityCreationUtils-test.js +0 -105
- package/build/src/__integration-tests__/EntityCreationUtils-test.js.map +0 -1
- package/build/src/__integration-tests__/PostgresEntityIntegration-test.d.ts +0 -1
- package/build/src/__integration-tests__/PostgresEntityIntegration-test.js +0 -497
- package/build/src/__integration-tests__/PostgresEntityIntegration-test.js.map +0 -1
- package/build/src/__integration-tests__/PostgresEntityQueryContextProvider-test.d.ts +0 -1
- package/build/src/__integration-tests__/PostgresEntityQueryContextProvider-test.js +0 -294
- package/build/src/__integration-tests__/PostgresEntityQueryContextProvider-test.js.map +0 -1
- package/build/src/__integration-tests__/PostgresInvalidSetup-test.d.ts +0 -1
- package/build/src/__integration-tests__/PostgresInvalidSetup-test.js +0 -70
- package/build/src/__integration-tests__/PostgresInvalidSetup-test.js.map +0 -1
- package/build/src/__integration-tests__/errors-test.d.ts +0 -1
- package/build/src/__integration-tests__/errors-test.js +0 -128
- package/build/src/__integration-tests__/errors-test.js.map +0 -1
- package/build/src/__testfixtures__/ErrorsTestEntity.d.ts +0 -24
- package/build/src/__testfixtures__/ErrorsTestEntity.js +0 -107
- package/build/src/__testfixtures__/ErrorsTestEntity.js.map +0 -1
- package/build/src/__testfixtures__/InvalidTestEntity.d.ts +0 -19
- package/build/src/__testfixtures__/InvalidTestEntity.js +0 -62
- package/build/src/__testfixtures__/InvalidTestEntity.js.map +0 -1
- package/build/src/__testfixtures__/PostgresTestEntity.d.ts +0 -31
- package/build/src/__testfixtures__/PostgresTestEntity.js +0 -96
- package/build/src/__testfixtures__/PostgresTestEntity.js.map +0 -1
- package/build/src/__testfixtures__/PostgresTriggerTestEntity.d.ts +0 -19
- package/build/src/__testfixtures__/PostgresTriggerTestEntity.js +0 -101
- package/build/src/__testfixtures__/PostgresTriggerTestEntity.js.map +0 -1
- package/build/src/__testfixtures__/PostgresUniqueTestEntity.d.ts +0 -25
- package/build/src/__testfixtures__/PostgresUniqueTestEntity.js +0 -71
- package/build/src/__testfixtures__/PostgresUniqueTestEntity.js.map +0 -1
- package/build/src/__testfixtures__/PostgresValidatorTestEntity.d.ts +0 -19
- package/build/src/__testfixtures__/PostgresValidatorTestEntity.js +0 -77
- package/build/src/__testfixtures__/PostgresValidatorTestEntity.js.map +0 -1
- package/build/src/__testfixtures__/createKnexIntegrationTestEntityCompanionProvider.d.ts +0 -3
- package/build/src/__testfixtures__/createKnexIntegrationTestEntityCompanionProvider.js +0 -27
- package/build/src/__testfixtures__/createKnexIntegrationTestEntityCompanionProvider.js.map +0 -1
- package/build/src/__tests__/EntityFields-test.d.ts +0 -1
- package/build/src/__tests__/EntityFields-test.js +0 -8
- package/build/src/__tests__/EntityFields-test.js.map +0 -1
- package/build/src/errors/__tests__/wrapNativePostgresCallAsync-test.d.ts +0 -1
- package/build/src/errors/__tests__/wrapNativePostgresCallAsync-test.js +0 -22
- package/build/src/errors/__tests__/wrapNativePostgresCallAsync-test.js.map +0 -1
- package/build/tsconfig.tsbuildinfo +0 -1
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ErrorsTestEntityConfiguration = exports.ErrorsTestEntity = void 0;
|
|
4
|
-
const entity_1 = require("@expo/entity");
|
|
5
|
-
const foreignTableName = 'foreign_table';
|
|
6
|
-
class ErrorsTestEntity extends entity_1.Entity {
|
|
7
|
-
static defineCompanionDefinition() {
|
|
8
|
-
return {
|
|
9
|
-
entityClass: ErrorsTestEntity,
|
|
10
|
-
entityConfiguration: exports.ErrorsTestEntityConfiguration,
|
|
11
|
-
privacyPolicyClass: ErrorsTestEntityPrivacyPolicy,
|
|
12
|
-
};
|
|
13
|
-
}
|
|
14
|
-
static async createOrTruncatePostgresTableAsync(knex) {
|
|
15
|
-
await knex.raw('CREATE EXTENSION IF NOT EXISTS "btree_gist"'); // for gist exclusion on varchar
|
|
16
|
-
const tableName = 'postgres_test_entities';
|
|
17
|
-
const hasForeignTable = await knex.schema.hasTable(foreignTableName);
|
|
18
|
-
if (!hasForeignTable) {
|
|
19
|
-
await knex.schema.createTable(foreignTableName, (table) => {
|
|
20
|
-
table.integer('id').primary();
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
const hasTable = await knex.schema.hasTable(tableName);
|
|
24
|
-
if (!hasTable) {
|
|
25
|
-
await knex.schema.createTable(tableName, (table) => {
|
|
26
|
-
table.integer('id').primary();
|
|
27
|
-
table.string('field_non_null').notNullable();
|
|
28
|
-
table.integer('field_foreign_key').references(`${foreignTableName}.id`);
|
|
29
|
-
table.string('field_unique').unique();
|
|
30
|
-
table.integer('check_less_than_5');
|
|
31
|
-
table.string('field_exclusion');
|
|
32
|
-
});
|
|
33
|
-
await knex.raw(`
|
|
34
|
-
ALTER TABLE :tableName:
|
|
35
|
-
ADD CONSTRAINT check_less_than_5_check_constraint
|
|
36
|
-
CHECK (check_less_than_5 IS NULL OR check_less_than_5 < 5);`, {
|
|
37
|
-
tableName,
|
|
38
|
-
});
|
|
39
|
-
await knex.raw(`
|
|
40
|
-
ALTER TABLE :tableName:
|
|
41
|
-
ADD CONSTRAINT field_exclusion_exclusion_constraint
|
|
42
|
-
EXCLUDE USING gist (field_exclusion WITH =);
|
|
43
|
-
`, {
|
|
44
|
-
tableName,
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
await knex(tableName).delete();
|
|
48
|
-
await knex(foreignTableName).delete();
|
|
49
|
-
}
|
|
50
|
-
static async dropPostgresTableAsync(knex) {
|
|
51
|
-
const tableName = 'postgres_test_entities';
|
|
52
|
-
const hasTable = await knex.schema.hasTable(tableName);
|
|
53
|
-
if (hasTable) {
|
|
54
|
-
await knex.schema.dropTable(tableName);
|
|
55
|
-
}
|
|
56
|
-
const hasForeignTable = await knex.schema.hasTable(foreignTableName);
|
|
57
|
-
if (hasForeignTable) {
|
|
58
|
-
await knex.schema.dropTable(foreignTableName);
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
exports.ErrorsTestEntity = ErrorsTestEntity;
|
|
63
|
-
class ErrorsTestEntityPrivacyPolicy extends entity_1.EntityPrivacyPolicy {
|
|
64
|
-
createRules = [
|
|
65
|
-
new entity_1.AlwaysAllowPrivacyPolicyRule(),
|
|
66
|
-
];
|
|
67
|
-
readRules = [
|
|
68
|
-
new entity_1.AlwaysAllowPrivacyPolicyRule(),
|
|
69
|
-
];
|
|
70
|
-
updateRules = [
|
|
71
|
-
new entity_1.AlwaysAllowPrivacyPolicyRule(),
|
|
72
|
-
];
|
|
73
|
-
deleteRules = [
|
|
74
|
-
new entity_1.AlwaysAllowPrivacyPolicyRule(),
|
|
75
|
-
];
|
|
76
|
-
}
|
|
77
|
-
exports.ErrorsTestEntityConfiguration = new entity_1.EntityConfiguration({
|
|
78
|
-
idField: 'id',
|
|
79
|
-
tableName: 'postgres_test_entities',
|
|
80
|
-
schema: {
|
|
81
|
-
id: new entity_1.IntField({
|
|
82
|
-
columnName: 'id',
|
|
83
|
-
cache: false,
|
|
84
|
-
}),
|
|
85
|
-
fieldNonNull: new entity_1.StringField({
|
|
86
|
-
columnName: 'field_non_null',
|
|
87
|
-
}),
|
|
88
|
-
fieldForeignKey: new entity_1.IntField({
|
|
89
|
-
columnName: 'field_foreign_key',
|
|
90
|
-
}),
|
|
91
|
-
fieldUnique: new entity_1.StringField({
|
|
92
|
-
columnName: 'field_unique',
|
|
93
|
-
}),
|
|
94
|
-
checkLessThan5: new entity_1.IntField({
|
|
95
|
-
columnName: 'check_less_than_5',
|
|
96
|
-
}),
|
|
97
|
-
fieldExclusion: new entity_1.StringField({
|
|
98
|
-
columnName: 'field_exclusion',
|
|
99
|
-
}),
|
|
100
|
-
nonExistentColumn: new entity_1.StringField({
|
|
101
|
-
columnName: 'non_existent_column',
|
|
102
|
-
}),
|
|
103
|
-
},
|
|
104
|
-
databaseAdapterFlavor: 'postgres',
|
|
105
|
-
cacheAdapterFlavor: 'redis',
|
|
106
|
-
});
|
|
107
|
-
//# sourceMappingURL=ErrorsTestEntity.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ErrorsTestEntity.js","sourceRoot":"","sources":["../../../src/__testfixtures__/ErrorsTestEntity.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { AlwaysAllowPrivacyPolicyRule, Entity, EntityCompanionDefinition, EntityConfiguration, EntityPrivacyPolicy, ViewerContext } from '@expo/entity';
|
|
2
|
-
import { Knex } from 'knex';
|
|
3
|
-
type InvalidTestEntityFields = {
|
|
4
|
-
id: number;
|
|
5
|
-
name: string | null;
|
|
6
|
-
};
|
|
7
|
-
export declare class InvalidTestEntity extends Entity<InvalidTestEntityFields, 'id', ViewerContext> {
|
|
8
|
-
static defineCompanionDefinition(): EntityCompanionDefinition<InvalidTestEntityFields, 'id', ViewerContext, InvalidTestEntity, InvalidTestEntityPrivacyPolicy>;
|
|
9
|
-
static createOrTruncatePostgresTableAsync(knex: Knex): Promise<void>;
|
|
10
|
-
static dropPostgresTableAsync(knex: Knex): Promise<void>;
|
|
11
|
-
}
|
|
12
|
-
declare class InvalidTestEntityPrivacyPolicy extends EntityPrivacyPolicy<InvalidTestEntityFields, 'id', ViewerContext, InvalidTestEntity> {
|
|
13
|
-
protected readonly createRules: AlwaysAllowPrivacyPolicyRule<InvalidTestEntityFields, "id", ViewerContext, InvalidTestEntity, keyof InvalidTestEntityFields>[];
|
|
14
|
-
protected readonly readRules: AlwaysAllowPrivacyPolicyRule<InvalidTestEntityFields, "id", ViewerContext, InvalidTestEntity, keyof InvalidTestEntityFields>[];
|
|
15
|
-
protected readonly updateRules: AlwaysAllowPrivacyPolicyRule<InvalidTestEntityFields, "id", ViewerContext, InvalidTestEntity, keyof InvalidTestEntityFields>[];
|
|
16
|
-
protected readonly deleteRules: AlwaysAllowPrivacyPolicyRule<InvalidTestEntityFields, "id", ViewerContext, InvalidTestEntity, keyof InvalidTestEntityFields>[];
|
|
17
|
-
}
|
|
18
|
-
export declare const invalidTestEntityConfiguration: EntityConfiguration<InvalidTestEntityFields, "id">;
|
|
19
|
-
export {};
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.invalidTestEntityConfiguration = exports.InvalidTestEntity = void 0;
|
|
4
|
-
const entity_1 = require("@expo/entity");
|
|
5
|
-
class InvalidTestEntity extends entity_1.Entity {
|
|
6
|
-
static defineCompanionDefinition() {
|
|
7
|
-
return {
|
|
8
|
-
entityClass: InvalidTestEntity,
|
|
9
|
-
entityConfiguration: exports.invalidTestEntityConfiguration,
|
|
10
|
-
privacyPolicyClass: InvalidTestEntityPrivacyPolicy,
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
static async createOrTruncatePostgresTableAsync(knex) {
|
|
14
|
-
const tableName = 'postgres_test_entities';
|
|
15
|
-
const hasTable = await knex.schema.hasTable(tableName);
|
|
16
|
-
if (!hasTable) {
|
|
17
|
-
await knex.schema.createTable(tableName, (table) => {
|
|
18
|
-
table.integer('id'); // invalid because ID is not a primary key or unique
|
|
19
|
-
table.string('name');
|
|
20
|
-
});
|
|
21
|
-
}
|
|
22
|
-
await knex.into(tableName).truncate();
|
|
23
|
-
}
|
|
24
|
-
static async dropPostgresTableAsync(knex) {
|
|
25
|
-
const tableName = 'postgres_test_entities';
|
|
26
|
-
const hasTable = await knex.schema.hasTable(tableName);
|
|
27
|
-
if (hasTable) {
|
|
28
|
-
await knex.schema.dropTable(tableName);
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
exports.InvalidTestEntity = InvalidTestEntity;
|
|
33
|
-
class InvalidTestEntityPrivacyPolicy extends entity_1.EntityPrivacyPolicy {
|
|
34
|
-
createRules = [
|
|
35
|
-
new entity_1.AlwaysAllowPrivacyPolicyRule(),
|
|
36
|
-
];
|
|
37
|
-
readRules = [
|
|
38
|
-
new entity_1.AlwaysAllowPrivacyPolicyRule(),
|
|
39
|
-
];
|
|
40
|
-
updateRules = [
|
|
41
|
-
new entity_1.AlwaysAllowPrivacyPolicyRule(),
|
|
42
|
-
];
|
|
43
|
-
deleteRules = [
|
|
44
|
-
new entity_1.AlwaysAllowPrivacyPolicyRule(),
|
|
45
|
-
];
|
|
46
|
-
}
|
|
47
|
-
exports.invalidTestEntityConfiguration = new entity_1.EntityConfiguration({
|
|
48
|
-
idField: 'id',
|
|
49
|
-
tableName: 'postgres_test_entities',
|
|
50
|
-
schema: {
|
|
51
|
-
id: new entity_1.IntField({
|
|
52
|
-
columnName: 'id',
|
|
53
|
-
cache: false,
|
|
54
|
-
}),
|
|
55
|
-
name: new entity_1.StringField({
|
|
56
|
-
columnName: 'name',
|
|
57
|
-
}),
|
|
58
|
-
},
|
|
59
|
-
databaseAdapterFlavor: 'postgres',
|
|
60
|
-
cacheAdapterFlavor: 'redis',
|
|
61
|
-
});
|
|
62
|
-
//# sourceMappingURL=InvalidTestEntity.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"InvalidTestEntity.js","sourceRoot":"","sources":["../../../src/__testfixtures__/InvalidTestEntity.ts"],"names":[],"mappings":";;;AAAA,yCASsB;AAQtB,MAAa,iBAAkB,SAAQ,eAAoD;IACzF,MAAM,CAAC,yBAAyB;QAO9B,OAAO;YACL,WAAW,EAAE,iBAAiB;YAC9B,mBAAmB,EAAE,sCAA8B;YACnD,kBAAkB,EAAE,8BAA8B;SACnD,CAAC;IACJ,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,kCAAkC,CAAC,IAAU;QAC/D,MAAM,SAAS,GAAG,wBAAwB,CAAC;QAC3C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACvD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE;gBACjD,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,oDAAoD;gBACzE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACvB,CAAC,CAAC,CAAC;QACL,CAAC;QACD,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC;IACxC,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,IAAU;QACnD,MAAM,SAAS,GAAG,wBAAwB,CAAC;QAC3C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACvD,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;CACF;AAlCD,8CAkCC;AAED,MAAM,8BAA+B,SAAQ,4BAK5C;IAC6B,WAAW,GAAG;QACxC,IAAI,qCAA4B,EAK7B;KACJ,CAAC;IAC0B,SAAS,GAAG;QACtC,IAAI,qCAA4B,EAK7B;KACJ,CAAC;IAC0B,WAAW,GAAG;QACxC,IAAI,qCAA4B,EAK7B;KACJ,CAAC;IAC0B,WAAW,GAAG;QACxC,IAAI,qCAA4B,EAK7B;KACJ,CAAC;CACH;AAEY,QAAA,8BAA8B,GAAG,IAAI,4BAAmB,CAGnE;IACA,OAAO,EAAE,IAAI;IACb,SAAS,EAAE,wBAAwB;IACnC,MAAM,EAAE;QACN,EAAE,EAAE,IAAI,iBAAQ,CAAC;YACf,UAAU,EAAE,IAAI;YAChB,KAAK,EAAE,KAAK;SACb,CAAC;QACF,IAAI,EAAE,IAAI,oBAAW,CAAC;YACpB,UAAU,EAAE,MAAM;SACnB,CAAC;KACH;IACD,qBAAqB,EAAE,UAAU;IACjC,kBAAkB,EAAE,OAAO;CAC5B,CAAC,CAAC"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { AlwaysAllowPrivacyPolicyRule, Entity, EntityCompanionDefinition, EntityConfiguration, EntityPrivacyPolicy, ViewerContext } from '@expo/entity';
|
|
2
|
-
import { Knex } from 'knex';
|
|
3
|
-
type PostgresTestEntityFields = {
|
|
4
|
-
id: string;
|
|
5
|
-
name: string | null;
|
|
6
|
-
hasADog: boolean | null;
|
|
7
|
-
hasACat: boolean | null;
|
|
8
|
-
stringArray: string[] | null;
|
|
9
|
-
jsonArrayField: string[] | null;
|
|
10
|
-
jsonObjectField: {
|
|
11
|
-
hello: string;
|
|
12
|
-
} | null;
|
|
13
|
-
dateField: Date | null;
|
|
14
|
-
maybeJsonArrayField: string[] | {
|
|
15
|
-
hello: string;
|
|
16
|
-
} | null;
|
|
17
|
-
bigintField: string | null;
|
|
18
|
-
};
|
|
19
|
-
export declare class PostgresTestEntity extends Entity<PostgresTestEntityFields, 'id', ViewerContext> {
|
|
20
|
-
static defineCompanionDefinition(): EntityCompanionDefinition<PostgresTestEntityFields, 'id', ViewerContext, PostgresTestEntity, PostgresTestEntityPrivacyPolicy>;
|
|
21
|
-
static createOrTruncatePostgresTableAsync(knex: Knex): Promise<void>;
|
|
22
|
-
static dropPostgresTableAsync(knex: Knex): Promise<void>;
|
|
23
|
-
}
|
|
24
|
-
declare class PostgresTestEntityPrivacyPolicy extends EntityPrivacyPolicy<PostgresTestEntityFields, 'id', ViewerContext, PostgresTestEntity> {
|
|
25
|
-
protected readonly createRules: AlwaysAllowPrivacyPolicyRule<PostgresTestEntityFields, "id", ViewerContext, PostgresTestEntity, keyof PostgresTestEntityFields>[];
|
|
26
|
-
protected readonly readRules: AlwaysAllowPrivacyPolicyRule<PostgresTestEntityFields, "id", ViewerContext, PostgresTestEntity, keyof PostgresTestEntityFields>[];
|
|
27
|
-
protected readonly updateRules: AlwaysAllowPrivacyPolicyRule<PostgresTestEntityFields, "id", ViewerContext, PostgresTestEntity, keyof PostgresTestEntityFields>[];
|
|
28
|
-
protected readonly deleteRules: AlwaysAllowPrivacyPolicyRule<PostgresTestEntityFields, "id", ViewerContext, PostgresTestEntity, keyof PostgresTestEntityFields>[];
|
|
29
|
-
}
|
|
30
|
-
export declare const postgresTestEntityConfiguration: EntityConfiguration<PostgresTestEntityFields, "id">;
|
|
31
|
-
export {};
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.postgresTestEntityConfiguration = exports.PostgresTestEntity = void 0;
|
|
4
|
-
const entity_1 = require("@expo/entity");
|
|
5
|
-
const EntityFields_1 = require("../EntityFields");
|
|
6
|
-
class PostgresTestEntity extends entity_1.Entity {
|
|
7
|
-
static defineCompanionDefinition() {
|
|
8
|
-
return {
|
|
9
|
-
entityClass: PostgresTestEntity,
|
|
10
|
-
entityConfiguration: exports.postgresTestEntityConfiguration,
|
|
11
|
-
privacyPolicyClass: PostgresTestEntityPrivacyPolicy,
|
|
12
|
-
};
|
|
13
|
-
}
|
|
14
|
-
static async createOrTruncatePostgresTableAsync(knex) {
|
|
15
|
-
const tableName = 'postgres_test_entities';
|
|
16
|
-
const hasTable = await knex.schema.hasTable(tableName);
|
|
17
|
-
if (!hasTable) {
|
|
18
|
-
await knex.schema.createTable(tableName, (table) => {
|
|
19
|
-
table.uuid('id').defaultTo(knex.raw('gen_random_uuid()')).primary();
|
|
20
|
-
table.string('name');
|
|
21
|
-
table.boolean('has_a_dog');
|
|
22
|
-
table.boolean('has_a_cat');
|
|
23
|
-
table.specificType('string_array', 'text[]');
|
|
24
|
-
table.jsonb('json_array_field');
|
|
25
|
-
table.jsonb('json_object_field');
|
|
26
|
-
table.dateTime('date_field', { useTz: true });
|
|
27
|
-
table.jsonb('maybe_json_array_field');
|
|
28
|
-
table.bigint('bigint_field');
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
await knex.into(tableName).truncate();
|
|
32
|
-
}
|
|
33
|
-
static async dropPostgresTableAsync(knex) {
|
|
34
|
-
const tableName = 'postgres_test_entities';
|
|
35
|
-
const hasTable = await knex.schema.hasTable(tableName);
|
|
36
|
-
if (hasTable) {
|
|
37
|
-
await knex.schema.dropTable(tableName);
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
exports.PostgresTestEntity = PostgresTestEntity;
|
|
42
|
-
class PostgresTestEntityPrivacyPolicy extends entity_1.EntityPrivacyPolicy {
|
|
43
|
-
createRules = [
|
|
44
|
-
new entity_1.AlwaysAllowPrivacyPolicyRule(),
|
|
45
|
-
];
|
|
46
|
-
readRules = [
|
|
47
|
-
new entity_1.AlwaysAllowPrivacyPolicyRule(),
|
|
48
|
-
];
|
|
49
|
-
updateRules = [
|
|
50
|
-
new entity_1.AlwaysAllowPrivacyPolicyRule(),
|
|
51
|
-
];
|
|
52
|
-
deleteRules = [
|
|
53
|
-
new entity_1.AlwaysAllowPrivacyPolicyRule(),
|
|
54
|
-
];
|
|
55
|
-
}
|
|
56
|
-
exports.postgresTestEntityConfiguration = new entity_1.EntityConfiguration({
|
|
57
|
-
idField: 'id',
|
|
58
|
-
tableName: 'postgres_test_entities',
|
|
59
|
-
schema: {
|
|
60
|
-
id: new entity_1.UUIDField({
|
|
61
|
-
columnName: 'id',
|
|
62
|
-
cache: true,
|
|
63
|
-
}),
|
|
64
|
-
name: new entity_1.StringField({
|
|
65
|
-
columnName: 'name',
|
|
66
|
-
}),
|
|
67
|
-
hasADog: new entity_1.BooleanField({
|
|
68
|
-
columnName: 'has_a_dog',
|
|
69
|
-
}),
|
|
70
|
-
hasACat: new entity_1.BooleanField({
|
|
71
|
-
columnName: 'has_a_cat',
|
|
72
|
-
}),
|
|
73
|
-
stringArray: new entity_1.StringArrayField({
|
|
74
|
-
columnName: 'string_array',
|
|
75
|
-
}),
|
|
76
|
-
jsonArrayField: new EntityFields_1.JSONArrayField({
|
|
77
|
-
columnName: 'json_array_field',
|
|
78
|
-
}),
|
|
79
|
-
jsonObjectField: new entity_1.JSONObjectField({
|
|
80
|
-
columnName: 'json_object_field',
|
|
81
|
-
}),
|
|
82
|
-
dateField: new entity_1.DateField({
|
|
83
|
-
columnName: 'date_field',
|
|
84
|
-
}),
|
|
85
|
-
maybeJsonArrayField: new EntityFields_1.MaybeJSONArrayField({
|
|
86
|
-
columnName: 'maybe_json_array_field',
|
|
87
|
-
}),
|
|
88
|
-
bigintField: new EntityFields_1.BigIntField({
|
|
89
|
-
columnName: 'bigint_field',
|
|
90
|
-
}),
|
|
91
|
-
},
|
|
92
|
-
databaseAdapterFlavor: 'postgres',
|
|
93
|
-
cacheAdapterFlavor: 'redis',
|
|
94
|
-
compositeFieldDefinitions: [{ compositeField: ['hasACat', 'hasADog'], cache: false }],
|
|
95
|
-
});
|
|
96
|
-
//# sourceMappingURL=PostgresTestEntity.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PostgresTestEntity.js","sourceRoot":"","sources":["../../../src/__testfixtures__/PostgresTestEntity.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { AlwaysAllowPrivacyPolicyRule, Entity, EntityCompanionDefinition, EntityConfiguration, EntityPrivacyPolicy, ViewerContext } from '@expo/entity';
|
|
2
|
-
import { Knex } from 'knex';
|
|
3
|
-
type PostgresTriggerTestEntityFields = {
|
|
4
|
-
id: string;
|
|
5
|
-
name: string | null;
|
|
6
|
-
};
|
|
7
|
-
export declare class PostgresTriggerTestEntity extends Entity<PostgresTriggerTestEntityFields, 'id', ViewerContext> {
|
|
8
|
-
static defineCompanionDefinition(): EntityCompanionDefinition<PostgresTriggerTestEntityFields, 'id', ViewerContext, PostgresTriggerTestEntity, PostgresTriggerTestEntityPrivacyPolicy>;
|
|
9
|
-
static createOrTruncatePostgresTableAsync(knex: Knex): Promise<void>;
|
|
10
|
-
static dropPostgresTableAsync(knex: Knex): Promise<void>;
|
|
11
|
-
}
|
|
12
|
-
declare class PostgresTriggerTestEntityPrivacyPolicy extends EntityPrivacyPolicy<PostgresTriggerTestEntityFields, 'id', ViewerContext, PostgresTriggerTestEntity> {
|
|
13
|
-
protected readonly createRules: AlwaysAllowPrivacyPolicyRule<PostgresTriggerTestEntityFields, "id", ViewerContext, PostgresTriggerTestEntity, keyof PostgresTriggerTestEntityFields>[];
|
|
14
|
-
protected readonly readRules: AlwaysAllowPrivacyPolicyRule<PostgresTriggerTestEntityFields, "id", ViewerContext, PostgresTriggerTestEntity, keyof PostgresTriggerTestEntityFields>[];
|
|
15
|
-
protected readonly updateRules: AlwaysAllowPrivacyPolicyRule<PostgresTriggerTestEntityFields, "id", ViewerContext, PostgresTriggerTestEntity, keyof PostgresTriggerTestEntityFields>[];
|
|
16
|
-
protected readonly deleteRules: AlwaysAllowPrivacyPolicyRule<PostgresTriggerTestEntityFields, "id", ViewerContext, PostgresTriggerTestEntity, keyof PostgresTriggerTestEntityFields>[];
|
|
17
|
-
}
|
|
18
|
-
export declare const postgresTestEntityConfiguration: EntityConfiguration<PostgresTriggerTestEntityFields, "id">;
|
|
19
|
-
export {};
|
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.postgresTestEntityConfiguration = exports.PostgresTriggerTestEntity = void 0;
|
|
4
|
-
const entity_1 = require("@expo/entity");
|
|
5
|
-
class PostgresTriggerTestEntity extends entity_1.Entity {
|
|
6
|
-
static defineCompanionDefinition() {
|
|
7
|
-
return {
|
|
8
|
-
entityClass: PostgresTriggerTestEntity,
|
|
9
|
-
entityConfiguration: exports.postgresTestEntityConfiguration,
|
|
10
|
-
privacyPolicyClass: PostgresTriggerTestEntityPrivacyPolicy,
|
|
11
|
-
mutationTriggers: {
|
|
12
|
-
beforeCreate: [new ThrowConditionallyTrigger('name', 'beforeCreate')],
|
|
13
|
-
afterCreate: [new ThrowConditionallyTrigger('name', 'afterCreate')],
|
|
14
|
-
beforeUpdate: [new ThrowConditionallyTrigger('name', 'beforeUpdate')],
|
|
15
|
-
afterUpdate: [new ThrowConditionallyTrigger('name', 'afterUpdate')],
|
|
16
|
-
beforeDelete: [new ThrowConditionallyTrigger('name', 'beforeDelete')],
|
|
17
|
-
afterDelete: [new ThrowConditionallyTrigger('name', 'afterDelete')],
|
|
18
|
-
beforeAll: [new ThrowConditionallyTrigger('name', 'beforeAll')],
|
|
19
|
-
afterAll: [new ThrowConditionallyTrigger('name', 'afterAll')],
|
|
20
|
-
afterCommit: [new ThrowConditionallyNonTransactionalTrigger('name', 'afterCommit')],
|
|
21
|
-
},
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
static async createOrTruncatePostgresTableAsync(knex) {
|
|
25
|
-
const tableName = 'postgres_test_entities';
|
|
26
|
-
const hasTable = await knex.schema.hasTable(tableName);
|
|
27
|
-
if (!hasTable) {
|
|
28
|
-
await knex.schema.createTable(tableName, (table) => {
|
|
29
|
-
table.uuid('id').defaultTo(knex.raw('gen_random_uuid()')).primary();
|
|
30
|
-
table.string('name');
|
|
31
|
-
});
|
|
32
|
-
}
|
|
33
|
-
await knex.into(tableName).truncate();
|
|
34
|
-
}
|
|
35
|
-
static async dropPostgresTableAsync(knex) {
|
|
36
|
-
const tableName = 'postgres_test_entities';
|
|
37
|
-
const hasTable = await knex.schema.hasTable(tableName);
|
|
38
|
-
if (hasTable) {
|
|
39
|
-
await knex.schema.dropTable(tableName);
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
exports.PostgresTriggerTestEntity = PostgresTriggerTestEntity;
|
|
44
|
-
class PostgresTriggerTestEntityPrivacyPolicy extends entity_1.EntityPrivacyPolicy {
|
|
45
|
-
createRules = [
|
|
46
|
-
new entity_1.AlwaysAllowPrivacyPolicyRule(),
|
|
47
|
-
];
|
|
48
|
-
readRules = [
|
|
49
|
-
new entity_1.AlwaysAllowPrivacyPolicyRule(),
|
|
50
|
-
];
|
|
51
|
-
updateRules = [
|
|
52
|
-
new entity_1.AlwaysAllowPrivacyPolicyRule(),
|
|
53
|
-
];
|
|
54
|
-
deleteRules = [
|
|
55
|
-
new entity_1.AlwaysAllowPrivacyPolicyRule(),
|
|
56
|
-
];
|
|
57
|
-
}
|
|
58
|
-
class ThrowConditionallyTrigger extends entity_1.EntityMutationTrigger {
|
|
59
|
-
fieldName;
|
|
60
|
-
badValue;
|
|
61
|
-
constructor(fieldName, badValue) {
|
|
62
|
-
super();
|
|
63
|
-
this.fieldName = fieldName;
|
|
64
|
-
this.badValue = badValue;
|
|
65
|
-
}
|
|
66
|
-
async executeAsync(_viewerContext, _queryContext, entity, _mutationInfo) {
|
|
67
|
-
if (entity.getField(this.fieldName) === this.badValue) {
|
|
68
|
-
throw new Error(`${this.fieldName} cannot have value ${this.badValue}`);
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
class ThrowConditionallyNonTransactionalTrigger extends entity_1.EntityNonTransactionalMutationTrigger {
|
|
73
|
-
fieldName;
|
|
74
|
-
badValue;
|
|
75
|
-
constructor(fieldName, badValue) {
|
|
76
|
-
super();
|
|
77
|
-
this.fieldName = fieldName;
|
|
78
|
-
this.badValue = badValue;
|
|
79
|
-
}
|
|
80
|
-
async executeAsync(_viewerContext, entity) {
|
|
81
|
-
if (entity.getField(this.fieldName) === this.badValue) {
|
|
82
|
-
throw new Error(`${this.fieldName} cannot have value ${this.badValue}`);
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
exports.postgresTestEntityConfiguration = new entity_1.EntityConfiguration({
|
|
87
|
-
idField: 'id',
|
|
88
|
-
tableName: 'postgres_test_entities',
|
|
89
|
-
schema: {
|
|
90
|
-
id: new entity_1.UUIDField({
|
|
91
|
-
columnName: 'id',
|
|
92
|
-
cache: true,
|
|
93
|
-
}),
|
|
94
|
-
name: new entity_1.StringField({
|
|
95
|
-
columnName: 'name',
|
|
96
|
-
}),
|
|
97
|
-
},
|
|
98
|
-
databaseAdapterFlavor: 'postgres',
|
|
99
|
-
cacheAdapterFlavor: 'redis',
|
|
100
|
-
});
|
|
101
|
-
//# sourceMappingURL=PostgresTriggerTestEntity.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PostgresTriggerTestEntity.js","sourceRoot":"","sources":["../../../src/__testfixtures__/PostgresTriggerTestEntity.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { AlwaysAllowPrivacyPolicyRule, Entity, EntityCompanionDefinition, EntityConfiguration, EntityPrivacyPolicy, EntityTransactionalQueryContext, ViewerContext } from '@expo/entity';
|
|
2
|
-
import { Knex } from 'knex';
|
|
3
|
-
type PostgresUniqueTestEntityFields = {
|
|
4
|
-
id: string;
|
|
5
|
-
name: string | null;
|
|
6
|
-
};
|
|
7
|
-
export declare class PostgresUniqueTestEntity extends Entity<PostgresUniqueTestEntityFields, 'id', ViewerContext> {
|
|
8
|
-
static defineCompanionDefinition(): EntityCompanionDefinition<PostgresUniqueTestEntityFields, 'id', ViewerContext, PostgresUniqueTestEntity, PostgresUniqueTestEntityPrivacyPolicy>;
|
|
9
|
-
static createOrTruncatePostgresTableAsync(knex: Knex): Promise<void>;
|
|
10
|
-
static dropPostgresTableAsync(knex: Knex): Promise<void>;
|
|
11
|
-
static getByNameAsync(viewerContext: ViewerContext, args: {
|
|
12
|
-
name: string;
|
|
13
|
-
}, queryContext?: EntityTransactionalQueryContext): Promise<PostgresUniqueTestEntity | null>;
|
|
14
|
-
static createWithNameAsync(viewerContext: ViewerContext, args: {
|
|
15
|
-
name: string;
|
|
16
|
-
}, queryContext?: EntityTransactionalQueryContext): Promise<PostgresUniqueTestEntity>;
|
|
17
|
-
}
|
|
18
|
-
declare class PostgresUniqueTestEntityPrivacyPolicy extends EntityPrivacyPolicy<PostgresUniqueTestEntityFields, 'id', ViewerContext, PostgresUniqueTestEntity> {
|
|
19
|
-
protected readonly createRules: AlwaysAllowPrivacyPolicyRule<PostgresUniqueTestEntityFields, "id", ViewerContext, PostgresUniqueTestEntity, keyof PostgresUniqueTestEntityFields>[];
|
|
20
|
-
protected readonly readRules: AlwaysAllowPrivacyPolicyRule<PostgresUniqueTestEntityFields, "id", ViewerContext, PostgresUniqueTestEntity, keyof PostgresUniqueTestEntityFields>[];
|
|
21
|
-
protected readonly updateRules: AlwaysAllowPrivacyPolicyRule<PostgresUniqueTestEntityFields, "id", ViewerContext, PostgresUniqueTestEntity, keyof PostgresUniqueTestEntityFields>[];
|
|
22
|
-
protected readonly deleteRules: AlwaysAllowPrivacyPolicyRule<PostgresUniqueTestEntityFields, "id", ViewerContext, PostgresUniqueTestEntity, keyof PostgresUniqueTestEntityFields>[];
|
|
23
|
-
}
|
|
24
|
-
export declare const postgresTestEntityConfiguration: EntityConfiguration<PostgresUniqueTestEntityFields, "id">;
|
|
25
|
-
export {};
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.postgresTestEntityConfiguration = exports.PostgresUniqueTestEntity = void 0;
|
|
4
|
-
const entity_1 = require("@expo/entity");
|
|
5
|
-
class PostgresUniqueTestEntity extends entity_1.Entity {
|
|
6
|
-
static defineCompanionDefinition() {
|
|
7
|
-
return {
|
|
8
|
-
entityClass: PostgresUniqueTestEntity,
|
|
9
|
-
entityConfiguration: exports.postgresTestEntityConfiguration,
|
|
10
|
-
privacyPolicyClass: PostgresUniqueTestEntityPrivacyPolicy,
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
static async createOrTruncatePostgresTableAsync(knex) {
|
|
14
|
-
const tableName = 'postgres_test_entities';
|
|
15
|
-
const hasTable = await knex.schema.hasTable(tableName);
|
|
16
|
-
if (!hasTable) {
|
|
17
|
-
await knex.schema.createTable(tableName, (table) => {
|
|
18
|
-
table.uuid('id').defaultTo(knex.raw('gen_random_uuid()')).primary();
|
|
19
|
-
table.string('name').unique();
|
|
20
|
-
});
|
|
21
|
-
}
|
|
22
|
-
await knex.into(tableName).truncate();
|
|
23
|
-
}
|
|
24
|
-
static async dropPostgresTableAsync(knex) {
|
|
25
|
-
const tableName = 'postgres_test_entities';
|
|
26
|
-
const hasTable = await knex.schema.hasTable(tableName);
|
|
27
|
-
if (hasTable) {
|
|
28
|
-
await knex.schema.dropTable(tableName);
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
static async getByNameAsync(viewerContext, args, queryContext) {
|
|
32
|
-
return await PostgresUniqueTestEntity.loader(viewerContext, queryContext).loadByFieldEqualingAsync('name', args.name);
|
|
33
|
-
}
|
|
34
|
-
static async createWithNameAsync(viewerContext, args, queryContext) {
|
|
35
|
-
return await PostgresUniqueTestEntity.creator(viewerContext, queryContext)
|
|
36
|
-
.setField('name', args.name)
|
|
37
|
-
.createAsync();
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
exports.PostgresUniqueTestEntity = PostgresUniqueTestEntity;
|
|
41
|
-
class PostgresUniqueTestEntityPrivacyPolicy extends entity_1.EntityPrivacyPolicy {
|
|
42
|
-
createRules = [
|
|
43
|
-
new entity_1.AlwaysAllowPrivacyPolicyRule(),
|
|
44
|
-
];
|
|
45
|
-
readRules = [
|
|
46
|
-
new entity_1.AlwaysAllowPrivacyPolicyRule(),
|
|
47
|
-
];
|
|
48
|
-
updateRules = [
|
|
49
|
-
new entity_1.AlwaysAllowPrivacyPolicyRule(),
|
|
50
|
-
];
|
|
51
|
-
deleteRules = [
|
|
52
|
-
new entity_1.AlwaysAllowPrivacyPolicyRule(),
|
|
53
|
-
];
|
|
54
|
-
}
|
|
55
|
-
exports.postgresTestEntityConfiguration = new entity_1.EntityConfiguration({
|
|
56
|
-
idField: 'id',
|
|
57
|
-
tableName: 'postgres_test_entities',
|
|
58
|
-
schema: {
|
|
59
|
-
id: new entity_1.UUIDField({
|
|
60
|
-
columnName: 'id',
|
|
61
|
-
cache: true,
|
|
62
|
-
}),
|
|
63
|
-
name: new entity_1.StringField({
|
|
64
|
-
columnName: 'name',
|
|
65
|
-
cache: true,
|
|
66
|
-
}),
|
|
67
|
-
},
|
|
68
|
-
databaseAdapterFlavor: 'postgres',
|
|
69
|
-
cacheAdapterFlavor: 'redis',
|
|
70
|
-
});
|
|
71
|
-
//# sourceMappingURL=PostgresUniqueTestEntity.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PostgresUniqueTestEntity.js","sourceRoot":"","sources":["../../../src/__testfixtures__/PostgresUniqueTestEntity.ts"],"names":[],"mappings":";;;AAAA,yCAUsB;AAQtB,MAAa,wBAAyB,SAAQ,eAI7C;IACC,MAAM,CAAC,yBAAyB;QAO9B,OAAO;YACL,WAAW,EAAE,wBAAwB;YACrC,mBAAmB,EAAE,uCAA+B;YACpD,kBAAkB,EAAE,qCAAqC;SAC1D,CAAC;IACJ,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,kCAAkC,CAAC,IAAU;QAC/D,MAAM,SAAS,GAAG,wBAAwB,CAAC;QAC3C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACvD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE;gBACjD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;gBACpE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC;YAChC,CAAC,CAAC,CAAC;QACL,CAAC;QACD,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC;IACxC,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,IAAU;QACnD,MAAM,SAAS,GAAG,wBAAwB,CAAC;QAC3C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACvD,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,cAAc,CAChC,aAA4B,EAC5B,IAAsB,EACtB,YAA8C;QAE9C,OAAO,MAAM,wBAAwB,CAAC,MAAM,CAC1C,aAAa,EACb,YAAY,CACb,CAAC,wBAAwB,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,mBAAmB,CACrC,aAA4B,EAC5B,IAAsB,EACtB,YAA8C;QAE9C,OAAO,MAAM,wBAAwB,CAAC,OAAO,CAAC,aAAa,EAAE,YAAY,CAAC;aACvE,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC;aAC3B,WAAW,EAAE,CAAC;IACnB,CAAC;CACF;AA3DD,4DA2DC;AAED,MAAM,qCAAsC,SAAQ,4BAKnD;IAC6B,WAAW,GAAG;QACxC,IAAI,qCAA4B,EAK7B;KACJ,CAAC;IAC0B,SAAS,GAAG;QACtC,IAAI,qCAA4B,EAK7B;KACJ,CAAC;IAC0B,WAAW,GAAG;QACxC,IAAI,qCAA4B,EAK7B;KACJ,CAAC;IAC0B,WAAW,GAAG;QACxC,IAAI,qCAA4B,EAK7B;KACJ,CAAC;CACH;AAEY,QAAA,+BAA+B,GAAG,IAAI,4BAAmB,CAGpE;IACA,OAAO,EAAE,IAAI;IACb,SAAS,EAAE,wBAAwB;IACnC,MAAM,EAAE;QACN,EAAE,EAAE,IAAI,kBAAS,CAAC;YAChB,UAAU,EAAE,IAAI;YAChB,KAAK,EAAE,IAAI;SACZ,CAAC;QACF,IAAI,EAAE,IAAI,oBAAW,CAAC;YACpB,UAAU,EAAE,MAAM;YAClB,KAAK,EAAE,IAAI;SACZ,CAAC;KACH;IACD,qBAAqB,EAAE,UAAU;IACjC,kBAAkB,EAAE,OAAO;CAC5B,CAAC,CAAC"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { AlwaysAllowPrivacyPolicyRule, Entity, EntityCompanionDefinition, EntityConfiguration, EntityPrivacyPolicy, ViewerContext } from '@expo/entity';
|
|
2
|
-
import { Knex } from 'knex';
|
|
3
|
-
type PostgresValidatorTestEntityFields = {
|
|
4
|
-
id: string;
|
|
5
|
-
name: string | null;
|
|
6
|
-
};
|
|
7
|
-
export declare class PostgresValidatorTestEntity extends Entity<PostgresValidatorTestEntityFields, 'id', ViewerContext> {
|
|
8
|
-
static defineCompanionDefinition(): EntityCompanionDefinition<PostgresValidatorTestEntityFields, 'id', ViewerContext, PostgresValidatorTestEntity, PostgresValidatorTestEntityPrivacyPolicy>;
|
|
9
|
-
static createOrTruncatePostgresTableAsync(knex: Knex): Promise<void>;
|
|
10
|
-
static dropPostgresTableAsync(knex: Knex): Promise<void>;
|
|
11
|
-
}
|
|
12
|
-
declare class PostgresValidatorTestEntityPrivacyPolicy extends EntityPrivacyPolicy<PostgresValidatorTestEntityFields, 'id', ViewerContext, PostgresValidatorTestEntity> {
|
|
13
|
-
protected readonly createRules: AlwaysAllowPrivacyPolicyRule<PostgresValidatorTestEntityFields, "id", ViewerContext, PostgresValidatorTestEntity, keyof PostgresValidatorTestEntityFields>[];
|
|
14
|
-
protected readonly readRules: AlwaysAllowPrivacyPolicyRule<PostgresValidatorTestEntityFields, "id", ViewerContext, PostgresValidatorTestEntity, keyof PostgresValidatorTestEntityFields>[];
|
|
15
|
-
protected readonly updateRules: AlwaysAllowPrivacyPolicyRule<PostgresValidatorTestEntityFields, "id", ViewerContext, PostgresValidatorTestEntity, keyof PostgresValidatorTestEntityFields>[];
|
|
16
|
-
protected readonly deleteRules: AlwaysAllowPrivacyPolicyRule<PostgresValidatorTestEntityFields, "id", ViewerContext, PostgresValidatorTestEntity, keyof PostgresValidatorTestEntityFields>[];
|
|
17
|
-
}
|
|
18
|
-
export declare const postgresTestEntityConfiguration: EntityConfiguration<PostgresValidatorTestEntityFields, "id">;
|
|
19
|
-
export {};
|