@opsregistry/adapter-nrgtk 0.0.1
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 +19 -0
- package/dist/adapter.d.ts +12 -0
- package/dist/adapter.d.ts.map +1 -0
- package/dist/adapter.js +77 -0
- package/dist/adapter.js.map +1 -0
- package/dist/contracts.d.ts +21 -0
- package/dist/contracts.d.ts.map +1 -0
- package/dist/contracts.js +15 -0
- package/dist/contracts.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -0
- package/package.json +25 -0
package/README.md
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# @opsregistry/adapter-nrgtk
|
|
2
|
+
|
|
3
|
+
Каркас runtime-адаптера для ТК Энергия под кодом `nrgtk`.
|
|
4
|
+
|
|
5
|
+
Пакет предназначен для будущей реализации универсальных операций `opsregistry` поверх API провайдера.
|
|
6
|
+
|
|
7
|
+
Что уже есть:
|
|
8
|
+
|
|
9
|
+
- минимальные Zod-схемы для `delivery.quote` и `delivery.createShipment`;
|
|
10
|
+
- типы входа и выхода этих операций;
|
|
11
|
+
- фабрика `createAdapter(...)`;
|
|
12
|
+
- stub-реализация методов, которая пока явно сообщает, что интеграция не реализована.
|
|
13
|
+
|
|
14
|
+
Что нужно делать дальше:
|
|
15
|
+
|
|
16
|
+
1. Уточнить реальные поля входа и выхода по операциям.
|
|
17
|
+
2. Добавить transport и авторизацию провайдера.
|
|
18
|
+
3. Реализовать маппинг ответов провайдера в универсальные структуры.
|
|
19
|
+
4. Покрыть адаптер тестами на нормализацию данных и ошибок.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type AdapterConfig, type CreateShipmentInput, type CreateShipmentResult, type AuthMode, type DeliveryQuoteInput, type DeliveryQuoteResult, providerCode } from './contracts.js';
|
|
2
|
+
export type ProviderAdapter = {
|
|
3
|
+
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>;
|
|
10
|
+
};
|
|
11
|
+
export declare const createAdapter: (config?: AdapterConfig) => ProviderAdapter;
|
|
12
|
+
//# sourceMappingURL=adapter.d.ts.map
|
|
@@ -0,0 +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;AAsFxB,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,eA+B1D,CAAC"}
|
package/dist/adapter.js
ADDED
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { adapterConfigSchema, authModeSchema, createShipmentInputSchema, createShipmentOperationCode, deliveryQuoteInputSchema, deliveryQuoteOperationCode, providerCode, supportedCreateShipmentAuthModes, supportedQuoteAuthModes } from './contracts.js';
|
|
2
|
+
const notImplemented = (operationCode) => {
|
|
3
|
+
throw new Error(`Adapter ${providerCode} does not implement ${operationCode} yet. This package is only a skeleton.`);
|
|
4
|
+
};
|
|
5
|
+
const assertSupportedAuthMode = (operationCode, supportedAuthModes, authMode) => {
|
|
6
|
+
const resolvedAuthMode = authMode ?? supportedAuthModes[0];
|
|
7
|
+
authModeSchema.parse(resolvedAuthMode);
|
|
8
|
+
if (!supportedAuthModes.includes(resolvedAuthMode)) {
|
|
9
|
+
throw new Error(`Adapter ${providerCode} does not support auth mode ${resolvedAuthMode} for ${operationCode}.`);
|
|
10
|
+
}
|
|
11
|
+
return resolvedAuthMode;
|
|
12
|
+
};
|
|
13
|
+
const createTransportContext = (config) => ({
|
|
14
|
+
timeoutMs: config.timeoutMs,
|
|
15
|
+
baseUrl: config.baseUrl ?? 'https://api.nrg-tk.ru',
|
|
16
|
+
apiKey: config.apiKey
|
|
17
|
+
});
|
|
18
|
+
const buildQuoteStubOption = (input, overrides) => ({
|
|
19
|
+
providerCode,
|
|
20
|
+
serviceCode: overrides.serviceCode,
|
|
21
|
+
serviceName: overrides.serviceName,
|
|
22
|
+
price: overrides.price,
|
|
23
|
+
currency: 'RUB',
|
|
24
|
+
etaMinDays: overrides.etaMinDays,
|
|
25
|
+
etaMaxDays: overrides.etaMaxDays,
|
|
26
|
+
notes: [
|
|
27
|
+
`Stub quote for route ${input.origin.city} -> ${input.destination.city}.`,
|
|
28
|
+
...(overrides.notes ?? [])
|
|
29
|
+
]
|
|
30
|
+
});
|
|
31
|
+
const quoteDeliveryAuthorized = async (transport, input) => ({
|
|
32
|
+
operationCode: deliveryQuoteOperationCode,
|
|
33
|
+
accessModeUsed: 'authorized',
|
|
34
|
+
pricingScope: 'personal',
|
|
35
|
+
options: [
|
|
36
|
+
buildQuoteStubOption(input, {
|
|
37
|
+
serviceCode: input.serviceCodes[0] ?? 'nrgtk-contract',
|
|
38
|
+
serviceName: 'NRGTK Contract Tariff',
|
|
39
|
+
price: 1080,
|
|
40
|
+
etaMinDays: 4,
|
|
41
|
+
etaMaxDays: 7,
|
|
42
|
+
notes: [
|
|
43
|
+
`Uses authorized branch ${transport.baseUrl}.`,
|
|
44
|
+
'Personal tariff branch is selected in this stub.'
|
|
45
|
+
]
|
|
46
|
+
})
|
|
47
|
+
]
|
|
48
|
+
});
|
|
49
|
+
const createShipmentAuthorized = async (transport, input) => {
|
|
50
|
+
void transport;
|
|
51
|
+
void input;
|
|
52
|
+
return notImplemented(`${createShipmentOperationCode} [authorized]`);
|
|
53
|
+
};
|
|
54
|
+
export const createAdapter = (config = {}) => {
|
|
55
|
+
const resolvedConfig = adapterConfigSchema.parse(config);
|
|
56
|
+
const transport = createTransportContext(resolvedConfig);
|
|
57
|
+
return {
|
|
58
|
+
providerCode,
|
|
59
|
+
async quoteDelivery(input, options = {}) {
|
|
60
|
+
deliveryQuoteInputSchema.parse(input);
|
|
61
|
+
const authMode = assertSupportedAuthMode(deliveryQuoteOperationCode, supportedQuoteAuthModes, options.authMode);
|
|
62
|
+
if (authMode === 'authorized') {
|
|
63
|
+
return quoteDeliveryAuthorized(transport, input);
|
|
64
|
+
}
|
|
65
|
+
return notImplemented(`${deliveryQuoteOperationCode} [${authMode}]`);
|
|
66
|
+
},
|
|
67
|
+
async createShipment(input, options = {}) {
|
|
68
|
+
createShipmentInputSchema.parse(input);
|
|
69
|
+
const authMode = assertSupportedAuthMode(createShipmentOperationCode, supportedCreateShipmentAuthModes, options.authMode);
|
|
70
|
+
if (authMode === 'authorized') {
|
|
71
|
+
return createShipmentAuthorized(transport, input);
|
|
72
|
+
}
|
|
73
|
+
return notImplemented(`${createShipmentOperationCode} [${authMode}]`);
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
};
|
|
77
|
+
//# sourceMappingURL=adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,mBAAmB,EAEnB,cAAc,EACd,yBAAyB,EACzB,2BAA2B,EAG3B,wBAAwB,EACxB,0BAA0B,EAI1B,YAAY,EACZ,gCAAgC,EAChC,uBAAuB,EACvB,MAAM,gBAAgB,CAAC;AAIxB,MAAM,cAAc,GAAG,CAAC,aAAqB,EAAS,EAAE;IACvD,MAAM,IAAI,KAAK,CACd,WAAW,YAAY,uBAAuB,aAAa,wCAAwC,CACnG,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,uBAAuB,GAAG,CAC/B,aAAqB,EACrB,kBAAuC,EACvC,QAA8B,EAC7B,EAAE;IACH,MAAM,gBAAgB,GAAG,QAAQ,IAAI,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAC3D,cAAc,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACvC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACpD,MAAM,IAAI,KAAK,CACd,WAAW,YAAY,+BAA+B,gBAAgB,QAAQ,aAAa,GAAG,CAC9F,CAAC;IACH,CAAC;IACD,OAAO,gBAAgB,CAAC;AACzB,CAAC,CAAC;AAEF,MAAM,sBAAsB,GAAG,CAAC,MAA6B,EAAE,EAAE,CAAC,CAAC;IAClE,SAAS,EAAE,MAAM,CAAC,SAAS;IAC3B,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,uBAAuB;IAClD,MAAM,EAAE,MAAM,CAAC,MAAM;CACrB,CAAC,CAAC;AAEH,MAAM,oBAAoB,GAAG,CAC5B,KAAyB,EACzB,SAOC,EACA,EAAE,CAAC,CAAC;IACL,YAAY;IACZ,WAAW,EAAE,SAAS,CAAC,WAAW;IAClC,WAAW,EAAE,SAAS,CAAC,WAAW;IAClC,KAAK,EAAE,SAAS,CAAC,KAAK;IACtB,QAAQ,EAAE,KAAc;IACxB,UAAU,EAAE,SAAS,CAAC,UAAU;IAChC,UAAU,EAAE,SAAS,CAAC,UAAU;IAChC,KAAK,EAAE;QACN,wBAAwB,KAAK,CAAC,MAAM,CAAC,IAAI,OAAO,KAAK,CAAC,WAAW,CAAC,IAAI,GAAG;QACzE,GAAG,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE,CAAC;KAC1B;CACD,CAAC,CAAC;AAEH,MAAM,uBAAuB,GAAG,KAAK,EACpC,SAAoD,EACpD,KAAyB,EACM,EAAE,CAAC,CAAC;IACnC,aAAa,EAAE,0BAA0B;IACzC,cAAc,EAAE,YAAY;IAC5B,YAAY,EAAE,UAAU;IACxB,OAAO,EAAE;QACR,oBAAoB,CAAC,KAAK,EAAE;YAC3B,WAAW,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,gBAAgB;YACtD,WAAW,EAAE,uBAAuB;YACpC,KAAK,EAAE,IAAI;YACX,UAAU,EAAE,CAAC;YACb,UAAU,EAAE,CAAC;YACb,KAAK,EAAE;gBACN,0BAA0B,SAAS,CAAC,OAAO,GAAG;gBAC9C,kDAAkD;aAClD;SACD,CAAC;KACF;CACD,CAAC,CAAC;AAEH,MAAM,wBAAwB,GAAG,KAAK,EACrC,SAAoD,EACpD,KAA0B,EACM,EAAE;IAClC,KAAK,SAAS,CAAC;IACf,KAAK,KAAK,CAAC;IACX,OAAO,cAAc,CAAC,GAAG,2BAA2B,eAAe,CAAC,CAAC;AACtE,CAAC,CAAC;AAcF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,SAAwB,EAAE,EAAmB,EAAE;IAC5E,MAAM,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACzD,MAAM,SAAS,GAAG,sBAAsB,CAAC,cAAc,CAAC,CAAC;IAEzD,OAAO;QACN,YAAY;QACZ,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,EAAE;YACtC,wBAAwB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACtC,MAAM,QAAQ,GAAG,uBAAuB,CACvC,0BAA0B,EAC1B,uBAAuB,EACvB,OAAO,CAAC,QAAQ,CAChB,CAAC;YACF,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;gBAC/B,OAAO,uBAAuB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAClD,CAAC;YACD,OAAO,cAAc,CAAC,GAAG,0BAA0B,KAAK,QAAQ,GAAG,CAAC,CAAC;QACtE,CAAC;QACD,KAAK,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,EAAE;YACvC,yBAAyB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACvC,MAAM,QAAQ,GAAG,uBAAuB,CACvC,2BAA2B,EAC3B,gCAAgC,EAChC,OAAO,CAAC,QAAQ,CAChB,CAAC;YACF,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;gBAC/B,OAAO,wBAAwB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YACnD,CAAC;YACD,OAAO,cAAc,CAAC,GAAG,2BAA2B,KAAK,QAAQ,GAAG,CAAC,CAAC;QACvE,CAAC;KACD,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { createShipmentInputSchema, createShipmentResultSchema, type CreateShipmentInput, type CreateShipmentResult, operationCode as createShipmentOperationCode } from '@opsregistry/contracts/delivery/create-shipment';
|
|
3
|
+
import { deliveryQuoteInputSchema, deliveryQuoteResultSchema, type DeliveryQuoteInput, type DeliveryQuoteResult, operationCode as deliveryQuoteOperationCode } from '@opsregistry/contracts/delivery/quote';
|
|
4
|
+
export declare const providerCode: "nrgtk";
|
|
5
|
+
export declare const authModeSchema: z.ZodEnum<{
|
|
6
|
+
public: "public";
|
|
7
|
+
authorized: "authorized";
|
|
8
|
+
}>;
|
|
9
|
+
export declare const supportedQuoteAuthModes: readonly ["authorized"];
|
|
10
|
+
export declare const supportedCreateShipmentAuthModes: readonly ["authorized"];
|
|
11
|
+
export declare const adapterConfigSchema: z.ZodObject<{
|
|
12
|
+
baseUrl: z.ZodOptional<z.ZodURL>;
|
|
13
|
+
apiKey: z.ZodOptional<z.ZodString>;
|
|
14
|
+
timeoutMs: z.ZodDefault<z.ZodNumber>;
|
|
15
|
+
}, z.core.$strip>;
|
|
16
|
+
export { createShipmentInputSchema, createShipmentResultSchema, deliveryQuoteInputSchema, deliveryQuoteResultSchema };
|
|
17
|
+
export { createShipmentOperationCode, deliveryQuoteOperationCode };
|
|
18
|
+
export type AdapterConfig = z.input<typeof adapterConfigSchema>;
|
|
19
|
+
export type AuthMode = z.infer<typeof authModeSchema>;
|
|
20
|
+
export type { CreateShipmentInput, CreateShipmentResult, DeliveryQuoteInput, DeliveryQuoteResult };
|
|
21
|
+
//# sourceMappingURL=contracts.d.ts.map
|
|
@@ -0,0 +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,OAAgB,CAAC;AAC7C,eAAO,MAAM,cAAc;;;EAAmC,CAAC;AAC/D,eAAO,MAAM,uBAAuB,yBAA0B,CAAC;AAC/D,eAAO,MAAM,gCAAgC,yBAA0B,CAAC;AAExE,eAAO,MAAM,mBAAmB;;;;iBAI9B,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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { createShipmentInputSchema, createShipmentResultSchema, operationCode as createShipmentOperationCode } from '@opsregistry/contracts/delivery/create-shipment';
|
|
3
|
+
import { deliveryQuoteInputSchema, deliveryQuoteResultSchema, operationCode as deliveryQuoteOperationCode } from '@opsregistry/contracts/delivery/quote';
|
|
4
|
+
export const providerCode = 'nrgtk';
|
|
5
|
+
export const authModeSchema = z.enum(['public', 'authorized']);
|
|
6
|
+
export const supportedQuoteAuthModes = ['authorized'];
|
|
7
|
+
export const supportedCreateShipmentAuthModes = ['authorized'];
|
|
8
|
+
export const adapterConfigSchema = z.object({
|
|
9
|
+
baseUrl: z.url().optional(),
|
|
10
|
+
apiKey: z.string().min(1).optional(),
|
|
11
|
+
timeoutMs: z.number().int().positive().default(30_000)
|
|
12
|
+
});
|
|
13
|
+
export { createShipmentInputSchema, createShipmentResultSchema, deliveryQuoteInputSchema, deliveryQuoteResultSchema };
|
|
14
|
+
export { createShipmentOperationCode, deliveryQuoteOperationCode };
|
|
15
|
+
//# sourceMappingURL=contracts.js.map
|
|
@@ -0,0 +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,OAAgB,CAAC;AAC7C,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;AAC/D,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,YAAY,CAAU,CAAC;AAC/D,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,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACpC,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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@opsregistry/adapter-nrgtk",
|
|
3
|
+
"version": "0.0.1",
|
|
4
|
+
"description": "Runtime adapter skeleton for mapping NRGTK APIs to opsregistry delivery operations.",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"packageManager": "bun@1.3.13",
|
|
8
|
+
"main": "./dist/index.js",
|
|
9
|
+
"types": "./dist/index.d.ts",
|
|
10
|
+
"files": [
|
|
11
|
+
"dist",
|
|
12
|
+
"README.md"
|
|
13
|
+
],
|
|
14
|
+
"scripts": {
|
|
15
|
+
"build": "tsc -p tsconfig.json",
|
|
16
|
+
"check": "tsc -p tsconfig.json --noEmit"
|
|
17
|
+
},
|
|
18
|
+
"dependencies": {
|
|
19
|
+
"@opsregistry/contracts": "https://registry.npmjs.org/@opsregistry/contracts/-/contracts-0.0.1.tgz",
|
|
20
|
+
"zod": "^4.4.3"
|
|
21
|
+
},
|
|
22
|
+
"devDependencies": {
|
|
23
|
+
"typescript": "^6.0.3"
|
|
24
|
+
}
|
|
25
|
+
}
|