@opsregistry/adapter-cdek 0.0.1 → 0.0.3

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/README.md CHANGED
@@ -9,14 +9,40 @@
9
9
  - минимальные Zod-схемы для `delivery.quote` и `delivery.createShipment`;
10
10
  - типы входа и выхода этих операций;
11
11
  - поддержка operation-level метаданных `accessModeUsed` и `pricingScope` через общий пакет `@opsregistry/contracts`;
12
+ - поддержка IAM-операции `it.identity.authenticate` через общий пакет `@opsregistry/contracts`;
12
13
  - фабрика `createAdapter(...)`;
13
14
  - разделение `delivery.quote` на public и authorized branch;
15
+ - выбор режима доступа через старый `authMode` или новый `requestedAccessMode: auto | public | authorized`;
14
16
  - stub-реализация методов, которая пока явно сообщает, что интеграция не реализована.
15
17
 
18
+ Пример IAM-потока:
19
+
20
+ ```ts
21
+ import { createAdapter } from '@opsregistry/adapter-cdek';
22
+
23
+ const cdek = createAdapter({
24
+ clientId: process.env.CDEK_CLIENT_ID,
25
+ clientSecret: process.env.CDEK_CLIENT_SECRET
26
+ });
27
+
28
+ const auth = await cdek.authenticate({
29
+ requestedAccessMode: 'auto',
30
+ requestedScopes: ['delivery.quote']
31
+ });
32
+
33
+ const quote = await cdek.quoteDelivery(input, { auth });
34
+ ```
35
+
36
+ В текущем skeleton-е `authenticate({ requestedAccessMode: 'authorized' })`
37
+ проверяет наличие `clientId/clientSecret` и возвращает нормализованный
38
+ `IdentityAuthenticateResult`. Реальный OAuth token exchange еще должен быть
39
+ реализован в transport-слое.
40
+
16
41
  Что нужно делать дальше:
17
42
 
18
43
  1. Уточнить реальные поля входа и выхода по операциям.
19
44
  2. Реализовать transport для `quoteDeliveryPublic(...)`.
20
- 3. Реализовать OAuth/token flow и `quoteDeliveryAuthorized(...)`.
21
- 4. Реализовать `createShipmentAuthorized(...)`.
22
- 5. Покрыть адаптер тестами на нормализацию данных и ошибок.
45
+ 3. Реализовать OAuth/token flow внутри `authenticate(...)`.
46
+ 4. Использовать полученный credential в `quoteDeliveryAuthorized(...)`.
47
+ 5. Реализовать `createShipmentAuthorized(...)`.
48
+ 6. Покрыть адаптер тестами на нормализацию данных и ошибок.
package/dist/adapter.d.ts CHANGED
@@ -1,12 +1,26 @@
1
- import { type AdapterConfig, type CreateShipmentInput, type CreateShipmentResult, type AuthMode, type DeliveryQuoteInput, type DeliveryQuoteResult, providerCode } from './contracts.js';
1
+ import { type AdapterConfig, type CreateShipmentInput, type CreateShipmentResult, type AuthMode, type DeliveryQuoteInput, type DeliveryQuoteResult, type IdentityAuthenticateInput, type IdentityAuthenticateResult, providerCode, type RequestedAccessMode } from './contracts.js';
2
+ export type AdapterOperationOptions = {
3
+ /**
4
+ * Legacy operation-level selector kept for existing callers.
5
+ */
6
+ authMode?: AuthMode;
7
+ /**
8
+ * Opsregistry IAM selector. `auto` prefers authorized access when the
9
+ * adapter has credentials, otherwise falls back to public access when the
10
+ * operation supports it.
11
+ */
12
+ requestedAccessMode?: RequestedAccessMode;
13
+ /**
14
+ * Result of `it.identity.authenticate`. When provided, the operation uses
15
+ * its `accessModeUsed` instead of resolving access mode again.
16
+ */
17
+ auth?: IdentityAuthenticateResult;
18
+ };
2
19
  export type ProviderAdapter = {
3
20
  providerCode: typeof providerCode;
4
- quoteDelivery: (input: DeliveryQuoteInput, options?: {
5
- authMode?: AuthMode;
6
- }) => Promise<DeliveryQuoteResult>;
7
- createShipment: (input: CreateShipmentInput, options?: {
8
- authMode?: AuthMode;
9
- }) => Promise<CreateShipmentResult>;
21
+ authenticate: (input?: Partial<IdentityAuthenticateInput>) => Promise<IdentityAuthenticateResult>;
22
+ quoteDelivery: (input: DeliveryQuoteInput, options?: AdapterOperationOptions) => Promise<DeliveryQuoteResult>;
23
+ createShipment: (input: CreateShipmentInput, options?: AdapterOperationOptions) => Promise<CreateShipmentResult>;
10
24
  };
11
25
  export declare const createAdapter: (config?: AdapterConfig) => ProviderAdapter;
12
26
  //# sourceMappingURL=adapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,KAAK,aAAa,EAIlB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EAGzB,KAAK,QAAQ,EACb,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,YAAY,EAGZ,MAAM,gBAAgB,CAAC;AAmHxB,MAAM,MAAM,eAAe,GAAG;IAC7B,YAAY,EAAE,OAAO,YAAY,CAAC;IAClC,aAAa,EAAE,CACd,KAAK,EAAE,kBAAkB,EACzB,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,QAAQ,CAAA;KAAE,KAC7B,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAClC,cAAc,EAAE,CACf,KAAK,EAAE,mBAAmB,EAC1B,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,QAAQ,CAAA;KAAE,KAC7B,OAAO,CAAC,oBAAoB,CAAC,CAAC;CACnC,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,SAAQ,aAAkB,KAAG,eA8B1D,CAAC"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,KAAK,aAAa,EAIlB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EAGzB,KAAK,QAAQ,EACb,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EAIxB,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,YAAY,EAEZ,KAAK,mBAAmB,EAIxB,MAAM,gBAAgB,CAAC;AAwNxB,MAAM,MAAM,uBAAuB,GAAG;IACrC;;OAEG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C;;;OAGG;IACH,IAAI,CAAC,EAAE,0BAA0B,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC7B,YAAY,EAAE,OAAO,YAAY,CAAC;IAClC,YAAY,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,yBAAyB,CAAC,KAAK,OAAO,CAAC,0BAA0B,CAAC,CAAC;IAClG,aAAa,EAAE,CACd,KAAK,EAAE,kBAAkB,EACzB,OAAO,CAAC,EAAE,uBAAuB,KAC7B,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAClC,cAAc,EAAE,CACf,KAAK,EAAE,mBAAmB,EAC1B,OAAO,CAAC,EAAE,uBAAuB,KAC7B,OAAO,CAAC,oBAAoB,CAAC,CAAC;CACnC,CAAC;AAEF,eAAO,MAAM,aAAa,YAAY,aAAa,KAAQ,eAoF1D,CAAC"}
package/dist/adapter.js CHANGED
@@ -1,4 +1,4 @@
1
- import { adapterConfigSchema, authModeSchema, createShipmentInputSchema, createShipmentOperationCode, deliveryQuoteInputSchema, deliveryQuoteOperationCode, providerCode, supportedCreateShipmentAuthModes, supportedQuoteAuthModes } from './contracts.js';
1
+ import { adapterConfigSchema, authModeSchema, createShipmentInputSchema, createShipmentOperationCode, deliveryQuoteInputSchema, deliveryQuoteOperationCode, identityAuthenticateInputSchema, identityAuthenticateOperationCode, identityAuthenticateResultSchema, providerCode, requestedAccessModeSchema, supportedAuthenticateAccessModes, supportedCreateShipmentAuthModes, supportedQuoteAuthModes } from './contracts.js';
2
2
  const notImplemented = (operationCode) => {
3
3
  throw new Error(`Adapter ${providerCode} does not implement ${operationCode} yet. This package is only a skeleton.`);
4
4
  };
@@ -10,6 +10,20 @@ const assertSupportedAuthMode = (operationCode, supportedAuthModes, authMode) =>
10
10
  }
11
11
  return resolvedAuthMode;
12
12
  };
13
+ const readString = (value) => (typeof value === 'string' && value ? value : undefined);
14
+ const hasAuthorizedCredentials = (transport, credentials = {}) => Boolean((readString(credentials.clientId) ?? transport.clientId) &&
15
+ (readString(credentials.clientSecret) ?? transport.clientSecret));
16
+ const resolveRequestedAccessMode = (operationCode, supportedAuthModes, requestedAccessMode, hasCredentials) => {
17
+ const requested = requestedAccessModeSchema.parse(requestedAccessMode ?? 'auto');
18
+ if (requested === 'auto') {
19
+ if (hasCredentials && supportedAuthModes.includes('authorized'))
20
+ return 'authorized';
21
+ if (supportedAuthModes.includes('public'))
22
+ return 'public';
23
+ return assertSupportedAuthMode(operationCode, supportedAuthModes, 'authorized');
24
+ }
25
+ return assertSupportedAuthMode(operationCode, supportedAuthModes, requested);
26
+ };
13
27
  const createTransportContext = (config) => ({
14
28
  timeoutMs: config.timeoutMs,
15
29
  publicBaseUrl: config.publicBaseUrl ?? config.baseUrl ?? 'https://api.cdek.ru',
@@ -76,21 +90,124 @@ const createShipmentAuthorized = async (transport, input) => {
76
90
  void input;
77
91
  return notImplemented(`${createShipmentOperationCode} [authorized]`);
78
92
  };
93
+ const authenticatePublic = () => identityAuthenticateResultSchema.parse({
94
+ operationCode: identityAuthenticateOperationCode,
95
+ status: 'anonymous',
96
+ subject: {
97
+ kind: 'anonymous',
98
+ providerCode,
99
+ roles: [],
100
+ permissions: [],
101
+ scopes: [],
102
+ claims: {}
103
+ },
104
+ accessModeUsed: 'public',
105
+ credential: {
106
+ kind: 'none',
107
+ transport: 'none',
108
+ scopes: [],
109
+ metadata: {}
110
+ },
111
+ metadata: {
112
+ providerCode,
113
+ operationStatus: 'ready',
114
+ reason: 'CDEK public quote branch does not require credentials.'
115
+ }
116
+ });
117
+ const authenticateAuthorized = (transport, input) => {
118
+ const clientId = readString(input.credentials.clientId) ?? transport.clientId;
119
+ const clientSecret = readString(input.credentials.clientSecret) ?? transport.clientSecret;
120
+ const accessToken = readString(input.credentials.accessToken);
121
+ if (!clientId || !clientSecret) {
122
+ throw new Error(`Adapter ${providerCode} requires clientId and clientSecret for authorized access.`);
123
+ }
124
+ return identityAuthenticateResultSchema.parse({
125
+ operationCode: identityAuthenticateOperationCode,
126
+ status: 'authenticated',
127
+ subject: {
128
+ kind: 'providerAccount',
129
+ id: clientId,
130
+ externalId: clientId,
131
+ providerCode,
132
+ roles: [],
133
+ permissions: [],
134
+ scopes: input.requestedScopes,
135
+ claims: {}
136
+ },
137
+ accessModeUsed: 'authorized',
138
+ credential: {
139
+ kind: 'accessToken',
140
+ transport: 'header',
141
+ scheme: 'Bearer',
142
+ name: 'Authorization',
143
+ value: accessToken,
144
+ scopes: input.requestedScopes,
145
+ metadata: {
146
+ providerCode,
147
+ baseUrl: transport.authorizedBaseUrl,
148
+ implementationStatus: 'stub',
149
+ tokenExchangeRequired: !accessToken,
150
+ clientSecretPresent: Boolean(clientSecret)
151
+ }
152
+ },
153
+ metadata: {
154
+ providerCode,
155
+ operationStatus: 'stub',
156
+ note: 'Runtime should exchange client credentials for a real CDEK OAuth access token before HTTP calls.'
157
+ }
158
+ });
159
+ };
79
160
  export const createAdapter = (config = {}) => {
80
161
  const resolvedConfig = adapterConfigSchema.parse(config);
81
162
  const transport = createTransportContext(resolvedConfig);
82
163
  return {
83
164
  providerCode,
165
+ async authenticate(input = {}) {
166
+ const normalizedInput = identityAuthenticateInputSchema.parse({
167
+ subject: {
168
+ kind: input.subject?.kind ?? 'providerAccount',
169
+ providerCode,
170
+ ...(input.subject ?? {})
171
+ },
172
+ method: input.method ??
173
+ (input.requestedAccessMode === 'public' ? 'none' : 'oauth2ClientCredentials'),
174
+ credentials: {
175
+ clientId: transport.clientId,
176
+ clientSecret: transport.clientSecret,
177
+ apiKey: transport.apiKey,
178
+ ...(input.credentials ?? {})
179
+ },
180
+ requestedAccessMode: input.requestedAccessMode ?? 'auto',
181
+ requestedScopes: input.requestedScopes ?? [],
182
+ context: input.context
183
+ });
184
+ const accessMode = resolveRequestedAccessMode(identityAuthenticateOperationCode, supportedAuthenticateAccessModes, normalizedInput.requestedAccessMode, hasAuthorizedCredentials(transport, normalizedInput.credentials));
185
+ return accessMode === 'public'
186
+ ? authenticatePublic()
187
+ : authenticateAuthorized(transport, normalizedInput);
188
+ },
84
189
  async quoteDelivery(input, options = {}) {
85
190
  deliveryQuoteInputSchema.parse(input);
86
- const authMode = assertSupportedAuthMode(deliveryQuoteOperationCode, supportedQuoteAuthModes, options.authMode);
191
+ const authMode = options.auth
192
+ ? assertSupportedAuthMode(deliveryQuoteOperationCode, supportedQuoteAuthModes, options.auth.accessModeUsed)
193
+ : options.requestedAccessMode
194
+ ? (await this.authenticate({
195
+ requestedAccessMode: options.requestedAccessMode
196
+ })).accessModeUsed
197
+ : assertSupportedAuthMode(deliveryQuoteOperationCode, supportedQuoteAuthModes, options.authMode);
87
198
  return authMode === 'public'
88
199
  ? quoteDeliveryPublic(transport, input)
89
200
  : quoteDeliveryAuthorized(transport, input);
90
201
  },
91
202
  async createShipment(input, options = {}) {
92
203
  createShipmentInputSchema.parse(input);
93
- const authMode = assertSupportedAuthMode(createShipmentOperationCode, supportedCreateShipmentAuthModes, options.authMode);
204
+ const authMode = options.auth
205
+ ? assertSupportedAuthMode(createShipmentOperationCode, supportedCreateShipmentAuthModes, options.auth.accessModeUsed)
206
+ : options.requestedAccessMode
207
+ ? (await this.authenticate({
208
+ requestedAccessMode: options.requestedAccessMode
209
+ })).accessModeUsed
210
+ : assertSupportedAuthMode(createShipmentOperationCode, supportedCreateShipmentAuthModes, options.authMode);
94
211
  if (authMode === 'authorized') {
95
212
  return createShipmentAuthorized(transport, input);
96
213
  }
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,16 @@
1
1
  import { z } from 'zod';
2
2
  import { createShipmentInputSchema, createShipmentResultSchema, type CreateShipmentInput, type CreateShipmentResult, operationCode as createShipmentOperationCode } from '@opsregistry/contracts/delivery/create-shipment';
3
3
  import { deliveryQuoteInputSchema, deliveryQuoteResultSchema, type DeliveryQuoteInput, type DeliveryQuoteResult, operationCode as deliveryQuoteOperationCode } from '@opsregistry/contracts/delivery/quote';
4
- export declare const providerCode: "cdek";
4
+ import { identityAuthenticateInputSchema, identityAuthenticateResultSchema, type IdentityAuthenticateInput, type IdentityAuthenticateResult, operationCode as identityAuthenticateOperationCode } from '@opsregistry/contracts/it/identity-authenticate';
5
+ import { requestedAccessModeSchema, type AccessMode, type RequestedAccessMode } from '@opsregistry/contracts/it/iam-common';
6
+ export declare const providerCode: 'cdek';
5
7
  export declare const authModeSchema: z.ZodEnum<{
6
8
  public: "public";
7
9
  authorized: "authorized";
8
10
  }>;
9
- export declare const supportedQuoteAuthModes: readonly ["public", "authorized"];
10
- export declare const supportedCreateShipmentAuthModes: readonly ["authorized"];
11
+ export declare const supportedQuoteAuthModes: readonly ['public', 'authorized'];
12
+ export declare const supportedCreateShipmentAuthModes: readonly ['authorized'];
13
+ export declare const supportedAuthenticateAccessModes: readonly ['public', 'authorized'];
11
14
  export declare const adapterConfigSchema: z.ZodObject<{
12
15
  baseUrl: z.ZodOptional<z.ZodURL>;
13
16
  publicBaseUrl: z.ZodOptional<z.ZodURL>;
@@ -17,9 +20,10 @@ export declare const adapterConfigSchema: z.ZodObject<{
17
20
  clientSecret: z.ZodOptional<z.ZodString>;
18
21
  timeoutMs: z.ZodDefault<z.ZodNumber>;
19
22
  }, z.core.$strip>;
20
- export { createShipmentInputSchema, createShipmentResultSchema, deliveryQuoteInputSchema, deliveryQuoteResultSchema };
21
- export { createShipmentOperationCode, deliveryQuoteOperationCode };
23
+ export { createShipmentInputSchema, createShipmentResultSchema, deliveryQuoteInputSchema, deliveryQuoteResultSchema, identityAuthenticateInputSchema, identityAuthenticateResultSchema, requestedAccessModeSchema };
24
+ export { createShipmentOperationCode, deliveryQuoteOperationCode, identityAuthenticateOperationCode };
22
25
  export type AdapterConfig = z.input<typeof adapterConfigSchema>;
23
- export type AuthMode = z.infer<typeof authModeSchema>;
24
- export type { CreateShipmentInput, CreateShipmentResult, DeliveryQuoteInput, DeliveryQuoteResult };
26
+ export type AuthMode = AccessMode;
27
+ export type { RequestedAccessMode };
28
+ export type { CreateShipmentInput, CreateShipmentResult, DeliveryQuoteInput, DeliveryQuoteResult, IdentityAuthenticateInput, IdentityAuthenticateResult };
25
29
  //# sourceMappingURL=contracts.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../src/contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACN,yBAAyB,EACzB,0BAA0B,EAC1B,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,aAAa,IAAI,2BAA2B,EAC5C,MAAM,iDAAiD,CAAC;AACzD,OAAO,EACN,wBAAwB,EACxB,yBAAyB,EACzB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,aAAa,IAAI,0BAA0B,EAC3C,MAAM,uCAAuC,CAAC;AAE/C,eAAO,MAAM,YAAY,EAAG,MAAe,CAAC;AAC5C,eAAO,MAAM,cAAc;;;EAAmC,CAAC;AAC/D,eAAO,MAAM,uBAAuB,mCAAoC,CAAC;AACzE,eAAO,MAAM,gCAAgC,yBAA0B,CAAC;AAExE,eAAO,MAAM,mBAAmB;;;;;;;;iBAQ9B,CAAC;AAEH,OAAO,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,CAAC;AACtH,OAAO,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,CAAC;AAEnE,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AACtD,YAAY,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,CAAC"}
1
+ {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../src/contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACN,yBAAyB,EACzB,0BAA0B,EAC1B,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,aAAa,IAAI,2BAA2B,EAC5C,MAAM,iDAAiD,CAAC;AACzD,OAAO,EACN,wBAAwB,EACxB,yBAAyB,EACzB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,aAAa,IAAI,0BAA0B,EAC3C,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACN,+BAA+B,EAC/B,gCAAgC,EAChC,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,aAAa,IAAI,iCAAiC,EAClD,MAAM,iDAAiD,CAAC;AACzD,OAAO,EAEN,yBAAyB,EACzB,KAAK,UAAU,EACf,KAAK,mBAAmB,EACxB,MAAM,sCAAsC,CAAC;AAE9C,eAAO,MAAM,YAAY,EAAG,MAAe,CAAC;AAC5C,eAAO,MAAM,cAAc;;;EAAmB,CAAC;AAC/C,eAAO,MAAM,uBAAuB,YAAI,QAAQ,EAAE,YAAY,CAAU,CAAC;AACzE,eAAO,MAAM,gCAAgC,YAAI,YAAY,CAAU,CAAC;AACxE,eAAO,MAAM,gCAAgC,YAAI,QAAQ,EAAE,YAAY,CAAU,CAAC;AAElF,eAAO,MAAM,mBAAmB;;;;;;;;iBAQ9B,CAAC;AAEH,OAAO,EACN,yBAAyB,EACzB,0BAA0B,EAC1B,wBAAwB,EACxB,yBAAyB,EACzB,+BAA+B,EAC/B,gCAAgC,EAChC,yBAAyB,EACzB,CAAC;AACF,OAAO,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,iCAAiC,EAAE,CAAC;AAEtG,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAC;AAClC,YAAY,EAAE,mBAAmB,EAAE,CAAC;AACpC,YAAY,EACX,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,yBAAyB,EACzB,0BAA0B,EAC1B,CAAC"}
package/dist/contracts.js CHANGED
@@ -1,10 +1,13 @@
1
1
  import { z } from 'zod';
2
2
  import { createShipmentInputSchema, createShipmentResultSchema, operationCode as createShipmentOperationCode } from '@opsregistry/contracts/delivery/create-shipment';
3
3
  import { deliveryQuoteInputSchema, deliveryQuoteResultSchema, operationCode as deliveryQuoteOperationCode } from '@opsregistry/contracts/delivery/quote';
4
+ import { identityAuthenticateInputSchema, identityAuthenticateResultSchema, operationCode as identityAuthenticateOperationCode } from '@opsregistry/contracts/it/identity-authenticate';
5
+ import { accessModeSchema, requestedAccessModeSchema } from '@opsregistry/contracts/it/iam-common';
4
6
  export const providerCode = 'cdek';
5
- export const authModeSchema = z.enum(['public', 'authorized']);
7
+ export const authModeSchema = accessModeSchema;
6
8
  export const supportedQuoteAuthModes = ['public', 'authorized'];
7
9
  export const supportedCreateShipmentAuthModes = ['authorized'];
10
+ export const supportedAuthenticateAccessModes = ['public', 'authorized'];
8
11
  export const adapterConfigSchema = z.object({
9
12
  baseUrl: z.url().optional(),
10
13
  publicBaseUrl: z.url().optional(),
@@ -14,6 +17,6 @@ export const adapterConfigSchema = z.object({
14
17
  clientSecret: z.string().min(1).optional(),
15
18
  timeoutMs: z.number().int().positive().default(30_000)
16
19
  });
17
- export { createShipmentInputSchema, createShipmentResultSchema, deliveryQuoteInputSchema, deliveryQuoteResultSchema };
18
- export { createShipmentOperationCode, deliveryQuoteOperationCode };
20
+ export { createShipmentInputSchema, createShipmentResultSchema, deliveryQuoteInputSchema, deliveryQuoteResultSchema, identityAuthenticateInputSchema, identityAuthenticateResultSchema, requestedAccessModeSchema };
21
+ export { createShipmentOperationCode, deliveryQuoteOperationCode, identityAuthenticateOperationCode };
19
22
  //# sourceMappingURL=contracts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"contracts.js","sourceRoot":"","sources":["../src/contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACN,yBAAyB,EACzB,0BAA0B,EAG1B,aAAa,IAAI,2BAA2B,EAC5C,MAAM,iDAAiD,CAAC;AACzD,OAAO,EACN,wBAAwB,EACxB,yBAAyB,EAGzB,aAAa,IAAI,0BAA0B,EAC3C,MAAM,uCAAuC,CAAC;AAE/C,MAAM,CAAC,MAAM,YAAY,GAAG,MAAe,CAAC;AAC5C,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;AAC/D,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,QAAQ,EAAE,YAAY,CAAU,CAAC;AACzE,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,YAAY,CAAU,CAAC;AAExE,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC3B,aAAa,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACjC,iBAAiB,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACrC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACpC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACtC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC1C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;CACtD,CAAC,CAAC;AAEH,OAAO,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,CAAC;AACtH,OAAO,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,CAAC"}
1
+ {"version":3,"file":"contracts.js","sourceRoot":"","sources":["../src/contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACN,yBAAyB,EACzB,0BAA0B,EAG1B,aAAa,IAAI,2BAA2B,EAC5C,MAAM,iDAAiD,CAAC;AACzD,OAAO,EACN,wBAAwB,EACxB,yBAAyB,EAGzB,aAAa,IAAI,0BAA0B,EAC3C,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACN,+BAA+B,EAC/B,gCAAgC,EAGhC,aAAa,IAAI,iCAAiC,EAClD,MAAM,iDAAiD,CAAC;AACzD,OAAO,EACN,gBAAgB,EAChB,yBAAyB,EAGzB,MAAM,sCAAsC,CAAC;AAE9C,MAAM,CAAC,MAAM,YAAY,GAAG,MAAe,CAAC;AAC5C,MAAM,CAAC,MAAM,cAAc,GAAG,gBAAgB,CAAC;AAC/C,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,QAAQ,EAAE,YAAY,CAAU,CAAC;AACzE,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,YAAY,CAAU,CAAC;AACxE,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,QAAQ,EAAE,YAAY,CAAU,CAAC;AAElF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC3B,aAAa,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACjC,iBAAiB,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACrC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACpC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACtC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC1C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;CACtD,CAAC,CAAC;AAEH,OAAO,EACN,yBAAyB,EACzB,0BAA0B,EAC1B,wBAAwB,EACxB,yBAAyB,EACzB,+BAA+B,EAC/B,gCAAgC,EAChC,yBAAyB,EACzB,CAAC;AACF,OAAO,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,iCAAiC,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opsregistry/adapter-cdek",
3
- "version": "0.0.1",
3
+ "version": "0.0.3",
4
4
  "description": "Runtime adapter skeleton for mapping CDEK APIs to opsregistry delivery operations.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -16,10 +16,10 @@
16
16
  "check": "tsc -p tsconfig.json --noEmit"
17
17
  },
18
18
  "dependencies": {
19
- "@opsregistry/contracts": "https://registry.npmjs.org/@opsregistry/contracts/-/contracts-0.0.1.tgz",
20
- "zod": "^4.4.3"
19
+ "@opsregistry/contracts": "0.0.6",
20
+ "zod": "4.4.3"
21
21
  },
22
22
  "devDependencies": {
23
- "typescript": "^6.0.3"
23
+ "typescript": "7.0.2"
24
24
  }
25
25
  }