@blob-solutions/vcr-am-sdk 0.5.0 → 0.6.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/lib/index.cjs +1 -1
- package/lib/index.cjs.map +1 -1
- package/lib/index.d.cts +5 -1
- package/lib/index.d.ts +5 -1
- package/lib/index.global.js +5 -5
- package/lib/index.global.js.map +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/package.json +4 -4
package/lib/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{fetchWithValidation as
|
|
1
|
+
import{fetchWithValidation as n,simpleFetch as o}from"simple-typed-fetch";import{z as e}from"zod";var i="https://vcr.am/api/v1",l=e.object({urlId:e.string(),saleId:e.number(),crn:e.string(),srcReceiptId:e.number().int(),fiscal:e.string()}),p=e.object({error:e.string()}),r=class{constructor(a){this.apiKey=a}async registerSale(a){return await o(async()=>await n(`${i}/sales`,l,{method:"POST",headers:{"x-api-key":this.apiKey,"Content-Type":"application/json"},body:JSON.stringify(a)},p))()}async searchClassifierCategory(a,s,c){let t=new URL(`${i}/searchClassifier`);return t.searchParams.append("query",a),t.searchParams.append("type",s),t.searchParams.append("language",c),await o(async()=>await n(t.toString(),e.array(e.object({code:e.string(),title:e.string()})),{method:"GET",headers:{"x-api-key":this.apiKey,"Content-Type":"application/json"}},p))()}};var u=["pc","unit","set","box","pack","case","hr","sess","proj","sub","kg","l","m","g","ml","cm","bottle","can","jar","bag","m2","dozen","pair","mm","roll","tube","km","ton","m3","pallet","other"],d=["hy","ru","en"];export{d as AVAILABLE_LANGUAGES,r as VCRClient,u as unitsKeys};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/VCRClient.ts","../src/constants.ts"],"sourcesContent":["import { fetchWithValidation, simpleFetch } from \"simple-typed-fetch\";\nimport { z } from \"zod\";\n\nimport type { SaleData } from \"./types\";\n\nconst API_URL = \"https://vcr.am/api/v1\";\n\nconst saleResponseSchema = z.object({\n urlId: z.string(),\n saleId: z.number(),\n crn: z.string(),\n srcReceiptId: z.number().int(),\n fiscal: z.string(),\n});\n\nexport default class VCRClient {\n constructor(private readonly apiKey: string) {}\n\n async registerSale(data: SaleData) {\n const responseData = await simpleFetch(\n async () =>\n await fetchWithValidation(\n `${API_URL}/sales`,\n saleResponseSchema,\n {\n method: \"POST\",\n headers: {\n \"x-api-key\": this.apiKey,\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify(data),\n },\n z.object({
|
|
1
|
+
{"version":3,"sources":["../src/VCRClient.ts","../src/constants.ts"],"sourcesContent":["import { fetchWithValidation, simpleFetch } from \"simple-typed-fetch\";\nimport { z } from \"zod\";\n\nimport type { Language, SaleData } from \"./types\";\n\nconst API_URL = \"https://vcr.am/api/v1\";\n\nconst saleResponseSchema = z.object({\n urlId: z.string(),\n saleId: z.number(),\n crn: z.string(),\n srcReceiptId: z.number().int(),\n fiscal: z.string(),\n});\n\nconst errorResponseSchema = z.object({\n error: z.string(),\n});\n\nexport default class VCRClient {\n constructor(private readonly apiKey: string) {}\n\n async registerSale(data: SaleData) {\n const responseData = await simpleFetch(\n async () =>\n await fetchWithValidation(\n `${API_URL}/sales`,\n saleResponseSchema,\n {\n method: \"POST\",\n headers: {\n \"x-api-key\": this.apiKey,\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify(data),\n },\n errorResponseSchema\n )\n )();\n\n return responseData;\n }\n\n async searchClassifierCategory(\n query: string,\n type: \"product\" | \"service\",\n language: Language\n ) {\n const url = new URL(`${API_URL}/searchClassifier`);\n url.searchParams.append(\"query\", query);\n url.searchParams.append(\"type\", type);\n url.searchParams.append(\"language\", language);\n\n return await simpleFetch(\n async () =>\n await fetchWithValidation(\n url.toString(),\n z.array(z.object({ code: z.string(), title: z.string() })),\n {\n method: \"GET\",\n headers: {\n \"x-api-key\": this.apiKey,\n \"Content-Type\": \"application/json\",\n },\n },\n errorResponseSchema\n )\n )();\n }\n}\n","export const unitsKeys = [\n \"pc\",\n \"unit\",\n \"set\",\n \"box\",\n \"pack\",\n \"case\",\n \"hr\",\n \"sess\",\n \"proj\",\n \"sub\",\n \"kg\",\n \"l\",\n \"m\",\n \"g\",\n \"ml\",\n \"cm\",\n \"bottle\",\n \"can\",\n \"jar\",\n \"bag\",\n \"m2\",\n \"dozen\",\n \"pair\",\n \"mm\",\n \"roll\",\n \"tube\",\n \"km\",\n \"ton\",\n \"m3\",\n \"pallet\",\n \"other\",\n] as const;\n\nexport const AVAILABLE_LANGUAGES = [\"hy\", \"ru\", \"en\"] as const;\n"],"mappings":"AAAA,OAAS,uBAAAA,EAAqB,eAAAC,MAAmB,qBACjD,OAAS,KAAAC,MAAS,MAIlB,IAAMC,EAAU,wBAEVC,EAAqBF,EAAE,OAAO,CAClC,MAAOA,EAAE,OAAO,EAChB,OAAQA,EAAE,OAAO,EACjB,IAAKA,EAAE,OAAO,EACd,aAAcA,EAAE,OAAO,EAAE,IAAI,EAC7B,OAAQA,EAAE,OAAO,CACnB,CAAC,EAEKG,EAAsBH,EAAE,OAAO,CACnC,MAAOA,EAAE,OAAO,CAClB,CAAC,EAEoBI,EAArB,KAA+B,CAC7B,YAA6BC,EAAgB,CAAhB,YAAAA,CAAiB,CAE9C,MAAM,aAAaC,EAAgB,CAkBjC,OAjBqB,MAAMP,EACzB,SACE,MAAMD,EACJ,GAAGG,CAAO,SACVC,EACA,CACE,OAAQ,OACR,QAAS,CACP,YAAa,KAAK,OAClB,eAAgB,kBAClB,EACA,KAAM,KAAK,UAAUI,CAAI,CAC3B,EACAH,CACF,CACJ,EAAE,CAGJ,CAEA,MAAM,yBACJI,EACAC,EACAC,EACA,CACA,IAAMC,EAAM,IAAI,IAAI,GAAGT,CAAO,mBAAmB,EACjD,OAAAS,EAAI,aAAa,OAAO,QAASH,CAAK,EACtCG,EAAI,aAAa,OAAO,OAAQF,CAAI,EACpCE,EAAI,aAAa,OAAO,WAAYD,CAAQ,EAErC,MAAMV,EACX,SACE,MAAMD,EACJY,EAAI,SAAS,EACbV,EAAE,MAAMA,EAAE,OAAO,CAAE,KAAMA,EAAE,OAAO,EAAG,MAAOA,EAAE,OAAO,CAAE,CAAC,CAAC,EACzD,CACE,OAAQ,MACR,QAAS,CACP,YAAa,KAAK,OAClB,eAAgB,kBAClB,CACF,EACAG,CACF,CACJ,EAAE,CACJ,CACF,ECrEO,IAAMQ,EAAY,CACvB,KACA,OACA,MACA,MACA,OACA,OACA,KACA,OACA,OACA,MACA,KACA,IACA,IACA,IACA,KACA,KACA,SACA,MACA,MACA,MACA,KACA,QACA,OACA,KACA,OACA,OACA,KACA,MACA,KACA,SACA,OACF,EAEaC,EAAsB,CAAC,KAAM,KAAM,IAAI","names":["fetchWithValidation","simpleFetch","z","API_URL","saleResponseSchema","errorResponseSchema","VCRClient","apiKey","data","query","type","language","url","unitsKeys","AVAILABLE_LANGUAGES"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@blob-solutions/vcr-am-sdk",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"virtual cash register",
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
},
|
|
41
41
|
"dependencies": {
|
|
42
42
|
"simple-typed-fetch": "^0.2.13",
|
|
43
|
-
"typescript": "^5.
|
|
43
|
+
"typescript": "^5.6.2",
|
|
44
44
|
"unfetch": "^5.0.0",
|
|
45
45
|
"zod": "^3.23.8"
|
|
46
46
|
},
|
|
@@ -48,8 +48,8 @@
|
|
|
48
48
|
"@tsconfig/node20": "^20.1.4",
|
|
49
49
|
"@tsconfig/strictest": "^2.0.5",
|
|
50
50
|
"@types/node": "^20.14.2",
|
|
51
|
-
"tsup": "^8.
|
|
52
|
-
"type-fest": "^4.
|
|
51
|
+
"tsup": "^8.2.4",
|
|
52
|
+
"type-fest": "^4.26.1"
|
|
53
53
|
},
|
|
54
54
|
"publishConfig": {
|
|
55
55
|
"access": "public"
|