@jrmc/adonis-attachment 2.4.2 → 3.1.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/build/bin/test.d.ts +1 -0
- package/build/bin/test.js +34 -0
- package/build/index.d.ts +1 -0
- package/build/providers/attachment_provider.d.ts +2 -2
- package/build/services/main.d.ts +2 -2
- package/build/src/adapters/exif.d.ts +7 -1
- package/build/src/adapters/exif.js +8 -5
- package/build/src/attachment_manager.d.ts +7 -4
- package/build/src/attachment_manager.js +21 -8
- package/build/src/define_config.d.ts +16 -2
- package/build/src/define_config.js +8 -9
- package/build/src/errors.d.ts +18 -14
- package/build/src/errors.js +4 -0
- package/build/src/mixins/attachmentable.d.ts +127 -112
- package/build/src/mixins/attachmentable.js +2 -2
- package/build/src/types/attachment.d.ts +2 -1
- package/build/src/types/config.d.ts +22 -19
- package/build/src/types/index.d.ts +5 -0
- package/build/src/types/index.js +5 -0
- package/build/src/utils/helpers.d.ts +2 -0
- package/build/src/utils/helpers.js +35 -1
- package/build/stubs/config.stub +11 -5
- package/build/tests/attachment-manager.spec.d.ts +7 -0
- package/build/tests/attachment-manager.spec.js +234 -0
- package/build/tests/attachment.spec.d.ts +7 -0
- package/build/tests/attachment.spec.js +16 -0
- package/build/tests/commands.spec.d.ts +7 -0
- package/build/tests/commands.spec.js +58 -0
- package/build/tests/fixtures/converters/image_converter.d.ts +12 -0
- package/build/tests/fixtures/converters/image_converter.js +12 -0
- package/build/tests/fixtures/factories/user.d.ts +8 -0
- package/build/tests/fixtures/factories/user.js +19 -0
- package/build/tests/fixtures/factories/user_with_variants.d.ts +8 -0
- package/build/tests/fixtures/factories/user_with_variants.js +19 -0
- package/build/tests/fixtures/migrations/create_users_table.d.ts +12 -0
- package/build/tests/fixtures/migrations/create_users_table.js +23 -0
- package/build/tests/fixtures/models/user.d.ts +466 -0
- package/build/tests/fixtures/models/user.js +36 -0
- package/build/tests/fixtures/models/user_with_variants.d.ts +465 -0
- package/build/tests/fixtures/models/user_with_variants.js +33 -0
- package/build/tests/helpers/app.d.ts +29 -0
- package/build/tests/helpers/app.js +104 -0
- package/build/tests/helpers/index.d.ts +7 -0
- package/build/tests/helpers/index.js +7 -0
- package/build/tests/options.spec.d.ts +7 -0
- package/build/tests/options.spec.js +126 -0
- package/build/tests/variants.spec.d.ts +7 -0
- package/build/tests/variants.spec.js +21 -0
- package/package.json +39 -14
|
@@ -7,7 +7,8 @@
|
|
|
7
7
|
import type { BaseModel } from '@adonisjs/lucid/orm';
|
|
8
8
|
import type { NormalizeConstructor } from '@adonisjs/core/types/helpers';
|
|
9
9
|
import type { AttributeOfModelWithAttachment } from '../types/mixin.js';
|
|
10
|
-
|
|
10
|
+
type Constructor = NormalizeConstructor<typeof BaseModel>;
|
|
11
|
+
export declare function Attachmentable<T extends Constructor>(superclass: T): {
|
|
11
12
|
new (...args: any[]): {
|
|
12
13
|
$attachments: AttributeOfModelWithAttachment;
|
|
13
14
|
$attributes: import("@adonisjs/lucid/types/model").ModelObject;
|
|
@@ -28,8 +29,8 @@ export declare const Attachmentable: <Model extends NormalizeConstructor<typeof
|
|
|
28
29
|
$options?: import("@adonisjs/lucid/types/model").ModelOptions;
|
|
29
30
|
$trx?: import("@adonisjs/lucid/types/database").TransactionClientContract;
|
|
30
31
|
$setOptionsAndTrx(options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions): void;
|
|
31
|
-
useTransaction(trx: import("@adonisjs/lucid/types/database").TransactionClientContract): any;
|
|
32
|
-
useConnection(connection: string): any;
|
|
32
|
+
useTransaction(trx: import("@adonisjs/lucid/types/database").TransactionClientContract): /*elided*/ any;
|
|
33
|
+
useConnection(connection: string): /*elided*/ any;
|
|
33
34
|
$getQueryFor(action: "insert", client: import("@adonisjs/lucid/types/database").QueryClientContract): ReturnType<import("@adonisjs/lucid/types/database").QueryClientContract["insertQuery"]>;
|
|
34
35
|
$getQueryFor(action: "update" | "delete" | "refresh", client: import("@adonisjs/lucid/types/database").QueryClientContract): import("@adonisjs/lucid/types/model").ModelQueryBuilderContract<import("@adonisjs/lucid/types/model").LucidModel>;
|
|
35
36
|
$setAttribute(key: string, value: any): void;
|
|
@@ -43,19 +44,21 @@ export declare const Attachmentable: <Model extends NormalizeConstructor<typeof
|
|
|
43
44
|
$hydrateOriginals(): void;
|
|
44
45
|
fill(value: Partial<{
|
|
45
46
|
$attachments: AttributeOfModelWithAttachment;
|
|
46
|
-
}>, allowExtraProperties?: boolean): any;
|
|
47
|
+
}>, allowExtraProperties?: boolean): /*elided*/ any;
|
|
47
48
|
merge(value: Partial<{
|
|
48
49
|
$attachments: AttributeOfModelWithAttachment;
|
|
49
|
-
}>, allowExtraProperties?: boolean): any;
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
50
|
+
}>, allowExtraProperties?: boolean): /*elided*/ any;
|
|
51
|
+
isDirty(fields?: "$attachments" | ("$attachments" | undefined)[] | undefined): boolean;
|
|
52
|
+
enableForceUpdate(): /*elided*/ any;
|
|
53
|
+
save(): Promise</*elided*/ any>;
|
|
54
|
+
lockForUpdate<T_1>(callback: (user: /*elided*/ any) => T_1 | Promise<T_1>): Promise<T_1>;
|
|
53
55
|
delete(): Promise<void>;
|
|
54
|
-
refresh(): Promise
|
|
55
|
-
load: import("@adonisjs/lucid/types/model").LucidRowPreload
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
56
|
+
refresh(): Promise</*elided*/ any>;
|
|
57
|
+
load: import("@adonisjs/lucid/types/model").LucidRowPreload</*elided*/ any>;
|
|
58
|
+
loadOnce: import("@adonisjs/lucid/types/model").LucidRowPreloadOnce</*elided*/ any>;
|
|
59
|
+
preload: import("@adonisjs/lucid/types/model").LucidRowPreload</*elided*/ any>;
|
|
60
|
+
loadAggregate: <Self extends /*elided*/ any, Name extends import("@adonisjs/lucid/types/relations").ExtractModelRelations<Self>, RelatedBuilder = Self[Name] extends import("@adonisjs/lucid/types/relations").ModelRelations<import("@adonisjs/lucid/types/model").LucidModel, import("@adonisjs/lucid/types/model").LucidModel> ? Self[Name]["subQuery"] : never>(name: Name, callback: (builder: RelatedBuilder) => void) => import("@adonisjs/lucid/types/model").LazyLoadAggregatesContract<Self>;
|
|
61
|
+
loadCount: <Self extends /*elided*/ any, Name extends import("@adonisjs/lucid/types/relations").ExtractModelRelations<Self>, RelatedBuilder = Self[Name] extends import("@adonisjs/lucid/types/relations").ModelRelations<import("@adonisjs/lucid/types/model").LucidModel, import("@adonisjs/lucid/types/model").LucidModel> ? Self[Name]["subQuery"] : never>(name: Name, callback?: ((builder: RelatedBuilder) => void) | undefined) => import("@adonisjs/lucid/types/model").LazyLoadAggregatesContract<Self>;
|
|
59
62
|
serializeAttributes(fields?: import("@adonisjs/lucid/types/model").CherryPickFields, raw?: boolean): import("@adonisjs/lucid/types/model").ModelObject;
|
|
60
63
|
serializeComputed(fields?: import("@adonisjs/lucid/types/model").CherryPickFields): import("@adonisjs/lucid/types/model").ModelObject;
|
|
61
64
|
serializeRelations(fields: undefined, raw: true): {
|
|
@@ -66,7 +69,7 @@ export declare const Attachmentable: <Model extends NormalizeConstructor<typeof
|
|
|
66
69
|
serialize(cherryPick?: import("@adonisjs/lucid/types/model").CherryPick): import("@adonisjs/lucid/types/model").ModelObject;
|
|
67
70
|
toObject(): import("@adonisjs/lucid/types/model").ModelObject;
|
|
68
71
|
toJSON(): import("@adonisjs/lucid/types/model").ModelObject;
|
|
69
|
-
related<
|
|
72
|
+
related<Name extends undefined>(relation: Name): /*elided*/ any[Name] extends import("@adonisjs/lucid/types/relations").ModelRelations<import("@adonisjs/lucid/types/model").LucidModel, import("@adonisjs/lucid/types/model").LucidModel> ? /*elided*/ any[Name]["client"] : never;
|
|
70
73
|
};
|
|
71
74
|
afterFindHook(modelInstance: {
|
|
72
75
|
$attachments: AttributeOfModelWithAttachment;
|
|
@@ -88,8 +91,8 @@ export declare const Attachmentable: <Model extends NormalizeConstructor<typeof
|
|
|
88
91
|
$options?: import("@adonisjs/lucid/types/model").ModelOptions;
|
|
89
92
|
$trx?: import("@adonisjs/lucid/types/database").TransactionClientContract;
|
|
90
93
|
$setOptionsAndTrx(options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions): void;
|
|
91
|
-
useTransaction(trx: import("@adonisjs/lucid/types/database").TransactionClientContract): any;
|
|
92
|
-
useConnection(connection: string): any;
|
|
94
|
+
useTransaction(trx: import("@adonisjs/lucid/types/database").TransactionClientContract): /*elided*/ any;
|
|
95
|
+
useConnection(connection: string): /*elided*/ any;
|
|
93
96
|
$getQueryFor(action: "insert", client: import("@adonisjs/lucid/types/database").QueryClientContract): ReturnType<import("@adonisjs/lucid/types/database").QueryClientContract["insertQuery"]>;
|
|
94
97
|
$getQueryFor(action: "update" | "delete" | "refresh", client: import("@adonisjs/lucid/types/database").QueryClientContract): import("@adonisjs/lucid/types/model").ModelQueryBuilderContract<import("@adonisjs/lucid/types/model").LucidModel>;
|
|
95
98
|
$setAttribute(key: string, value: any): void;
|
|
@@ -103,19 +106,21 @@ export declare const Attachmentable: <Model extends NormalizeConstructor<typeof
|
|
|
103
106
|
$hydrateOriginals(): void;
|
|
104
107
|
fill(value: Partial<{
|
|
105
108
|
$attachments: AttributeOfModelWithAttachment;
|
|
106
|
-
}>, allowExtraProperties?: boolean): any;
|
|
109
|
+
}>, allowExtraProperties?: boolean): /*elided*/ any;
|
|
107
110
|
merge(value: Partial<{
|
|
108
111
|
$attachments: AttributeOfModelWithAttachment;
|
|
109
|
-
}>, allowExtraProperties?: boolean): any;
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
112
|
+
}>, allowExtraProperties?: boolean): /*elided*/ any;
|
|
113
|
+
isDirty(fields?: "$attachments" | ("$attachments" | undefined)[] | undefined): boolean;
|
|
114
|
+
enableForceUpdate(): /*elided*/ any;
|
|
115
|
+
save(): Promise</*elided*/ any>;
|
|
116
|
+
lockForUpdate<T_1>(callback: (user: /*elided*/ any) => T_1 | Promise<T_1>): Promise<T_1>;
|
|
113
117
|
delete(): Promise<void>;
|
|
114
|
-
refresh(): Promise
|
|
115
|
-
load: import("@adonisjs/lucid/types/model").LucidRowPreload
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
118
|
+
refresh(): Promise</*elided*/ any>;
|
|
119
|
+
load: import("@adonisjs/lucid/types/model").LucidRowPreload</*elided*/ any>;
|
|
120
|
+
loadOnce: import("@adonisjs/lucid/types/model").LucidRowPreloadOnce</*elided*/ any>;
|
|
121
|
+
preload: import("@adonisjs/lucid/types/model").LucidRowPreload</*elided*/ any>;
|
|
122
|
+
loadAggregate: <Self extends /*elided*/ any, Name extends import("@adonisjs/lucid/types/relations").ExtractModelRelations<Self>, RelatedBuilder = Self[Name] extends import("@adonisjs/lucid/types/relations").ModelRelations<import("@adonisjs/lucid/types/model").LucidModel, import("@adonisjs/lucid/types/model").LucidModel> ? Self[Name]["subQuery"] : never>(name: Name, callback: (builder: RelatedBuilder) => void) => import("@adonisjs/lucid/types/model").LazyLoadAggregatesContract<Self>;
|
|
123
|
+
loadCount: <Self extends /*elided*/ any, Name extends import("@adonisjs/lucid/types/relations").ExtractModelRelations<Self>, RelatedBuilder = Self[Name] extends import("@adonisjs/lucid/types/relations").ModelRelations<import("@adonisjs/lucid/types/model").LucidModel, import("@adonisjs/lucid/types/model").LucidModel> ? Self[Name]["subQuery"] : never>(name: Name, callback?: ((builder: RelatedBuilder) => void) | undefined) => import("@adonisjs/lucid/types/model").LazyLoadAggregatesContract<Self>;
|
|
119
124
|
serializeAttributes(fields?: import("@adonisjs/lucid/types/model").CherryPickFields, raw?: boolean): import("@adonisjs/lucid/types/model").ModelObject;
|
|
120
125
|
serializeComputed(fields?: import("@adonisjs/lucid/types/model").CherryPickFields): import("@adonisjs/lucid/types/model").ModelObject;
|
|
121
126
|
serializeRelations(fields: undefined, raw: true): {
|
|
@@ -126,7 +131,7 @@ export declare const Attachmentable: <Model extends NormalizeConstructor<typeof
|
|
|
126
131
|
serialize(cherryPick?: import("@adonisjs/lucid/types/model").CherryPick): import("@adonisjs/lucid/types/model").ModelObject;
|
|
127
132
|
toObject(): import("@adonisjs/lucid/types/model").ModelObject;
|
|
128
133
|
toJSON(): import("@adonisjs/lucid/types/model").ModelObject;
|
|
129
|
-
related<
|
|
134
|
+
related<Name extends undefined>(relation: Name): /*elided*/ any[Name] extends import("@adonisjs/lucid/types/relations").ModelRelations<import("@adonisjs/lucid/types/model").LucidModel, import("@adonisjs/lucid/types/model").LucidModel> ? /*elided*/ any[Name]["client"] : never;
|
|
130
135
|
}): Promise<void>;
|
|
131
136
|
afterFetchHook(modelInstances: {
|
|
132
137
|
$attachments: AttributeOfModelWithAttachment;
|
|
@@ -148,8 +153,8 @@ export declare const Attachmentable: <Model extends NormalizeConstructor<typeof
|
|
|
148
153
|
$options?: import("@adonisjs/lucid/types/model").ModelOptions;
|
|
149
154
|
$trx?: import("@adonisjs/lucid/types/database").TransactionClientContract;
|
|
150
155
|
$setOptionsAndTrx(options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions): void;
|
|
151
|
-
useTransaction(trx: import("@adonisjs/lucid/types/database").TransactionClientContract): any;
|
|
152
|
-
useConnection(connection: string): any;
|
|
156
|
+
useTransaction(trx: import("@adonisjs/lucid/types/database").TransactionClientContract): /*elided*/ any;
|
|
157
|
+
useConnection(connection: string): /*elided*/ any;
|
|
153
158
|
$getQueryFor(action: "insert", client: import("@adonisjs/lucid/types/database").QueryClientContract): ReturnType<import("@adonisjs/lucid/types/database").QueryClientContract["insertQuery"]>;
|
|
154
159
|
$getQueryFor(action: "update" | "delete" | "refresh", client: import("@adonisjs/lucid/types/database").QueryClientContract): import("@adonisjs/lucid/types/model").ModelQueryBuilderContract<import("@adonisjs/lucid/types/model").LucidModel>;
|
|
155
160
|
$setAttribute(key: string, value: any): void;
|
|
@@ -163,19 +168,21 @@ export declare const Attachmentable: <Model extends NormalizeConstructor<typeof
|
|
|
163
168
|
$hydrateOriginals(): void;
|
|
164
169
|
fill(value: Partial<{
|
|
165
170
|
$attachments: AttributeOfModelWithAttachment;
|
|
166
|
-
}>, allowExtraProperties?: boolean): any;
|
|
171
|
+
}>, allowExtraProperties?: boolean): /*elided*/ any;
|
|
167
172
|
merge(value: Partial<{
|
|
168
173
|
$attachments: AttributeOfModelWithAttachment;
|
|
169
|
-
}>, allowExtraProperties?: boolean): any;
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
174
|
+
}>, allowExtraProperties?: boolean): /*elided*/ any;
|
|
175
|
+
isDirty(fields?: "$attachments" | ("$attachments" | undefined)[] | undefined): boolean;
|
|
176
|
+
enableForceUpdate(): /*elided*/ any;
|
|
177
|
+
save(): Promise</*elided*/ any>;
|
|
178
|
+
lockForUpdate<T_1>(callback: (user: /*elided*/ any) => T_1 | Promise<T_1>): Promise<T_1>;
|
|
173
179
|
delete(): Promise<void>;
|
|
174
|
-
refresh(): Promise
|
|
175
|
-
load: import("@adonisjs/lucid/types/model").LucidRowPreload
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
180
|
+
refresh(): Promise</*elided*/ any>;
|
|
181
|
+
load: import("@adonisjs/lucid/types/model").LucidRowPreload</*elided*/ any>;
|
|
182
|
+
loadOnce: import("@adonisjs/lucid/types/model").LucidRowPreloadOnce</*elided*/ any>;
|
|
183
|
+
preload: import("@adonisjs/lucid/types/model").LucidRowPreload</*elided*/ any>;
|
|
184
|
+
loadAggregate: <Self extends /*elided*/ any, Name extends import("@adonisjs/lucid/types/relations").ExtractModelRelations<Self>, RelatedBuilder = Self[Name] extends import("@adonisjs/lucid/types/relations").ModelRelations<import("@adonisjs/lucid/types/model").LucidModel, import("@adonisjs/lucid/types/model").LucidModel> ? Self[Name]["subQuery"] : never>(name: Name, callback: (builder: RelatedBuilder) => void) => import("@adonisjs/lucid/types/model").LazyLoadAggregatesContract<Self>;
|
|
185
|
+
loadCount: <Self extends /*elided*/ any, Name extends import("@adonisjs/lucid/types/relations").ExtractModelRelations<Self>, RelatedBuilder = Self[Name] extends import("@adonisjs/lucid/types/relations").ModelRelations<import("@adonisjs/lucid/types/model").LucidModel, import("@adonisjs/lucid/types/model").LucidModel> ? Self[Name]["subQuery"] : never>(name: Name, callback?: ((builder: RelatedBuilder) => void) | undefined) => import("@adonisjs/lucid/types/model").LazyLoadAggregatesContract<Self>;
|
|
179
186
|
serializeAttributes(fields?: import("@adonisjs/lucid/types/model").CherryPickFields, raw?: boolean): import("@adonisjs/lucid/types/model").ModelObject;
|
|
180
187
|
serializeComputed(fields?: import("@adonisjs/lucid/types/model").CherryPickFields): import("@adonisjs/lucid/types/model").ModelObject;
|
|
181
188
|
serializeRelations(fields: undefined, raw: true): {
|
|
@@ -186,7 +193,7 @@ export declare const Attachmentable: <Model extends NormalizeConstructor<typeof
|
|
|
186
193
|
serialize(cherryPick?: import("@adonisjs/lucid/types/model").CherryPick): import("@adonisjs/lucid/types/model").ModelObject;
|
|
187
194
|
toObject(): import("@adonisjs/lucid/types/model").ModelObject;
|
|
188
195
|
toJSON(): import("@adonisjs/lucid/types/model").ModelObject;
|
|
189
|
-
related<
|
|
196
|
+
related<Name extends undefined>(relation: Name): /*elided*/ any[Name] extends import("@adonisjs/lucid/types/relations").ModelRelations<import("@adonisjs/lucid/types/model").LucidModel, import("@adonisjs/lucid/types/model").LucidModel> ? /*elided*/ any[Name]["client"] : never;
|
|
190
197
|
}[]): Promise<void>;
|
|
191
198
|
beforeSaveHook(modelInstance: {
|
|
192
199
|
$attachments: AttributeOfModelWithAttachment;
|
|
@@ -208,8 +215,8 @@ export declare const Attachmentable: <Model extends NormalizeConstructor<typeof
|
|
|
208
215
|
$options?: import("@adonisjs/lucid/types/model").ModelOptions;
|
|
209
216
|
$trx?: import("@adonisjs/lucid/types/database").TransactionClientContract;
|
|
210
217
|
$setOptionsAndTrx(options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions): void;
|
|
211
|
-
useTransaction(trx: import("@adonisjs/lucid/types/database").TransactionClientContract): any;
|
|
212
|
-
useConnection(connection: string): any;
|
|
218
|
+
useTransaction(trx: import("@adonisjs/lucid/types/database").TransactionClientContract): /*elided*/ any;
|
|
219
|
+
useConnection(connection: string): /*elided*/ any;
|
|
213
220
|
$getQueryFor(action: "insert", client: import("@adonisjs/lucid/types/database").QueryClientContract): ReturnType<import("@adonisjs/lucid/types/database").QueryClientContract["insertQuery"]>;
|
|
214
221
|
$getQueryFor(action: "update" | "delete" | "refresh", client: import("@adonisjs/lucid/types/database").QueryClientContract): import("@adonisjs/lucid/types/model").ModelQueryBuilderContract<import("@adonisjs/lucid/types/model").LucidModel>;
|
|
215
222
|
$setAttribute(key: string, value: any): void;
|
|
@@ -223,19 +230,21 @@ export declare const Attachmentable: <Model extends NormalizeConstructor<typeof
|
|
|
223
230
|
$hydrateOriginals(): void;
|
|
224
231
|
fill(value: Partial<{
|
|
225
232
|
$attachments: AttributeOfModelWithAttachment;
|
|
226
|
-
}>, allowExtraProperties?: boolean): any;
|
|
233
|
+
}>, allowExtraProperties?: boolean): /*elided*/ any;
|
|
227
234
|
merge(value: Partial<{
|
|
228
235
|
$attachments: AttributeOfModelWithAttachment;
|
|
229
|
-
}>, allowExtraProperties?: boolean): any;
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
236
|
+
}>, allowExtraProperties?: boolean): /*elided*/ any;
|
|
237
|
+
isDirty(fields?: "$attachments" | ("$attachments" | undefined)[] | undefined): boolean;
|
|
238
|
+
enableForceUpdate(): /*elided*/ any;
|
|
239
|
+
save(): Promise</*elided*/ any>;
|
|
240
|
+
lockForUpdate<T_1>(callback: (user: /*elided*/ any) => T_1 | Promise<T_1>): Promise<T_1>;
|
|
233
241
|
delete(): Promise<void>;
|
|
234
|
-
refresh(): Promise
|
|
235
|
-
load: import("@adonisjs/lucid/types/model").LucidRowPreload
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
242
|
+
refresh(): Promise</*elided*/ any>;
|
|
243
|
+
load: import("@adonisjs/lucid/types/model").LucidRowPreload</*elided*/ any>;
|
|
244
|
+
loadOnce: import("@adonisjs/lucid/types/model").LucidRowPreloadOnce</*elided*/ any>;
|
|
245
|
+
preload: import("@adonisjs/lucid/types/model").LucidRowPreload</*elided*/ any>;
|
|
246
|
+
loadAggregate: <Self extends /*elided*/ any, Name extends import("@adonisjs/lucid/types/relations").ExtractModelRelations<Self>, RelatedBuilder = Self[Name] extends import("@adonisjs/lucid/types/relations").ModelRelations<import("@adonisjs/lucid/types/model").LucidModel, import("@adonisjs/lucid/types/model").LucidModel> ? Self[Name]["subQuery"] : never>(name: Name, callback: (builder: RelatedBuilder) => void) => import("@adonisjs/lucid/types/model").LazyLoadAggregatesContract<Self>;
|
|
247
|
+
loadCount: <Self extends /*elided*/ any, Name extends import("@adonisjs/lucid/types/relations").ExtractModelRelations<Self>, RelatedBuilder = Self[Name] extends import("@adonisjs/lucid/types/relations").ModelRelations<import("@adonisjs/lucid/types/model").LucidModel, import("@adonisjs/lucid/types/model").LucidModel> ? Self[Name]["subQuery"] : never>(name: Name, callback?: ((builder: RelatedBuilder) => void) | undefined) => import("@adonisjs/lucid/types/model").LazyLoadAggregatesContract<Self>;
|
|
239
248
|
serializeAttributes(fields?: import("@adonisjs/lucid/types/model").CherryPickFields, raw?: boolean): import("@adonisjs/lucid/types/model").ModelObject;
|
|
240
249
|
serializeComputed(fields?: import("@adonisjs/lucid/types/model").CherryPickFields): import("@adonisjs/lucid/types/model").ModelObject;
|
|
241
250
|
serializeRelations(fields: undefined, raw: true): {
|
|
@@ -246,7 +255,7 @@ export declare const Attachmentable: <Model extends NormalizeConstructor<typeof
|
|
|
246
255
|
serialize(cherryPick?: import("@adonisjs/lucid/types/model").CherryPick): import("@adonisjs/lucid/types/model").ModelObject;
|
|
247
256
|
toObject(): import("@adonisjs/lucid/types/model").ModelObject;
|
|
248
257
|
toJSON(): import("@adonisjs/lucid/types/model").ModelObject;
|
|
249
|
-
related<
|
|
258
|
+
related<Name extends undefined>(relation: Name): /*elided*/ any[Name] extends import("@adonisjs/lucid/types/relations").ModelRelations<import("@adonisjs/lucid/types/model").LucidModel, import("@adonisjs/lucid/types/model").LucidModel> ? /*elided*/ any[Name]["client"] : never;
|
|
250
259
|
}): Promise<void>;
|
|
251
260
|
afterSaveHook(modelInstance: {
|
|
252
261
|
$attachments: AttributeOfModelWithAttachment;
|
|
@@ -268,8 +277,8 @@ export declare const Attachmentable: <Model extends NormalizeConstructor<typeof
|
|
|
268
277
|
$options?: import("@adonisjs/lucid/types/model").ModelOptions;
|
|
269
278
|
$trx?: import("@adonisjs/lucid/types/database").TransactionClientContract;
|
|
270
279
|
$setOptionsAndTrx(options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions): void;
|
|
271
|
-
useTransaction(trx: import("@adonisjs/lucid/types/database").TransactionClientContract): any;
|
|
272
|
-
useConnection(connection: string): any;
|
|
280
|
+
useTransaction(trx: import("@adonisjs/lucid/types/database").TransactionClientContract): /*elided*/ any;
|
|
281
|
+
useConnection(connection: string): /*elided*/ any;
|
|
273
282
|
$getQueryFor(action: "insert", client: import("@adonisjs/lucid/types/database").QueryClientContract): ReturnType<import("@adonisjs/lucid/types/database").QueryClientContract["insertQuery"]>;
|
|
274
283
|
$getQueryFor(action: "update" | "delete" | "refresh", client: import("@adonisjs/lucid/types/database").QueryClientContract): import("@adonisjs/lucid/types/model").ModelQueryBuilderContract<import("@adonisjs/lucid/types/model").LucidModel>;
|
|
275
284
|
$setAttribute(key: string, value: any): void;
|
|
@@ -283,19 +292,21 @@ export declare const Attachmentable: <Model extends NormalizeConstructor<typeof
|
|
|
283
292
|
$hydrateOriginals(): void;
|
|
284
293
|
fill(value: Partial<{
|
|
285
294
|
$attachments: AttributeOfModelWithAttachment;
|
|
286
|
-
}>, allowExtraProperties?: boolean): any;
|
|
295
|
+
}>, allowExtraProperties?: boolean): /*elided*/ any;
|
|
287
296
|
merge(value: Partial<{
|
|
288
297
|
$attachments: AttributeOfModelWithAttachment;
|
|
289
|
-
}>, allowExtraProperties?: boolean): any;
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
298
|
+
}>, allowExtraProperties?: boolean): /*elided*/ any;
|
|
299
|
+
isDirty(fields?: "$attachments" | ("$attachments" | undefined)[] | undefined): boolean;
|
|
300
|
+
enableForceUpdate(): /*elided*/ any;
|
|
301
|
+
save(): Promise</*elided*/ any>;
|
|
302
|
+
lockForUpdate<T_1>(callback: (user: /*elided*/ any) => T_1 | Promise<T_1>): Promise<T_1>;
|
|
293
303
|
delete(): Promise<void>;
|
|
294
|
-
refresh(): Promise
|
|
295
|
-
load: import("@adonisjs/lucid/types/model").LucidRowPreload
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
304
|
+
refresh(): Promise</*elided*/ any>;
|
|
305
|
+
load: import("@adonisjs/lucid/types/model").LucidRowPreload</*elided*/ any>;
|
|
306
|
+
loadOnce: import("@adonisjs/lucid/types/model").LucidRowPreloadOnce</*elided*/ any>;
|
|
307
|
+
preload: import("@adonisjs/lucid/types/model").LucidRowPreload</*elided*/ any>;
|
|
308
|
+
loadAggregate: <Self extends /*elided*/ any, Name extends import("@adonisjs/lucid/types/relations").ExtractModelRelations<Self>, RelatedBuilder = Self[Name] extends import("@adonisjs/lucid/types/relations").ModelRelations<import("@adonisjs/lucid/types/model").LucidModel, import("@adonisjs/lucid/types/model").LucidModel> ? Self[Name]["subQuery"] : never>(name: Name, callback: (builder: RelatedBuilder) => void) => import("@adonisjs/lucid/types/model").LazyLoadAggregatesContract<Self>;
|
|
309
|
+
loadCount: <Self extends /*elided*/ any, Name extends import("@adonisjs/lucid/types/relations").ExtractModelRelations<Self>, RelatedBuilder = Self[Name] extends import("@adonisjs/lucid/types/relations").ModelRelations<import("@adonisjs/lucid/types/model").LucidModel, import("@adonisjs/lucid/types/model").LucidModel> ? Self[Name]["subQuery"] : never>(name: Name, callback?: ((builder: RelatedBuilder) => void) | undefined) => import("@adonisjs/lucid/types/model").LazyLoadAggregatesContract<Self>;
|
|
299
310
|
serializeAttributes(fields?: import("@adonisjs/lucid/types/model").CherryPickFields, raw?: boolean): import("@adonisjs/lucid/types/model").ModelObject;
|
|
300
311
|
serializeComputed(fields?: import("@adonisjs/lucid/types/model").CherryPickFields): import("@adonisjs/lucid/types/model").ModelObject;
|
|
301
312
|
serializeRelations(fields: undefined, raw: true): {
|
|
@@ -306,7 +317,7 @@ export declare const Attachmentable: <Model extends NormalizeConstructor<typeof
|
|
|
306
317
|
serialize(cherryPick?: import("@adonisjs/lucid/types/model").CherryPick): import("@adonisjs/lucid/types/model").ModelObject;
|
|
307
318
|
toObject(): import("@adonisjs/lucid/types/model").ModelObject;
|
|
308
319
|
toJSON(): import("@adonisjs/lucid/types/model").ModelObject;
|
|
309
|
-
related<
|
|
320
|
+
related<Name extends undefined>(relation: Name): /*elided*/ any[Name] extends import("@adonisjs/lucid/types/relations").ModelRelations<import("@adonisjs/lucid/types/model").LucidModel, import("@adonisjs/lucid/types/model").LucidModel> ? /*elided*/ any[Name]["client"] : never;
|
|
310
321
|
}): Promise<void>;
|
|
311
322
|
beforeDeleteHook(modelInstance: {
|
|
312
323
|
$attachments: AttributeOfModelWithAttachment;
|
|
@@ -328,8 +339,8 @@ export declare const Attachmentable: <Model extends NormalizeConstructor<typeof
|
|
|
328
339
|
$options?: import("@adonisjs/lucid/types/model").ModelOptions;
|
|
329
340
|
$trx?: import("@adonisjs/lucid/types/database").TransactionClientContract;
|
|
330
341
|
$setOptionsAndTrx(options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions): void;
|
|
331
|
-
useTransaction(trx: import("@adonisjs/lucid/types/database").TransactionClientContract): any;
|
|
332
|
-
useConnection(connection: string): any;
|
|
342
|
+
useTransaction(trx: import("@adonisjs/lucid/types/database").TransactionClientContract): /*elided*/ any;
|
|
343
|
+
useConnection(connection: string): /*elided*/ any;
|
|
333
344
|
$getQueryFor(action: "insert", client: import("@adonisjs/lucid/types/database").QueryClientContract): ReturnType<import("@adonisjs/lucid/types/database").QueryClientContract["insertQuery"]>;
|
|
334
345
|
$getQueryFor(action: "update" | "delete" | "refresh", client: import("@adonisjs/lucid/types/database").QueryClientContract): import("@adonisjs/lucid/types/model").ModelQueryBuilderContract<import("@adonisjs/lucid/types/model").LucidModel>;
|
|
335
346
|
$setAttribute(key: string, value: any): void;
|
|
@@ -343,19 +354,21 @@ export declare const Attachmentable: <Model extends NormalizeConstructor<typeof
|
|
|
343
354
|
$hydrateOriginals(): void;
|
|
344
355
|
fill(value: Partial<{
|
|
345
356
|
$attachments: AttributeOfModelWithAttachment;
|
|
346
|
-
}>, allowExtraProperties?: boolean): any;
|
|
357
|
+
}>, allowExtraProperties?: boolean): /*elided*/ any;
|
|
347
358
|
merge(value: Partial<{
|
|
348
359
|
$attachments: AttributeOfModelWithAttachment;
|
|
349
|
-
}>, allowExtraProperties?: boolean): any;
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
360
|
+
}>, allowExtraProperties?: boolean): /*elided*/ any;
|
|
361
|
+
isDirty(fields?: "$attachments" | ("$attachments" | undefined)[] | undefined): boolean;
|
|
362
|
+
enableForceUpdate(): /*elided*/ any;
|
|
363
|
+
save(): Promise</*elided*/ any>;
|
|
364
|
+
lockForUpdate<T_1>(callback: (user: /*elided*/ any) => T_1 | Promise<T_1>): Promise<T_1>;
|
|
353
365
|
delete(): Promise<void>;
|
|
354
|
-
refresh(): Promise
|
|
355
|
-
load: import("@adonisjs/lucid/types/model").LucidRowPreload
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
366
|
+
refresh(): Promise</*elided*/ any>;
|
|
367
|
+
load: import("@adonisjs/lucid/types/model").LucidRowPreload</*elided*/ any>;
|
|
368
|
+
loadOnce: import("@adonisjs/lucid/types/model").LucidRowPreloadOnce</*elided*/ any>;
|
|
369
|
+
preload: import("@adonisjs/lucid/types/model").LucidRowPreload</*elided*/ any>;
|
|
370
|
+
loadAggregate: <Self extends /*elided*/ any, Name extends import("@adonisjs/lucid/types/relations").ExtractModelRelations<Self>, RelatedBuilder = Self[Name] extends import("@adonisjs/lucid/types/relations").ModelRelations<import("@adonisjs/lucid/types/model").LucidModel, import("@adonisjs/lucid/types/model").LucidModel> ? Self[Name]["subQuery"] : never>(name: Name, callback: (builder: RelatedBuilder) => void) => import("@adonisjs/lucid/types/model").LazyLoadAggregatesContract<Self>;
|
|
371
|
+
loadCount: <Self extends /*elided*/ any, Name extends import("@adonisjs/lucid/types/relations").ExtractModelRelations<Self>, RelatedBuilder = Self[Name] extends import("@adonisjs/lucid/types/relations").ModelRelations<import("@adonisjs/lucid/types/model").LucidModel, import("@adonisjs/lucid/types/model").LucidModel> ? Self[Name]["subQuery"] : never>(name: Name, callback?: ((builder: RelatedBuilder) => void) | undefined) => import("@adonisjs/lucid/types/model").LazyLoadAggregatesContract<Self>;
|
|
359
372
|
serializeAttributes(fields?: import("@adonisjs/lucid/types/model").CherryPickFields, raw?: boolean): import("@adonisjs/lucid/types/model").ModelObject;
|
|
360
373
|
serializeComputed(fields?: import("@adonisjs/lucid/types/model").CherryPickFields): import("@adonisjs/lucid/types/model").ModelObject;
|
|
361
374
|
serializeRelations(fields: undefined, raw: true): {
|
|
@@ -366,9 +379,9 @@ export declare const Attachmentable: <Model extends NormalizeConstructor<typeof
|
|
|
366
379
|
serialize(cherryPick?: import("@adonisjs/lucid/types/model").CherryPick): import("@adonisjs/lucid/types/model").ModelObject;
|
|
367
380
|
toObject(): import("@adonisjs/lucid/types/model").ModelObject;
|
|
368
381
|
toJSON(): import("@adonisjs/lucid/types/model").ModelObject;
|
|
369
|
-
related<
|
|
382
|
+
related<Name extends undefined>(relation: Name): /*elided*/ any[Name] extends import("@adonisjs/lucid/types/relations").ModelRelations<import("@adonisjs/lucid/types/model").LucidModel, import("@adonisjs/lucid/types/model").LucidModel> ? /*elided*/ any[Name]["client"] : never;
|
|
370
383
|
}): Promise<void>;
|
|
371
|
-
find: <
|
|
384
|
+
find: <T_1 extends import("@adonisjs/lucid/types/model").LucidModel>(this: T_1, value: any, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions) => Promise<null | InstanceType<T_1>>;
|
|
372
385
|
readonly booted: boolean;
|
|
373
386
|
$columnsDefinitions: Map<string, import("@adonisjs/lucid/types/model").ModelColumnOptions>;
|
|
374
387
|
$relationsDefinitions: Map<string, import("@adonisjs/lucid/types/relations").RelationshipsContract>;
|
|
@@ -389,8 +402,8 @@ export declare const Attachmentable: <Model extends NormalizeConstructor<typeof
|
|
|
389
402
|
serializedToColumns: import("@adonisjs/lucid/types/model").ModelKeysContract;
|
|
390
403
|
serializedToAttributes: import("@adonisjs/lucid/types/model").ModelKeysContract;
|
|
391
404
|
};
|
|
392
|
-
$createFromAdapterResult: <
|
|
393
|
-
$createMultipleFromAdapterResult: <
|
|
405
|
+
$createFromAdapterResult: <T_1 extends import("@adonisjs/lucid/types/model").LucidModel>(this: T_1, result?: import("@adonisjs/lucid/types/model").ModelObject, sideloadAttributes?: import("@adonisjs/lucid/types/model").ModelObject, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions) => null | InstanceType<T_1>;
|
|
406
|
+
$createMultipleFromAdapterResult: <T_1 extends import("@adonisjs/lucid/types/model").LucidModel>(this: T_1, results: import("@adonisjs/lucid/types/model").ModelObject[], sideloadAttributes?: import("@adonisjs/lucid/types/model").ModelObject, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions) => InstanceType<T_1>[];
|
|
394
407
|
$addColumn: (name: string, options: Partial<import("@adonisjs/lucid/types/model").ColumnOptions>) => import("@adonisjs/lucid/types/model").ColumnOptions;
|
|
395
408
|
$hasColumn: (name: string) => boolean;
|
|
396
409
|
$getColumn: (name: string) => import("@adonisjs/lucid/types/model").ModelColumnOptions | undefined;
|
|
@@ -400,46 +413,48 @@ export declare const Attachmentable: <Model extends NormalizeConstructor<typeof
|
|
|
400
413
|
$addRelation: (name: string, type: import("@adonisjs/lucid/types/relations").ModelRelationTypes["__opaque_type"], relatedModel: () => import("@adonisjs/lucid/types/model").LucidModel, options: import("@adonisjs/lucid/types/model").ModelRelationOptions) => void;
|
|
401
414
|
$hasRelation: (name: string) => boolean;
|
|
402
415
|
$getRelation: {
|
|
403
|
-
<
|
|
404
|
-
<
|
|
416
|
+
<Model extends import("@adonisjs/lucid/types/model").LucidModel, Name extends import("@adonisjs/lucid/types/relations").ExtractModelRelations<InstanceType<Model>>>(this: Model, name: Name): InstanceType<Model>[Name] extends import("@adonisjs/lucid/types/relations").ModelRelations<import("@adonisjs/lucid/types/model").LucidModel, import("@adonisjs/lucid/types/model").LucidModel> ? InstanceType<Model>[Name]["client"]["relation"] : import("@adonisjs/lucid/types/relations").RelationshipsContract;
|
|
417
|
+
<Model extends import("@adonisjs/lucid/types/model").LucidModel>(this: Model, name: string): import("@adonisjs/lucid/types/relations").RelationshipsContract;
|
|
405
418
|
};
|
|
406
|
-
$defineProperty: <
|
|
419
|
+
$defineProperty: <Model extends import("@adonisjs/lucid/types/model").LucidModel, Prop extends keyof Model>(this: Model, propertyName: Prop, defaultValue: Model[Prop], strategy: "inherit" | "define" | ((value: Model[Prop]) => Model[Prop])) => void;
|
|
407
420
|
boot: () => void;
|
|
408
421
|
before: {
|
|
409
|
-
<
|
|
410
|
-
<
|
|
411
|
-
<
|
|
422
|
+
<Model extends import("@adonisjs/lucid/types/model").LucidModel, Event extends "find" | "fetch">(this: Model, event: Event, handler: import("@adonisjs/lucid/types/model").HooksHandler<import("@adonisjs/lucid/types/model").ModelQueryBuilderContract<Model>, Event>): void;
|
|
423
|
+
<Model extends import("@adonisjs/lucid/types/model").LucidModel>(this: Model, event: "paginate", handler: import("@adonisjs/lucid/types/model").HooksHandler<[import("@adonisjs/lucid/types/model").ModelQueryBuilderContract<Model>, import("@adonisjs/lucid/types/model").ModelQueryBuilderContract<Model>], "paginate">): void;
|
|
424
|
+
<Model extends import("@adonisjs/lucid/types/model").LucidModel, Event extends import("@adonisjs/lucid/types/model").EventsList>(this: Model, event: Event, handler: import("@adonisjs/lucid/types/model").HooksHandler<InstanceType<Model>, Event>): void;
|
|
412
425
|
};
|
|
413
426
|
after: {
|
|
414
|
-
<
|
|
415
|
-
<
|
|
416
|
-
<
|
|
427
|
+
<Model extends import("@adonisjs/lucid/types/model").LucidModel>(this: Model, event: "fetch", handler: import("@adonisjs/lucid/types/model").HooksHandler<InstanceType<Model>[], "fetch">): void;
|
|
428
|
+
<Model extends import("@adonisjs/lucid/types/model").LucidModel>(this: Model, event: "paginate", handler: import("@adonisjs/lucid/types/model").HooksHandler<import("@adonisjs/lucid/types/model").ModelPaginatorContract<InstanceType<Model>>, "paginate">): void;
|
|
429
|
+
<Model extends import("@adonisjs/lucid/types/model").LucidModel, Event extends import("@adonisjs/lucid/types/model").EventsList>(this: Model, event: Event, handler: import("@adonisjs/lucid/types/model").HooksHandler<InstanceType<Model>, Event>): void;
|
|
417
430
|
};
|
|
418
|
-
create: <
|
|
419
|
-
createMany: <
|
|
420
|
-
findOrFail: <
|
|
431
|
+
create: <T_1 extends import("@adonisjs/lucid/types/model").LucidModel>(this: T_1, values: Partial<import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T_1>>>, options?: import("@adonisjs/lucid/types/model").ModelAssignOptions) => Promise<InstanceType<T_1>>;
|
|
432
|
+
createMany: <T_1 extends import("@adonisjs/lucid/types/model").LucidModel>(this: T_1, values: Partial<import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T_1>>>[], options?: import("@adonisjs/lucid/types/model").ModelAssignOptions) => Promise<InstanceType<T_1>[]>;
|
|
433
|
+
findOrFail: <T_1 extends import("@adonisjs/lucid/types/model").LucidModel>(this: T_1, value: any, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions) => Promise<InstanceType<T_1>>;
|
|
421
434
|
findBy: {
|
|
422
|
-
<
|
|
423
|
-
<
|
|
435
|
+
<T_1 extends import("@adonisjs/lucid/types/model").LucidModel>(this: T_1, clause: Record<string, unknown>, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions): Promise<null | InstanceType<T_1>>;
|
|
436
|
+
<T_1 extends import("@adonisjs/lucid/types/model").LucidModel>(this: T_1, key: string, value: any, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions): Promise<null | InstanceType<T_1>>;
|
|
424
437
|
};
|
|
425
438
|
findByOrFail: {
|
|
426
|
-
<
|
|
427
|
-
<
|
|
439
|
+
<T_1 extends import("@adonisjs/lucid/types/model").LucidModel>(this: T_1, clause: Record<string, unknown>, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions): Promise<InstanceType<T_1>>;
|
|
440
|
+
<T_1 extends import("@adonisjs/lucid/types/model").LucidModel>(this: T_1, key: string, value: any, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions): Promise<InstanceType<T_1>>;
|
|
428
441
|
};
|
|
429
442
|
findManyBy: {
|
|
430
|
-
<
|
|
431
|
-
<
|
|
443
|
+
<T_1 extends import("@adonisjs/lucid/types/model").LucidModel>(this: T_1, clause: Record<string, unknown>, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions): Promise<InstanceType<T_1>[]>;
|
|
444
|
+
<T_1 extends import("@adonisjs/lucid/types/model").LucidModel>(this: T_1, key: string, value: any, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions): Promise<InstanceType<T_1>[]>;
|
|
432
445
|
};
|
|
433
|
-
first: <
|
|
434
|
-
firstOrFail: <
|
|
435
|
-
findMany: <
|
|
436
|
-
firstOrNew: <
|
|
437
|
-
firstOrCreate: <
|
|
438
|
-
updateOrCreate: <
|
|
439
|
-
fetchOrNewUpMany: <
|
|
440
|
-
fetchOrCreateMany: <
|
|
441
|
-
updateOrCreateMany: <
|
|
442
|
-
all: <
|
|
443
|
-
query: <
|
|
446
|
+
first: <T_1 extends import("@adonisjs/lucid/types/model").LucidModel>(this: T_1, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions) => Promise<null | InstanceType<T_1>>;
|
|
447
|
+
firstOrFail: <T_1 extends import("@adonisjs/lucid/types/model").LucidModel>(this: T_1, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions) => Promise<InstanceType<T_1>>;
|
|
448
|
+
findMany: <T_1 extends import("@adonisjs/lucid/types/model").LucidModel>(this: T_1, value: any[], options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions) => Promise<InstanceType<T_1>[]>;
|
|
449
|
+
firstOrNew: <T_1 extends import("@adonisjs/lucid/types/model").LucidModel>(this: T_1, searchPayload: Partial<import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T_1>>>, savePayload?: Partial<import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T_1>>>, options?: import("@adonisjs/lucid/types/model").ModelAssignOptions) => Promise<InstanceType<T_1>>;
|
|
450
|
+
firstOrCreate: <T_1 extends import("@adonisjs/lucid/types/model").LucidModel>(this: T_1, searchPayload: Partial<import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T_1>>>, savePayload?: Partial<import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T_1>>>, options?: import("@adonisjs/lucid/types/model").ModelAssignOptions) => Promise<InstanceType<T_1>>;
|
|
451
|
+
updateOrCreate: <T_1 extends import("@adonisjs/lucid/types/model").LucidModel>(this: T_1, searchPayload: Partial<import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T_1>>>, updatePayload: Partial<import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T_1>>>, options?: import("@adonisjs/lucid/types/model").ModelAssignOptions) => Promise<InstanceType<T_1>>;
|
|
452
|
+
fetchOrNewUpMany: <T_1 extends import("@adonisjs/lucid/types/model").LucidModel>(this: T_1, predicate: keyof import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T_1>> | (keyof import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T_1>>)[], payload: Partial<import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T_1>>>[], options?: import("@adonisjs/lucid/types/model").ModelAssignOptions) => Promise<InstanceType<T_1>[]>;
|
|
453
|
+
fetchOrCreateMany: <T_1 extends import("@adonisjs/lucid/types/model").LucidModel>(this: T_1, predicate: keyof import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T_1>> | (keyof import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T_1>>)[], payload: Partial<import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T_1>>>[], options?: import("@adonisjs/lucid/types/model").ModelAssignOptions) => Promise<InstanceType<T_1>[]>;
|
|
454
|
+
updateOrCreateMany: <T_1 extends import("@adonisjs/lucid/types/model").LucidModel>(this: T_1, predicate: keyof import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T_1>> | (keyof import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T_1>>)[], payload: Partial<import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T_1>>>[], options?: import("@adonisjs/lucid/types/model").ModelAssignOptions) => Promise<InstanceType<T_1>[]>;
|
|
455
|
+
all: <T_1 extends import("@adonisjs/lucid/types/model").LucidModel>(this: T_1, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions) => Promise<InstanceType<T_1>[]>;
|
|
456
|
+
query: <Model extends import("@adonisjs/lucid/types/model").LucidModel, Result = InstanceType<Model>>(this: Model, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions) => import("@adonisjs/lucid/types/model").ModelQueryBuilderContract<Model, Result>;
|
|
457
|
+
transaction: import("@adonisjs/lucid/types/database").TransactionFn;
|
|
444
458
|
truncate: (cascade?: boolean) => Promise<void>;
|
|
445
|
-
} &
|
|
459
|
+
} & T;
|
|
460
|
+
export {};
|
|
@@ -14,7 +14,7 @@ import { beforeSave, afterSave, beforeDelete, afterFind, afterFetch, afterPagina
|
|
|
14
14
|
import { persistAttachment, commit, rollback, generateVariants, preComputeUrl, } from '../utils/actions.js';
|
|
15
15
|
import { clone, getAttachmentAttributeNames, getDirtyAttachmentAttributeNames, } from '../utils/helpers.js';
|
|
16
16
|
import { defaultStateAttributeMixin } from '../utils/default_values.js';
|
|
17
|
-
export
|
|
17
|
+
export function Attachmentable(superclass) {
|
|
18
18
|
class ModelWithAttachment extends superclass {
|
|
19
19
|
$attachments = clone(defaultStateAttributeMixin);
|
|
20
20
|
static async afterFindHook(modelInstance) {
|
|
@@ -107,4 +107,4 @@ export const Attachmentable = (superclass) => {
|
|
|
107
107
|
beforeDelete()
|
|
108
108
|
], ModelWithAttachment, "beforeDeleteHook", null);
|
|
109
109
|
return ModelWithAttachment;
|
|
110
|
-
}
|
|
110
|
+
}
|
|
@@ -8,6 +8,7 @@ import type { DriveService } from '@adonisjs/drive/types';
|
|
|
8
8
|
import type { Exif, Input } from './input.js';
|
|
9
9
|
import type { Disk } from '@adonisjs/drive';
|
|
10
10
|
import type { SignedURLOptions } from '@adonisjs/drive/types';
|
|
11
|
+
import type { AttachmentVariants } from '@jrmc/adonis-attachment';
|
|
11
12
|
export type AttachmentBase = {
|
|
12
13
|
drive: DriveService;
|
|
13
14
|
input?: Input;
|
|
@@ -46,7 +47,7 @@ export type LucidOptions = {
|
|
|
46
47
|
disk?: string;
|
|
47
48
|
folder?: string;
|
|
48
49
|
preComputeUrl?: boolean;
|
|
49
|
-
variants?:
|
|
50
|
+
variants?: (keyof AttachmentVariants)[];
|
|
50
51
|
rename?: boolean;
|
|
51
52
|
meta?: boolean;
|
|
52
53
|
};
|
|
@@ -4,42 +4,45 @@
|
|
|
4
4
|
* @license MIT
|
|
5
5
|
* @copyright Jeremy Chaufourier <jeremy@chaufourier.fr>
|
|
6
6
|
*/
|
|
7
|
+
import { ConfigProvider } from '@adonisjs/core/types';
|
|
7
8
|
import type { Converter, ConverterOptions } from './converter.js';
|
|
9
|
+
import { AttachmentManager } from '../attachment_manager.js';
|
|
8
10
|
type ImportConverter = {
|
|
9
11
|
default: unknown;
|
|
10
12
|
};
|
|
11
|
-
|
|
12
|
-
key: string;
|
|
13
|
+
export interface ConverterConfig {
|
|
13
14
|
converter: () => Promise<ImportConverter>;
|
|
14
15
|
options?: ConverterOptions;
|
|
15
|
-
}
|
|
16
|
-
|
|
16
|
+
}
|
|
17
|
+
export interface Queue {
|
|
17
18
|
concurrency: number;
|
|
18
|
-
}
|
|
19
|
+
}
|
|
19
20
|
export type BinPaths = {
|
|
20
21
|
ffmpegPath?: string;
|
|
21
22
|
ffprobePath?: string;
|
|
22
23
|
pdftocairoBasePath?: string;
|
|
23
24
|
libreofficePaths?: Array<string>;
|
|
24
25
|
};
|
|
25
|
-
export type AttachmentConfig = {
|
|
26
|
-
bin?: BinPaths;
|
|
27
|
-
meta?: boolean;
|
|
28
|
-
rename?: boolean;
|
|
29
|
-
preComputeUrl?: boolean;
|
|
30
|
-
converters?: ConverterConfig[];
|
|
31
|
-
queue?: Queue;
|
|
32
|
-
};
|
|
33
|
-
export type ResolvedConverter = {
|
|
34
|
-
key: string;
|
|
35
|
-
converter: Converter;
|
|
36
|
-
};
|
|
37
|
-
export type ResolvedAttachmentConfig = {
|
|
26
|
+
export type AttachmentConfig<KnownConverter extends Record<string, ConverterConfig>> = {
|
|
38
27
|
bin?: BinPaths;
|
|
39
28
|
meta?: boolean;
|
|
40
29
|
rename?: boolean;
|
|
41
30
|
preComputeUrl?: boolean;
|
|
42
|
-
converters?:
|
|
31
|
+
converters?: {
|
|
32
|
+
[K in keyof KnownConverter]: KnownConverter[K];
|
|
33
|
+
};
|
|
43
34
|
queue?: Queue;
|
|
44
35
|
};
|
|
36
|
+
export interface AttachmentVariants {
|
|
37
|
+
}
|
|
38
|
+
export type InferConverters<Config extends ConfigProvider<{
|
|
39
|
+
bin?: unknown;
|
|
40
|
+
meta?: unknown;
|
|
41
|
+
rename?: unknown;
|
|
42
|
+
preComputeUrl?: unknown;
|
|
43
|
+
converters?: unknown;
|
|
44
|
+
queue?: unknown;
|
|
45
|
+
}>> = Exclude<Awaited<ReturnType<Config['resolver']>>['converters'], undefined>;
|
|
46
|
+
export interface AttachmentService extends AttachmentManager<AttachmentVariants extends Record<string, Converter> ? AttachmentVariants : never> {
|
|
47
|
+
}
|
|
45
48
|
export {};
|