@conduitplatform/grpc-sdk 0.16.14 → 0.16.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +221 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.esm.js +219 -1
- package/dist/index.esm.js.map +1 -1
- package/dist/modules/authentication/index.d.ts +3 -1
- package/dist/protoUtils/authentication.d.ts +80 -0
- package/package.json +5 -5
package/dist/index.esm.js
CHANGED
|
@@ -299,6 +299,86 @@ const UserCreateRequest = {
|
|
|
299
299
|
return message;
|
|
300
300
|
},
|
|
301
301
|
};
|
|
302
|
+
function createBaseUserCreateByUsernameRequest() {
|
|
303
|
+
return { username: "", password: undefined, anonymousId: undefined };
|
|
304
|
+
}
|
|
305
|
+
const UserCreateByUsernameRequest = {
|
|
306
|
+
encode(message, writer = _m0.Writer.create()) {
|
|
307
|
+
if (message.username !== "") {
|
|
308
|
+
writer.uint32(10).string(message.username);
|
|
309
|
+
}
|
|
310
|
+
if (message.password !== undefined) {
|
|
311
|
+
writer.uint32(18).string(message.password);
|
|
312
|
+
}
|
|
313
|
+
if (message.anonymousId !== undefined) {
|
|
314
|
+
writer.uint32(26).string(message.anonymousId);
|
|
315
|
+
}
|
|
316
|
+
return writer;
|
|
317
|
+
},
|
|
318
|
+
decode(input, length) {
|
|
319
|
+
const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
|
|
320
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
|
321
|
+
const message = createBaseUserCreateByUsernameRequest();
|
|
322
|
+
while (reader.pos < end) {
|
|
323
|
+
const tag = reader.uint32();
|
|
324
|
+
switch (tag >>> 3) {
|
|
325
|
+
case 1:
|
|
326
|
+
if (tag !== 10) {
|
|
327
|
+
break;
|
|
328
|
+
}
|
|
329
|
+
message.username = reader.string();
|
|
330
|
+
continue;
|
|
331
|
+
case 2:
|
|
332
|
+
if (tag !== 18) {
|
|
333
|
+
break;
|
|
334
|
+
}
|
|
335
|
+
message.password = reader.string();
|
|
336
|
+
continue;
|
|
337
|
+
case 3:
|
|
338
|
+
if (tag !== 26) {
|
|
339
|
+
break;
|
|
340
|
+
}
|
|
341
|
+
message.anonymousId = reader.string();
|
|
342
|
+
continue;
|
|
343
|
+
}
|
|
344
|
+
if ((tag & 7) === 4 || tag === 0) {
|
|
345
|
+
break;
|
|
346
|
+
}
|
|
347
|
+
reader.skipType(tag & 7);
|
|
348
|
+
}
|
|
349
|
+
return message;
|
|
350
|
+
},
|
|
351
|
+
fromJSON(object) {
|
|
352
|
+
return {
|
|
353
|
+
username: isSet$b(object.username) ? globalThis.String(object.username) : "",
|
|
354
|
+
password: isSet$b(object.password) ? globalThis.String(object.password) : undefined,
|
|
355
|
+
anonymousId: isSet$b(object.anonymousId) ? globalThis.String(object.anonymousId) : undefined,
|
|
356
|
+
};
|
|
357
|
+
},
|
|
358
|
+
toJSON(message) {
|
|
359
|
+
const obj = {};
|
|
360
|
+
if (message.username !== "") {
|
|
361
|
+
obj.username = message.username;
|
|
362
|
+
}
|
|
363
|
+
if (message.password !== undefined) {
|
|
364
|
+
obj.password = message.password;
|
|
365
|
+
}
|
|
366
|
+
if (message.anonymousId !== undefined) {
|
|
367
|
+
obj.anonymousId = message.anonymousId;
|
|
368
|
+
}
|
|
369
|
+
return obj;
|
|
370
|
+
},
|
|
371
|
+
create(base) {
|
|
372
|
+
return UserCreateByUsernameRequest.fromPartial(base ?? {});
|
|
373
|
+
},
|
|
374
|
+
fromPartial(object) {
|
|
375
|
+
const message = createBaseUserCreateByUsernameRequest();
|
|
376
|
+
message.username = object.username ?? "";
|
|
377
|
+
message.password = object.password ?? undefined;
|
|
378
|
+
message.anonymousId = object.anonymousId ?? undefined;
|
|
379
|
+
return message;
|
|
380
|
+
},
|
|
381
|
+
};
|
|
302
382
|
function createBaseUserChangePass() {
|
|
303
383
|
return { email: "", password: undefined };
|
|
304
384
|
}
|
|
@@ -1271,6 +1351,122 @@ const UserModifyStatusResponse = {
|
|
|
1271
1351
|
return message;
|
|
1272
1352
|
},
|
|
1273
1353
|
};
|
|
1354
|
+
function createBaseInvitationDeleteRequest() {
|
|
1355
|
+
return { teamId: "", email: "" };
|
|
1356
|
+
}
|
|
1357
|
+
const InvitationDeleteRequest = {
|
|
1358
|
+
encode(message, writer = _m0.Writer.create()) {
|
|
1359
|
+
if (message.teamId !== "") {
|
|
1360
|
+
writer.uint32(10).string(message.teamId);
|
|
1361
|
+
}
|
|
1362
|
+
if (message.email !== "") {
|
|
1363
|
+
writer.uint32(18).string(message.email);
|
|
1364
|
+
}
|
|
1365
|
+
return writer;
|
|
1366
|
+
},
|
|
1367
|
+
decode(input, length) {
|
|
1368
|
+
const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
|
|
1369
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
|
1370
|
+
const message = createBaseInvitationDeleteRequest();
|
|
1371
|
+
while (reader.pos < end) {
|
|
1372
|
+
const tag = reader.uint32();
|
|
1373
|
+
switch (tag >>> 3) {
|
|
1374
|
+
case 1:
|
|
1375
|
+
if (tag !== 10) {
|
|
1376
|
+
break;
|
|
1377
|
+
}
|
|
1378
|
+
message.teamId = reader.string();
|
|
1379
|
+
continue;
|
|
1380
|
+
case 2:
|
|
1381
|
+
if (tag !== 18) {
|
|
1382
|
+
break;
|
|
1383
|
+
}
|
|
1384
|
+
message.email = reader.string();
|
|
1385
|
+
continue;
|
|
1386
|
+
}
|
|
1387
|
+
if ((tag & 7) === 4 || tag === 0) {
|
|
1388
|
+
break;
|
|
1389
|
+
}
|
|
1390
|
+
reader.skipType(tag & 7);
|
|
1391
|
+
}
|
|
1392
|
+
return message;
|
|
1393
|
+
},
|
|
1394
|
+
fromJSON(object) {
|
|
1395
|
+
return {
|
|
1396
|
+
teamId: isSet$b(object.teamId) ? globalThis.String(object.teamId) : "",
|
|
1397
|
+
email: isSet$b(object.email) ? globalThis.String(object.email) : "",
|
|
1398
|
+
};
|
|
1399
|
+
},
|
|
1400
|
+
toJSON(message) {
|
|
1401
|
+
const obj = {};
|
|
1402
|
+
if (message.teamId !== "") {
|
|
1403
|
+
obj.teamId = message.teamId;
|
|
1404
|
+
}
|
|
1405
|
+
if (message.email !== "") {
|
|
1406
|
+
obj.email = message.email;
|
|
1407
|
+
}
|
|
1408
|
+
return obj;
|
|
1409
|
+
},
|
|
1410
|
+
create(base) {
|
|
1411
|
+
return InvitationDeleteRequest.fromPartial(base ?? {});
|
|
1412
|
+
},
|
|
1413
|
+
fromPartial(object) {
|
|
1414
|
+
const message = createBaseInvitationDeleteRequest();
|
|
1415
|
+
message.teamId = object.teamId ?? "";
|
|
1416
|
+
message.email = object.email ?? "";
|
|
1417
|
+
return message;
|
|
1418
|
+
},
|
|
1419
|
+
};
|
|
1420
|
+
function createBaseInvitationDeleteResponse() {
|
|
1421
|
+
return { message: "" };
|
|
1422
|
+
}
|
|
1423
|
+
const InvitationDeleteResponse = {
|
|
1424
|
+
encode(message, writer = _m0.Writer.create()) {
|
|
1425
|
+
if (message.message !== "") {
|
|
1426
|
+
writer.uint32(10).string(message.message);
|
|
1427
|
+
}
|
|
1428
|
+
return writer;
|
|
1429
|
+
},
|
|
1430
|
+
decode(input, length) {
|
|
1431
|
+
const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
|
|
1432
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
|
1433
|
+
const message = createBaseInvitationDeleteResponse();
|
|
1434
|
+
while (reader.pos < end) {
|
|
1435
|
+
const tag = reader.uint32();
|
|
1436
|
+
switch (tag >>> 3) {
|
|
1437
|
+
case 1:
|
|
1438
|
+
if (tag !== 10) {
|
|
1439
|
+
break;
|
|
1440
|
+
}
|
|
1441
|
+
message.message = reader.string();
|
|
1442
|
+
continue;
|
|
1443
|
+
}
|
|
1444
|
+
if ((tag & 7) === 4 || tag === 0) {
|
|
1445
|
+
break;
|
|
1446
|
+
}
|
|
1447
|
+
reader.skipType(tag & 7);
|
|
1448
|
+
}
|
|
1449
|
+
return message;
|
|
1450
|
+
},
|
|
1451
|
+
fromJSON(object) {
|
|
1452
|
+
return { message: isSet$b(object.message) ? globalThis.String(object.message) : "" };
|
|
1453
|
+
},
|
|
1454
|
+
toJSON(message) {
|
|
1455
|
+
const obj = {};
|
|
1456
|
+
if (message.message !== "") {
|
|
1457
|
+
obj.message = message.message;
|
|
1458
|
+
}
|
|
1459
|
+
return obj;
|
|
1460
|
+
},
|
|
1461
|
+
create(base) {
|
|
1462
|
+
return InvitationDeleteResponse.fromPartial(base ?? {});
|
|
1463
|
+
},
|
|
1464
|
+
fromPartial(object) {
|
|
1465
|
+
const message = createBaseInvitationDeleteResponse();
|
|
1466
|
+
message.message = object.message ?? "";
|
|
1467
|
+
return message;
|
|
1468
|
+
},
|
|
1469
|
+
};
|
|
1274
1470
|
const AuthenticationDefinition = {
|
|
1275
1471
|
name: "Authentication",
|
|
1276
1472
|
fullName: "authentication.Authentication",
|
|
@@ -1291,6 +1487,14 @@ const AuthenticationDefinition = {
|
|
|
1291
1487
|
responseStream: false,
|
|
1292
1488
|
options: {},
|
|
1293
1489
|
},
|
|
1490
|
+
userCreateByUsername: {
|
|
1491
|
+
name: "UserCreateByUsername",
|
|
1492
|
+
requestType: UserCreateByUsernameRequest,
|
|
1493
|
+
requestStream: false,
|
|
1494
|
+
responseType: UserCreateResponse,
|
|
1495
|
+
responseStream: false,
|
|
1496
|
+
options: {},
|
|
1497
|
+
},
|
|
1294
1498
|
userModifyStatus: {
|
|
1295
1499
|
name: "UserModifyStatus",
|
|
1296
1500
|
requestType: UserModifyStatusRequest,
|
|
@@ -1371,6 +1575,14 @@ const AuthenticationDefinition = {
|
|
|
1371
1575
|
responseStream: false,
|
|
1372
1576
|
options: {},
|
|
1373
1577
|
},
|
|
1578
|
+
invitationDelete: {
|
|
1579
|
+
name: "InvitationDelete",
|
|
1580
|
+
requestType: InvitationDeleteRequest,
|
|
1581
|
+
requestStream: false,
|
|
1582
|
+
responseType: InvitationDeleteResponse,
|
|
1583
|
+
responseStream: false,
|
|
1584
|
+
options: {},
|
|
1585
|
+
},
|
|
1374
1586
|
},
|
|
1375
1587
|
};
|
|
1376
1588
|
function isSet$b(value) {
|
|
@@ -13479,6 +13691,9 @@ class Authentication extends ConduitModule {
|
|
|
13479
13691
|
userCreate(email, verify = false, password, anonymousId) {
|
|
13480
13692
|
return this.client.userCreate({ email, verify, password, anonymousId });
|
|
13481
13693
|
}
|
|
13694
|
+
userCreateByUsername(username, password, anonymousId) {
|
|
13695
|
+
return this.client.userCreateByUsername({ username, password, anonymousId });
|
|
13696
|
+
}
|
|
13482
13697
|
anonymousUserCreate(clientId) {
|
|
13483
13698
|
return this.client.anonymousUserCreate({ clientId });
|
|
13484
13699
|
}
|
|
@@ -13506,6 +13721,9 @@ class Authentication extends ConduitModule {
|
|
|
13506
13721
|
userModifyStatus(userId, active) {
|
|
13507
13722
|
return this.client.userModifyStatus({ id: userId, active });
|
|
13508
13723
|
}
|
|
13724
|
+
invitationDelete(teamId, email) {
|
|
13725
|
+
return this.client.invitationDelete({ teamId, email });
|
|
13726
|
+
}
|
|
13509
13727
|
}
|
|
13510
13728
|
|
|
13511
13729
|
function getJsonEnv(envName, envValue, handleString) {
|
|
@@ -14311,5 +14529,5 @@ class ConduitGrpcSdk {
|
|
|
14311
14529
|
}
|
|
14312
14530
|
}
|
|
14313
14531
|
|
|
14314
|
-
export { Admin, AdminDefinition, AdminRouterDefinition, AllowedResourcesRequest, AllowedResourcesResponse, AnonymousUserCreateRequest, Authentication, AuthenticationDefinition, Authorization, AuthorizationDefinition, Chat, ChatDefinition, ClientRouterDefinition, ColumnExistenceRequest, ColumnExistenceResponse, ConduitAuthorizedResource, ConduitError, ConduitGrpcSdk, ConduitModelOptionsPermModifyType, ConduitModule, ConduitModuleDefinition, ConduitRouteActions, ConduitRouteReturnDefinition, ConduitSchema, Config, ConfigDefinition, Cookie, CookieOptions, Core, CoreDefinition, CreateFileByUrlRequest, CreateFileRequest, CreateRelationsRequest, CreateRoomRequest, CreateSchemaRequest, CreateTeamRequest, CreateViewRequest, CreateViewRequest_RawQuery, DatabaseProvider, DatabaseProviderDefinition, Decision, DeleteAllRelationsRequest, DeleteFileResponse, DeleteResourceRequest, DeleteRoomRequest, DeleteViewRequest, DropCollectionRequest, DropCollectionResponse, Email, EmailDefinition, EventBus, FileByUrlResponse, FileResponse, FindOneRequest, FindRelationRequest, FindRelationResponse, FindRequest, FindRequest_SortEntry, GetConfigRequest, GetConfigResponse, GetDatabaseTypeResponse, GetEmailStatusRequest, GetEmailStatusResponse, GetFileDataResponse, GetFileRequest, GetFileUrlRequest, GetFileUrlResponse, GetNotificationTokensRequest, GetNotificationTokensResponse, GetRedisDetailsResponse, GetRoomResponse, GetSchemaRequest, GetSchemasRequest, GetSchemasResponse, GetTeamRequest, GrpcError, HealthCheckRequest, HealthCheckResponse, HealthCheckResponse_ServingStatus, HealthCheckStatus, HealthDefinition, KNOWN_LOCKS, MetricType, MigrateRequest, ModifyTeamMembersRequest, ModuleByNameRequest, ModuleByNameResponse, ModuleExistsRequest, ModuleExistsResponse, ModuleHealthRequest, ModuleListResponse, ModuleListResponse_ModuleResponse, MongoIndexType, PatchAppRouteMiddlewaresRequest, PatchRouteMiddlewaresRequest, PermissionCheck, PermissionRequest, PlatformTypesEnum, PostgresIndexType, ProxyRouteActions, PushNotifications, PushNotificationsDefinition, QueryRequest, QueryResponse, RawQueryRequest, RawQueryRequest_RawQuery, RawQueryRequest_RawQuery_MongoQuery, RawQueryRequest_RawQuery_SQLQuery, RedisManager, RegisterAdminRouteRequest, RegisterAdminRouteRequest_ConduitRouteOptions, RegisterAdminRouteRequest_ConduitRouteReturnDefinition, RegisterAdminRouteRequest_PathDefinition, RegisterAdminRouteRequest_ProxyRouteOptions, RegisterConduitRouteRequest, RegisterConduitRouteRequest_ConduitRouteOptions, RegisterConduitRouteRequest_ConduitRouteReturnDefinition, RegisterConduitRouteRequest_PathDefinition, RegisterConduitRouteRequest_ProxyRouteOptions, RegisterModuleRequest, RegisterModuleResponse, RegisterModulesConfigRequest, RegisterTemplateRequest, RegisterTemplateResponse, Relation, Request, ResendEmailRequest, ResendEmailResponse, Resource, ResourceAccessListRequest, ResourceAccessListResponse, ResourceModificationAcknowledgement, ResourceModificationAcknowledgement_Status, Resource_Permission, Resource_Relation, Response, Room, Router, RouterDefinition, SMS, SQLDataType, Schema, SchemaExtension, SendEmailRequest, SendEmailRequest_SendEmailParams, SendEmailResponse, SendManyNotificationsRequest, SendMessageRequest, SendNotificationRequest, SendNotificationResponse, SendNotificationToManyDevicesRequest, SendSmsRequest, SendSmsResponse, SendVerificationCodeRequest, SendVerificationCodeResponse, SetConfigRequest, SetConfigResponse, SetNotificationTokenRequest, SetNotificationTokenResponse, SmsDefinition, SocketData, SocketRequest, SocketResponse, StateManager, Storage, StorageDefinition, TYPE, Team, TeamDeleteRequest, TeamDeleteResponse, UpdateConfigRequest, UpdateConfigResponse, UpdateFileByUrlRequest, UpdateFileRequest, UpdateManyRequest, UpdateRequest, UpdateTemplateRequest, UserChangePass, UserCreateRequest, UserCreateResponse, UserDeleteRequest, UserDeleteResponse, UserLoginRequest, UserLoginResponse, UserModifyStatusRequest, UserModifyStatusResponse, ValidateAccessTokenRequest, ValidateAccessTokenResponse, ValidateAccessTokenResponse_Status, VerifyRequest, VerifyResponse, checkModuleHealth, getJsonEnv, healthCheckResponse_ServingStatusFromJSON, healthCheckResponse_ServingStatusToJSON, resourceModificationAcknowledgement_StatusFromJSON, resourceModificationAcknowledgement_StatusToJSON, sleep, validateAccessTokenResponse_StatusFromJSON, validateAccessTokenResponse_StatusToJSON };
|
|
14532
|
+
export { Admin, AdminDefinition, AdminRouterDefinition, AllowedResourcesRequest, AllowedResourcesResponse, AnonymousUserCreateRequest, Authentication, AuthenticationDefinition, Authorization, AuthorizationDefinition, Chat, ChatDefinition, ClientRouterDefinition, ColumnExistenceRequest, ColumnExistenceResponse, ConduitAuthorizedResource, ConduitError, ConduitGrpcSdk, ConduitModelOptionsPermModifyType, ConduitModule, ConduitModuleDefinition, ConduitRouteActions, ConduitRouteReturnDefinition, ConduitSchema, Config, ConfigDefinition, Cookie, CookieOptions, Core, CoreDefinition, CreateFileByUrlRequest, CreateFileRequest, CreateRelationsRequest, CreateRoomRequest, CreateSchemaRequest, CreateTeamRequest, CreateViewRequest, CreateViewRequest_RawQuery, DatabaseProvider, DatabaseProviderDefinition, Decision, DeleteAllRelationsRequest, DeleteFileResponse, DeleteResourceRequest, DeleteRoomRequest, DeleteViewRequest, DropCollectionRequest, DropCollectionResponse, Email, EmailDefinition, EventBus, FileByUrlResponse, FileResponse, FindOneRequest, FindRelationRequest, FindRelationResponse, FindRequest, FindRequest_SortEntry, GetConfigRequest, GetConfigResponse, GetDatabaseTypeResponse, GetEmailStatusRequest, GetEmailStatusResponse, GetFileDataResponse, GetFileRequest, GetFileUrlRequest, GetFileUrlResponse, GetNotificationTokensRequest, GetNotificationTokensResponse, GetRedisDetailsResponse, GetRoomResponse, GetSchemaRequest, GetSchemasRequest, GetSchemasResponse, GetTeamRequest, GrpcError, HealthCheckRequest, HealthCheckResponse, HealthCheckResponse_ServingStatus, HealthCheckStatus, HealthDefinition, InvitationDeleteRequest, InvitationDeleteResponse, KNOWN_LOCKS, MetricType, MigrateRequest, ModifyTeamMembersRequest, ModuleByNameRequest, ModuleByNameResponse, ModuleExistsRequest, ModuleExistsResponse, ModuleHealthRequest, ModuleListResponse, ModuleListResponse_ModuleResponse, MongoIndexType, PatchAppRouteMiddlewaresRequest, PatchRouteMiddlewaresRequest, PermissionCheck, PermissionRequest, PlatformTypesEnum, PostgresIndexType, ProxyRouteActions, PushNotifications, PushNotificationsDefinition, QueryRequest, QueryResponse, RawQueryRequest, RawQueryRequest_RawQuery, RawQueryRequest_RawQuery_MongoQuery, RawQueryRequest_RawQuery_SQLQuery, RedisManager, RegisterAdminRouteRequest, RegisterAdminRouteRequest_ConduitRouteOptions, RegisterAdminRouteRequest_ConduitRouteReturnDefinition, RegisterAdminRouteRequest_PathDefinition, RegisterAdminRouteRequest_ProxyRouteOptions, RegisterConduitRouteRequest, RegisterConduitRouteRequest_ConduitRouteOptions, RegisterConduitRouteRequest_ConduitRouteReturnDefinition, RegisterConduitRouteRequest_PathDefinition, RegisterConduitRouteRequest_ProxyRouteOptions, RegisterModuleRequest, RegisterModuleResponse, RegisterModulesConfigRequest, RegisterTemplateRequest, RegisterTemplateResponse, Relation, Request, ResendEmailRequest, ResendEmailResponse, Resource, ResourceAccessListRequest, ResourceAccessListResponse, ResourceModificationAcknowledgement, ResourceModificationAcknowledgement_Status, Resource_Permission, Resource_Relation, Response, Room, Router, RouterDefinition, SMS, SQLDataType, Schema, SchemaExtension, SendEmailRequest, SendEmailRequest_SendEmailParams, SendEmailResponse, SendManyNotificationsRequest, SendMessageRequest, SendNotificationRequest, SendNotificationResponse, SendNotificationToManyDevicesRequest, SendSmsRequest, SendSmsResponse, SendVerificationCodeRequest, SendVerificationCodeResponse, SetConfigRequest, SetConfigResponse, SetNotificationTokenRequest, SetNotificationTokenResponse, SmsDefinition, SocketData, SocketRequest, SocketResponse, StateManager, Storage, StorageDefinition, TYPE, Team, TeamDeleteRequest, TeamDeleteResponse, UpdateConfigRequest, UpdateConfigResponse, UpdateFileByUrlRequest, UpdateFileRequest, UpdateManyRequest, UpdateRequest, UpdateTemplateRequest, UserChangePass, UserCreateByUsernameRequest, UserCreateRequest, UserCreateResponse, UserDeleteRequest, UserDeleteResponse, UserLoginRequest, UserLoginResponse, UserModifyStatusRequest, UserModifyStatusResponse, ValidateAccessTokenRequest, ValidateAccessTokenResponse, ValidateAccessTokenResponse_Status, VerifyRequest, VerifyResponse, checkModuleHealth, getJsonEnv, healthCheckResponse_ServingStatusFromJSON, healthCheckResponse_ServingStatusToJSON, resourceModificationAcknowledgement_StatusFromJSON, resourceModificationAcknowledgement_StatusToJSON, sleep, validateAccessTokenResponse_StatusFromJSON, validateAccessTokenResponse_StatusToJSON };
|
|
14315
14533
|
//# sourceMappingURL=index.esm.js.map
|