@multiplayer-app/ai-agent-mongo 0.1.0-beta.70 → 0.1.0-beta.72
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/cjs/index.cjs +5 -1
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs/index.d.ts +2 -0
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/repositories/MongoTenantAICredentialRepository.cjs +129 -0
- package/dist/cjs/repositories/MongoTenantAICredentialRepository.cjs.map +1 -0
- package/dist/cjs/repositories/MongoTenantAICredentialRepository.d.ts +25 -0
- package/dist/cjs/repositories/MongoTenantAICredentialRepository.d.ts.map +1 -0
- package/dist/cjs/repositories/index.cjs +1 -0
- package/dist/cjs/repositories/index.cjs.map +1 -1
- package/dist/cjs/repositories/index.d.ts +1 -0
- package/dist/cjs/repositories/index.d.ts.map +1 -1
- package/dist/cjs/schemas/TenantAICredentialSchema.cjs +17 -0
- package/dist/cjs/schemas/TenantAICredentialSchema.cjs.map +1 -0
- package/dist/cjs/schemas/TenantAICredentialSchema.d.ts +20 -0
- package/dist/cjs/schemas/TenantAICredentialSchema.d.ts.map +1 -0
- package/dist/cjs/schemas/index.cjs +1 -0
- package/dist/cjs/schemas/index.cjs.map +1 -1
- package/dist/cjs/schemas/index.d.ts +1 -0
- package/dist/cjs/schemas/index.d.ts.map +1 -1
- package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/esm/index.d.ts +2 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +2 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/repositories/MongoTenantAICredentialRepository.d.ts +25 -0
- package/dist/esm/repositories/MongoTenantAICredentialRepository.d.ts.map +1 -0
- package/dist/esm/repositories/MongoTenantAICredentialRepository.js +125 -0
- package/dist/esm/repositories/MongoTenantAICredentialRepository.js.map +1 -0
- package/dist/esm/repositories/index.d.ts +1 -0
- package/dist/esm/repositories/index.d.ts.map +1 -1
- package/dist/esm/repositories/index.js +1 -0
- package/dist/esm/repositories/index.js.map +1 -1
- package/dist/esm/schemas/TenantAICredentialSchema.d.ts +20 -0
- package/dist/esm/schemas/TenantAICredentialSchema.d.ts.map +1 -0
- package/dist/esm/schemas/TenantAICredentialSchema.js +14 -0
- package/dist/esm/schemas/TenantAICredentialSchema.js.map +1 -0
- package/dist/esm/schemas/index.d.ts +1 -0
- package/dist/esm/schemas/index.d.ts.map +1 -1
- package/dist/esm/schemas/index.js +1 -0
- package/dist/esm/schemas/index.js.map +1 -1
- package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
- package/package.json +3 -3
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { TenantAICredential, AIProvider } from '@multiplayer-app/ai-agent-types';
|
|
2
|
+
import type { TenantAICredentialRepository } from '@multiplayer-app/ai-agent-db';
|
|
3
|
+
import { SortOrder } from '@multiplayer-app/ai-agent-types';
|
|
4
|
+
export declare class MongoTenantAICredentialRepository implements TenantAICredentialRepository {
|
|
5
|
+
findById(id: string): Promise<TenantAICredential | null>;
|
|
6
|
+
find(filter?: Partial<TenantAICredential>, options?: {
|
|
7
|
+
sort?: {
|
|
8
|
+
field: string;
|
|
9
|
+
order: SortOrder;
|
|
10
|
+
};
|
|
11
|
+
skip?: number;
|
|
12
|
+
limit?: number;
|
|
13
|
+
}): Promise<TenantAICredential[]>;
|
|
14
|
+
findOne(filter: Partial<TenantAICredential>): Promise<TenantAICredential | null>;
|
|
15
|
+
create(entity: Omit<TenantAICredential, 'id' | 'createdAt' | 'updatedAt'>): Promise<TenantAICredential>;
|
|
16
|
+
update(id: string, updates: Partial<Omit<TenantAICredential, 'id' | 'createdAt'>>): Promise<TenantAICredential | null>;
|
|
17
|
+
delete(id: string): Promise<boolean>;
|
|
18
|
+
exists(id: string): Promise<boolean>;
|
|
19
|
+
count(filter?: Partial<TenantAICredential>): Promise<number>;
|
|
20
|
+
findByTenantKey(tenantKey: string): Promise<TenantAICredential[]>;
|
|
21
|
+
findByTenantKeyAndProvider(tenantKey: string, provider: AIProvider): Promise<TenantAICredential | null>;
|
|
22
|
+
upsertByTenantKeyAndProvider(tenantKey: string, tenants: Record<string, string>, provider: AIProvider, encryptedApiKey: string, baseUrl?: string): Promise<TenantAICredential>;
|
|
23
|
+
deleteByTenantKeyAndProvider(tenantKey: string, provider: AIProvider): Promise<boolean>;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=MongoTenantAICredentialRepository.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MongoTenantAICredentialRepository.d.ts","sourceRoot":"","sources":["../../../src/repositories/MongoTenantAICredentialRepository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AACtF,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,8BAA8B,CAAC;AACjF,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AA4B5D,qBAAa,iCAAkC,YAAW,4BAA4B;IAC9E,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAKxD,IAAI,CACR,MAAM,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,EACpC,OAAO,CAAC,EAAE;QACR,IAAI,CAAC,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,SAAS,CAAA;SAAE,CAAC;QAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GACA,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAqB1B,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAUhF,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,kBAAkB,EAAE,IAAI,GAAG,WAAW,GAAG,WAAW,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAQvG,MAAM,CACV,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,GAAG,WAAW,CAAC,CAAC,GAC7D,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAS/B,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAKpC,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAKpC,KAAK,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAU5D,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAKjE,0BAA0B,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAKvG,4BAA4B,CAChC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,QAAQ,EAAE,UAAU,EACpB,eAAe,EAAE,MAAM,EACvB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,kBAAkB,CAAC;IAwBxB,4BAA4B,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC;CAI9F"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import { SortOrder } from '@multiplayer-app/ai-agent-types';
|
|
2
|
+
import { TenantAICredentialModel, } from '../schemas/TenantAICredentialSchema';
|
|
3
|
+
function toTenantAICredential(doc) {
|
|
4
|
+
if (!doc)
|
|
5
|
+
return null;
|
|
6
|
+
const value = doc.toObject ? doc.toObject() : doc;
|
|
7
|
+
const tenantsValue = value.tenants;
|
|
8
|
+
const tenants = tenantsValue instanceof Map
|
|
9
|
+
? Object.fromEntries(tenantsValue.entries())
|
|
10
|
+
: (tenantsValue ?? {});
|
|
11
|
+
return {
|
|
12
|
+
id: doc._id.toString(),
|
|
13
|
+
tenantKey: value.tenantKey,
|
|
14
|
+
tenants,
|
|
15
|
+
provider: value.provider,
|
|
16
|
+
encryptedApiKey: value.encryptedApiKey,
|
|
17
|
+
baseUrl: value.baseUrl,
|
|
18
|
+
createdAt: value.createdAt?.toISOString?.() ?? value.createdAt,
|
|
19
|
+
updatedAt: value.updatedAt?.toISOString?.() ?? value.updatedAt,
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
export class MongoTenantAICredentialRepository {
|
|
23
|
+
async findById(id) {
|
|
24
|
+
const doc = await TenantAICredentialModel.findById(id).exec();
|
|
25
|
+
return toTenantAICredential(doc);
|
|
26
|
+
}
|
|
27
|
+
async find(filter, options) {
|
|
28
|
+
const query = {};
|
|
29
|
+
if (filter) {
|
|
30
|
+
if (filter.id)
|
|
31
|
+
query._id = filter.id;
|
|
32
|
+
if (filter.tenantKey !== undefined)
|
|
33
|
+
query.tenantKey = filter.tenantKey;
|
|
34
|
+
if (filter.provider !== undefined)
|
|
35
|
+
query.provider = filter.provider;
|
|
36
|
+
}
|
|
37
|
+
let qb = TenantAICredentialModel.find(query);
|
|
38
|
+
if (options?.sort) {
|
|
39
|
+
const sortField = options.sort.field === 'id' ? '_id' : options.sort.field;
|
|
40
|
+
const sortOrder = options.sort.order === SortOrder.Asc ? 1 : -1;
|
|
41
|
+
qb = qb.sort({ [sortField]: sortOrder });
|
|
42
|
+
}
|
|
43
|
+
if (options?.skip)
|
|
44
|
+
qb = qb.skip(options.skip);
|
|
45
|
+
if (options?.limit)
|
|
46
|
+
qb = qb.limit(options.limit);
|
|
47
|
+
const docs = await qb.exec();
|
|
48
|
+
return docs.map((doc) => toTenantAICredential(doc)).filter(Boolean);
|
|
49
|
+
}
|
|
50
|
+
async findOne(filter) {
|
|
51
|
+
const query = {};
|
|
52
|
+
if (filter.id)
|
|
53
|
+
query._id = filter.id;
|
|
54
|
+
if (filter.tenantKey !== undefined)
|
|
55
|
+
query.tenantKey = filter.tenantKey;
|
|
56
|
+
if (filter.provider !== undefined)
|
|
57
|
+
query.provider = filter.provider;
|
|
58
|
+
const doc = await TenantAICredentialModel.findOne(query).exec();
|
|
59
|
+
return toTenantAICredential(doc);
|
|
60
|
+
}
|
|
61
|
+
async create(entity) {
|
|
62
|
+
const doc = new TenantAICredentialModel(entity);
|
|
63
|
+
const saved = await doc.save();
|
|
64
|
+
const result = toTenantAICredential(saved);
|
|
65
|
+
if (!result)
|
|
66
|
+
throw new Error('Failed to create tenant AI credential');
|
|
67
|
+
return result;
|
|
68
|
+
}
|
|
69
|
+
async update(id, updates) {
|
|
70
|
+
const doc = await TenantAICredentialModel.findByIdAndUpdate(id, { $set: updates }, { new: true, runValidators: true }).exec();
|
|
71
|
+
return toTenantAICredential(doc);
|
|
72
|
+
}
|
|
73
|
+
async delete(id) {
|
|
74
|
+
const result = await TenantAICredentialModel.findByIdAndDelete(id).exec();
|
|
75
|
+
return !!result;
|
|
76
|
+
}
|
|
77
|
+
async exists(id) {
|
|
78
|
+
const count = await TenantAICredentialModel.countDocuments({ _id: id }).exec();
|
|
79
|
+
return count > 0;
|
|
80
|
+
}
|
|
81
|
+
async count(filter) {
|
|
82
|
+
const query = {};
|
|
83
|
+
if (filter) {
|
|
84
|
+
if (filter.id)
|
|
85
|
+
query._id = filter.id;
|
|
86
|
+
if (filter.tenantKey !== undefined)
|
|
87
|
+
query.tenantKey = filter.tenantKey;
|
|
88
|
+
if (filter.provider !== undefined)
|
|
89
|
+
query.provider = filter.provider;
|
|
90
|
+
}
|
|
91
|
+
return TenantAICredentialModel.countDocuments(query).exec();
|
|
92
|
+
}
|
|
93
|
+
async findByTenantKey(tenantKey) {
|
|
94
|
+
const docs = await TenantAICredentialModel.find({ tenantKey }).exec();
|
|
95
|
+
return docs.map((doc) => toTenantAICredential(doc)).filter(Boolean);
|
|
96
|
+
}
|
|
97
|
+
async findByTenantKeyAndProvider(tenantKey, provider) {
|
|
98
|
+
const doc = await TenantAICredentialModel.findOne({ tenantKey, provider }).exec();
|
|
99
|
+
return toTenantAICredential(doc);
|
|
100
|
+
}
|
|
101
|
+
async upsertByTenantKeyAndProvider(tenantKey, tenants, provider, encryptedApiKey, baseUrl) {
|
|
102
|
+
const doc = await TenantAICredentialModel.findOneAndUpdate({ tenantKey, provider }, {
|
|
103
|
+
$set: {
|
|
104
|
+
tenantKey,
|
|
105
|
+
tenants,
|
|
106
|
+
provider,
|
|
107
|
+
encryptedApiKey,
|
|
108
|
+
baseUrl,
|
|
109
|
+
},
|
|
110
|
+
}, {
|
|
111
|
+
new: true,
|
|
112
|
+
upsert: true,
|
|
113
|
+
runValidators: true,
|
|
114
|
+
}).exec();
|
|
115
|
+
const result = toTenantAICredential(doc);
|
|
116
|
+
if (!result)
|
|
117
|
+
throw new Error('Failed to upsert tenant AI credential');
|
|
118
|
+
return result;
|
|
119
|
+
}
|
|
120
|
+
async deleteByTenantKeyAndProvider(tenantKey, provider) {
|
|
121
|
+
const result = await TenantAICredentialModel.findOneAndDelete({ tenantKey, provider }).exec();
|
|
122
|
+
return !!result;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
//# sourceMappingURL=MongoTenantAICredentialRepository.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MongoTenantAICredentialRepository.js","sourceRoot":"","sources":["../../../src/repositories/MongoTenantAICredentialRepository.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,4 +2,5 @@ export * from './MongoAgentChatRepository';
|
|
|
2
2
|
export * from './MongoAgentMessageRepository';
|
|
3
3
|
export * from './MongoActivityRepository';
|
|
4
4
|
export * from './MongoAgentConfigRepository';
|
|
5
|
+
export * from './MongoTenantAICredentialRepository';
|
|
5
6
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/repositories/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/repositories/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,qCAAqC,CAAC"}
|
|
@@ -2,4 +2,5 @@ export * from './MongoAgentChatRepository';
|
|
|
2
2
|
export * from './MongoAgentMessageRepository';
|
|
3
3
|
export * from './MongoActivityRepository';
|
|
4
4
|
export * from './MongoAgentConfigRepository';
|
|
5
|
+
export * from './MongoTenantAICredentialRepository';
|
|
5
6
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/repositories/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/repositories/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,qCAAqC,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { ObjectId, type Document } from '../mongo';
|
|
2
|
+
import type { TenantAICredential } from '@multiplayer-app/ai-agent-types';
|
|
3
|
+
export interface TenantAICredentialDocument extends Omit<TenantAICredential, 'id'>, Document {
|
|
4
|
+
_id: ObjectId;
|
|
5
|
+
}
|
|
6
|
+
export declare const TenantAICredentialSchema: import("mongoose").Schema<TenantAICredentialDocument, import("mongoose").Model<TenantAICredentialDocument, any, any, any, Document<unknown, any, TenantAICredentialDocument, any, {}> & TenantAICredentialDocument & Required<{
|
|
7
|
+
_id: import("mongoose").Types.ObjectId;
|
|
8
|
+
}> & {
|
|
9
|
+
__v: number;
|
|
10
|
+
}, any>, {}, {}, {}, {}, import("mongoose").DefaultSchemaOptions, TenantAICredentialDocument, Document<unknown, {}, import("mongoose").FlatRecord<TenantAICredentialDocument>, {}, import("mongoose").ResolveSchemaOptions<import("mongoose").DefaultSchemaOptions>> & import("mongoose").FlatRecord<TenantAICredentialDocument> & Required<{
|
|
11
|
+
_id: import("mongoose").Types.ObjectId;
|
|
12
|
+
}> & {
|
|
13
|
+
__v: number;
|
|
14
|
+
}>;
|
|
15
|
+
export declare const TenantAICredentialModel: import("mongoose").Model<TenantAICredentialDocument, {}, {}, {}, Document<unknown, {}, TenantAICredentialDocument, {}, {}> & TenantAICredentialDocument & Required<{
|
|
16
|
+
_id: import("mongoose").Types.ObjectId;
|
|
17
|
+
}> & {
|
|
18
|
+
__v: number;
|
|
19
|
+
}, any>;
|
|
20
|
+
//# sourceMappingURL=TenantAICredentialSchema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TenantAICredentialSchema.d.ts","sourceRoot":"","sources":["../../../src/schemas/TenantAICredentialSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,QAAQ,EAAU,KAAK,QAAQ,EAAE,MAAM,UAAU,CAAC;AACrE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAE1E,MAAM,WAAW,0BAA2B,SAAQ,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,EAAE,QAAQ;IAC1F,GAAG,EAAE,QAAQ,CAAC;CACf;AAED,eAAO,MAAM,wBAAwB;;;;;;;;EASnC,CAAC;AAIH,eAAO,MAAM,uBAAuB;;;;OAGnC,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { mongoose, Schema } from '../mongo';
|
|
2
|
+
export const TenantAICredentialSchema = new Schema({
|
|
3
|
+
tenantKey: { type: String, required: true },
|
|
4
|
+
tenants: { type: Map, of: String, required: true, default: {} },
|
|
5
|
+
provider: { type: String, required: true },
|
|
6
|
+
encryptedApiKey: { type: String, required: true },
|
|
7
|
+
baseUrl: { type: String, required: false },
|
|
8
|
+
}, {
|
|
9
|
+
timestamps: true,
|
|
10
|
+
_id: true,
|
|
11
|
+
});
|
|
12
|
+
TenantAICredentialSchema.index({ tenantKey: 1, provider: 1 }, { unique: true });
|
|
13
|
+
export const TenantAICredentialModel = mongoose.model('TenantAICredential', TenantAICredentialSchema);
|
|
14
|
+
//# sourceMappingURL=TenantAICredentialSchema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TenantAICredentialSchema.js","sourceRoot":"","sources":["../../../src/schemas/TenantAICredentialSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAY,MAAM,EAAiB,MAAM,UAAU,CAAC;AAOrE,MAAM,CAAC,MAAM,wBAAwB,GAAG,IAAI,MAAM,CAA6B;IAC7E,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;IAC3C,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE;IAC/D,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;IAC1C,eAAe,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;IACjD,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE;CAC3C,EAAE;IACD,UAAU,EAAE,IAAI;IAChB,GAAG,EAAE,IAAI;CACV,CAAC,CAAC;AAEH,wBAAwB,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;AAEhF,MAAM,CAAC,MAAM,uBAAuB,GAAG,QAAQ,CAAC,KAAK,CACnD,oBAAoB,EACpB,wBAAwB,CACzB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/schemas/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,+BAA+B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/schemas/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,4BAA4B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/schemas/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,+BAA+B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/schemas/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,4BAA4B,CAAC"}
|