didox 0.0.1 → 0.0.2
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 +9 -0
- package/dist/index.d.ts +138 -0
- package/dist/index.js +33 -0
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +33 -0
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -28,6 +28,8 @@ Before using the didox module, make sure to set the following environment variab
|
|
|
28
28
|
|
|
29
29
|
`TBC_DIDOX_PASSWORD`: Your didox password or API key secret.
|
|
30
30
|
|
|
31
|
+
`TBC_DIDOX_PARTNER_TOKEN`: Your didox partner token ( given by didox.uz ).
|
|
32
|
+
|
|
31
33
|
These environment variables are required for authentication when using the module. Be sure to keep them secure and do not expose them in your code.
|
|
32
34
|
|
|
33
35
|
## Usage
|
|
@@ -47,6 +49,13 @@ For detailed usage instructions and API documentation, please refer to the [docu
|
|
|
47
49
|
|
|
48
50
|
|
|
49
51
|
# Releases
|
|
52
|
+
### v0.0.2
|
|
53
|
+
- ***Updated*** [Documents](https://api-docs.didox.uz/ru/integrators-documents) controller
|
|
54
|
+
- Get documents count
|
|
55
|
+
- Get document information by ID
|
|
56
|
+
- Get document privileges ( Льготы ) by ID
|
|
57
|
+
- Create document
|
|
58
|
+
|
|
50
59
|
### v0.0.1
|
|
51
60
|
- ***Added*** support for [Account](https://api-docs.didox.uz/ru/integrators-account) controller
|
|
52
61
|
- Get account information
|
package/dist/index.d.ts
CHANGED
|
@@ -7,8 +7,146 @@ declare class Authorization {
|
|
|
7
7
|
static getUserToken(): Promise<any>;
|
|
8
8
|
}
|
|
9
9
|
|
|
10
|
+
interface IDocument {
|
|
11
|
+
version?: number;
|
|
12
|
+
didoxContractID?: string;
|
|
13
|
+
hasMarking?: boolean;
|
|
14
|
+
facturaType: number;
|
|
15
|
+
singleSidedType?: TSingleSided;
|
|
16
|
+
incomeType?: number;
|
|
17
|
+
facturaID: string;
|
|
18
|
+
facturaDoc: {
|
|
19
|
+
facturaNo: string;
|
|
20
|
+
facturaDate: string;
|
|
21
|
+
};
|
|
22
|
+
oldFacturaDoc?: {
|
|
23
|
+
oldFacturaID: string;
|
|
24
|
+
oldFacturaNo: string;
|
|
25
|
+
oldFacturaDate: string;
|
|
26
|
+
};
|
|
27
|
+
contractDoc: {
|
|
28
|
+
contractNo: string;
|
|
29
|
+
contractDate: string;
|
|
30
|
+
};
|
|
31
|
+
facturaEmpowermentDoc: {
|
|
32
|
+
agentFacturaID: string;
|
|
33
|
+
empowermentNo?: string;
|
|
34
|
+
empowermentDateOfIssue?: string;
|
|
35
|
+
agentPinfl?: string;
|
|
36
|
+
agentFIO?: string;
|
|
37
|
+
};
|
|
38
|
+
itemReleaseDoc?: {
|
|
39
|
+
itemReleaseFIO: string;
|
|
40
|
+
itemReleasePINFL: string;
|
|
41
|
+
};
|
|
42
|
+
sellerTIN: string;
|
|
43
|
+
buyerTIN: string;
|
|
44
|
+
lotID?: string;
|
|
45
|
+
contractID?: string;
|
|
46
|
+
waybillIDs?: Array<string>;
|
|
47
|
+
facturaInvestmentObjectDoc?: {
|
|
48
|
+
objectID: string;
|
|
49
|
+
objectName: string;
|
|
50
|
+
};
|
|
51
|
+
seller: IDocumentSellerInfo;
|
|
52
|
+
buyer: IDocumentBuyerInfo;
|
|
53
|
+
foreignCompany?: {
|
|
54
|
+
countryID: string;
|
|
55
|
+
name: string;
|
|
56
|
+
address?: string;
|
|
57
|
+
bank?: string;
|
|
58
|
+
account?: string;
|
|
59
|
+
};
|
|
60
|
+
productList: {
|
|
61
|
+
facturaProductId: string;
|
|
62
|
+
tin: string;
|
|
63
|
+
hasVAT: boolean;
|
|
64
|
+
hasExcise: boolean;
|
|
65
|
+
hasCommittent: boolean;
|
|
66
|
+
hasLgota?: boolean;
|
|
67
|
+
hideReportCommittent?: boolean;
|
|
68
|
+
hasMedical: boolean;
|
|
69
|
+
products: Array<IProduct>;
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
interface IDocumentSellerInfo {
|
|
73
|
+
name: string;
|
|
74
|
+
account?: string;
|
|
75
|
+
bankID?: string;
|
|
76
|
+
address?: string;
|
|
77
|
+
mobile?: string;
|
|
78
|
+
workPhone?: string;
|
|
79
|
+
oked?: string;
|
|
80
|
+
districtID?: string;
|
|
81
|
+
director?: string;
|
|
82
|
+
accountant?: string;
|
|
83
|
+
vatRegCode?: string;
|
|
84
|
+
vatRegStatus?: string;
|
|
85
|
+
branchCode?: string;
|
|
86
|
+
branchName?: string;
|
|
87
|
+
}
|
|
88
|
+
interface IDocumentBuyerInfo extends IDocumentSellerInfo {
|
|
89
|
+
}
|
|
90
|
+
interface IProduct {
|
|
91
|
+
ordNo: number;
|
|
92
|
+
committentName: string;
|
|
93
|
+
committentTIN: string;
|
|
94
|
+
committentVatRegCode: string;
|
|
95
|
+
catalogCode: string;
|
|
96
|
+
catalogName: string;
|
|
97
|
+
barcode?: string;
|
|
98
|
+
lgotaID?: string;
|
|
99
|
+
lgotaName?: string;
|
|
100
|
+
lgotaVatSum?: number;
|
|
101
|
+
lgotaType?: number;
|
|
102
|
+
warehouseID?: number;
|
|
103
|
+
marks?: {
|
|
104
|
+
productType: number;
|
|
105
|
+
kiz: Array<string>;
|
|
106
|
+
nomUpak: Array<string>;
|
|
107
|
+
identTransUpak: Array<string>;
|
|
108
|
+
};
|
|
109
|
+
exchangeInfo?: {
|
|
110
|
+
productCode: string;
|
|
111
|
+
productProperties: string;
|
|
112
|
+
planPositionID: number;
|
|
113
|
+
};
|
|
114
|
+
name: string;
|
|
115
|
+
serial: string;
|
|
116
|
+
measureID?: string;
|
|
117
|
+
packageCode: string;
|
|
118
|
+
packageName: string;
|
|
119
|
+
baseSumma: number;
|
|
120
|
+
profitRate: number;
|
|
121
|
+
count: string;
|
|
122
|
+
summa: string;
|
|
123
|
+
exciseRate: number;
|
|
124
|
+
exciseSum: number;
|
|
125
|
+
deliverySum: string;
|
|
126
|
+
vatRate: string;
|
|
127
|
+
vatSum: string;
|
|
128
|
+
deliverySumWithVAT: string;
|
|
129
|
+
withoutVAT: boolean;
|
|
130
|
+
origin: number;
|
|
131
|
+
}
|
|
132
|
+
type TSingleSided = 1 | // For an individual
|
|
133
|
+
2 | // Export of services (outside the territory of the Republic of Uzbekistan)
|
|
134
|
+
5 | // Financial services
|
|
135
|
+
6 | // Sales below market value
|
|
136
|
+
7 | // Sales below customs value
|
|
137
|
+
8 | // Export of services (in the territory of the Republic of Uzbekistan)
|
|
138
|
+
9 | // Other incomes
|
|
139
|
+
10 | // Submission of excisable goods for processing
|
|
140
|
+
11 | // Use of excisable goods for own needs
|
|
141
|
+
12 | // The difference between the price and cost of excisable goods
|
|
142
|
+
13;
|
|
143
|
+
|
|
10
144
|
declare class Document {
|
|
11
145
|
static getList(params: IDocumentGetListParamsInterface): Promise<any>;
|
|
146
|
+
static getCount(): Promise<any>;
|
|
147
|
+
static getInfo(id: string): Promise<any>;
|
|
148
|
+
static getPrivileges(id: string): Promise<any>;
|
|
149
|
+
static create(type: IDocumentType, data: IDocument): Promise<any>;
|
|
12
150
|
}
|
|
13
151
|
interface IDocumentGetListParamsInterface extends Object {
|
|
14
152
|
owner: 1 | 0;
|
package/dist/index.js
CHANGED
|
@@ -150,6 +150,39 @@ var Document = class {
|
|
|
150
150
|
return response.data;
|
|
151
151
|
});
|
|
152
152
|
}
|
|
153
|
+
static getCount() {
|
|
154
|
+
return __async(this, null, function* () {
|
|
155
|
+
const userKey = yield Authorization_default.getUserToken();
|
|
156
|
+
const response = yield Request_default.make({ type: "get", path: `/v1/documents/statistics/all`, headers: { "User-Key": userKey } });
|
|
157
|
+
return response.data;
|
|
158
|
+
});
|
|
159
|
+
}
|
|
160
|
+
static getInfo(id) {
|
|
161
|
+
return __async(this, null, function* () {
|
|
162
|
+
const userKey = yield Authorization_default.getUserToken();
|
|
163
|
+
const response = yield Request_default.make({ type: "get", path: `/v1/documents/${id}`, headers: { "User-Key": userKey } });
|
|
164
|
+
return response.data;
|
|
165
|
+
});
|
|
166
|
+
}
|
|
167
|
+
static getPrivileges(id) {
|
|
168
|
+
return __async(this, null, function* () {
|
|
169
|
+
const userKey = yield Authorization_default.getUserToken();
|
|
170
|
+
const response = yield Request_default.make({ type: "get", path: `/v1/documents/${id}/privileges`, headers: { "User-Key": userKey } });
|
|
171
|
+
return response.data;
|
|
172
|
+
});
|
|
173
|
+
}
|
|
174
|
+
static create(type, data) {
|
|
175
|
+
return __async(this, null, function* () {
|
|
176
|
+
const userKey = yield Authorization_default.getUserToken();
|
|
177
|
+
const response = yield Request_default.make({
|
|
178
|
+
type: "post",
|
|
179
|
+
path: `/v1/documents/${type}/create`,
|
|
180
|
+
data,
|
|
181
|
+
headers: { "User-Key": userKey }
|
|
182
|
+
});
|
|
183
|
+
return response.data;
|
|
184
|
+
});
|
|
185
|
+
}
|
|
153
186
|
};
|
|
154
187
|
var Document_default = Document;
|
|
155
188
|
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/controllers/Request.ts","../src/controllers/Authorization.ts","../src/controllers/Profile.ts","../src/controllers/Account.ts","../src/controllers/Document.ts"],"sourcesContent":["import { \n Authorization, \n Account, \n Profile, \n Document \n} from \"./controllers\";\n\nimport dotenv from 'dotenv';\ndotenv.config();\n\nexport {\n Account,\n Profile,\n Authorization,\n Document\n}","import axios, { Method } from \"axios\";\nimport { Authorization } from \"./\";\n\nclass Request {\n private static baseURL: string = \"https://stage.goodsign.biz/\";\n private static partnerToken: string = process.env.TBC_DIDOX_PARTNER_TOKEN || '';\n\n public static async make (options: IRequestOptions) {\n let headers = {\n \"Content-Type\": \"application/json\",\n \"Partner-Token\": this.partnerToken\n };\n\n Object.assign(headers, options.headers);\n\n return axios({\n method: options.type,\n url: Request.baseURL + options.path,\n data: options.data,\n headers: headers\n });\n }\n}\n\ninterface IRequestOptions {\n type: Method;\n path: string;\n data?: any;\n headers?: any;\n}\n\nexport default Request;","import Request from \"./Request\";\n\nclass Authorization {\n public static async getUserToken() {\n\n if ( !process.env.TBC_DIDOX_LOGIN || !process.env.TBC_DIDOX_PASSWORD ) {\n console.error('Please, edit your ENV variables as introduced in module Documentation');\n return false;\n }\n\n const response = await Request.make({\n type: 'post', \n path: `/v1/auth/${process.env.TBC_DIDOX_LOGIN}/token`, \n data: {\n \"password\": process.env.TBC_DIDOX_PASSWORD\n }\n });\n\n return response?.data.token;\n }\n}\n\nexport default Authorization;","import Authorization from \"./Authorization\";\nimport Request from \"./Request\";\n\nclass Profile {\n public static async getInfo() {\n const userKey = await Authorization.getUserToken();\n const response = await Request.make({type: 'get', path: `/v1/profile`, headers: { \"User-Key\": userKey } });\n\n return response.data;\n }\n}\n\n\n\nexport default Profile;","import Authorization from \"./Authorization\";\nimport Profile from \"./Profile\";\nimport Request from \"./Request\";\n\nclass Account {\n public static async getInfo() {\n const userKey = await Authorization.getUserToken();\n const response = await Request.make({type: 'get', path: `/v1/account`, headers: { \"User-Key\": userKey } });\n\n return response.data;\n }\n\n public static async getStatus(taxID?: string) {\n\n if ( !taxID ) {\n const profile = await Profile.getInfo();\n taxID = profile.tin;\n }\n \n const userKey = await Authorization.getUserToken();\n const response = await Request.make({type: 'get', path: `/v1/account/status/${taxID}`, headers: { \"User-Key\": userKey } });\n\n return response.data;\n }\n}\n\nexport default Account;","import Authorization from \"./Authorization\";\nimport Request from \"./Request\";\n\nclass Document {\n public static async getList (params: IDocumentGetListParamsInterface) {\n\n let queryParams : string = '?';\n queryParams += `owner=${params.owner || 1}`;\n queryParams += `&page=${params.page || 1}`;\n queryParams += `&limit=${params.limit || 20}`;\n\n const userKey = await Authorization.getUserToken();\n const response = await Request.make({type: 'get', path: `/v2/documents${queryParams}`, headers: { \"User-Key\": userKey } });\n \n return response.data;\n }\n}\n\ninterface IDocumentGetListParamsInterface extends Object {\n owner: 1 | 0;\n page?: number;\n limit?: number;\n\n dateFromCreated?: string;\n dateToCreated?: string;\n dateFromUpdated?: string;\n dateToUpdated?: string;\n signDateFrom?: string;\n signDateTo?: string;\n doctype?: IDocumentType;\n name?: string;\n sum?: number;\n docDateFromCreated?: string;\n docDateToCreated?: string;\n сontractname?: string;\n contractdate?: string;\n hasCommittent?: boolean;\n hasLgota?: boolean;\n hasMarks?: boolean;\n oneside?: boolean;\n\n}\n\ntype IDocumentType = \n'000' | // Custom Document\n'001' | // Invoice [Not used]\n'002' | // Invoice without request\n'004' | // Product Transport Document\n'005' | \n'006' | \n'007' | \n'008' | \n'052' | \n'054'\n\nexport default Document;"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,mBAA8B;AAG9B,IAAM,WAAN,MAAc;AAAA,EAIV,OAAoB,KAAM,SAA0B;AAAA;AAChD,UAAI,UAAU;AAAA,QACV,gBAAgB;AAAA,QAChB,iBAAiB,KAAK;AAAA,MAC1B;AAEA,aAAO,OAAO,SAAS,QAAQ,OAAO;AAEtC,iBAAO,aAAAA,SAAM;AAAA,QACT,QAAQ,QAAQ;AAAA,QAChB,KAAK,SAAQ,UAAU,QAAQ;AAAA,QAC/B,MAAM,QAAQ;AAAA,QACd;AAAA,MACJ,CAAC;AAAA,IACL;AAAA;AACJ;AAnBA,IAAM,UAAN;AAAM,QACa,UAAkB;AAD/B,QAEa,eAAuB,QAAQ,IAAI,2BAA2B;AA0BjF,IAAO,kBAAQ;;;AC7Bf,IAAM,gBAAN,MAAoB;AAAA,EAChB,OAAoB,eAAe;AAAA;AAE/B,UAAK,CAAC,QAAQ,IAAI,mBAAmB,CAAC,QAAQ,IAAI,oBAAqB;AACnE,gBAAQ,MAAM,uEAAuE;AACrF,eAAO;AAAA,MACX;AAEA,YAAM,WAAW,MAAM,gBAAQ,KAAK;AAAA,QAChC,MAAM;AAAA,QACN,MAAM,YAAY,QAAQ,IAAI;AAAA,QAC9B,MAAM;AAAA,UACF,YAAY,QAAQ,IAAI;AAAA,QAC5B;AAAA,MACJ,CAAC;AAED,aAAO,qCAAU,KAAK;AAAA,IAC1B;AAAA;AACJ;AAEA,IAAO,wBAAQ;;;ACnBf,IAAM,UAAN,MAAc;AAAA,EACV,OAAoB,UAAU;AAAA;AAC1B,YAAM,UAAU,MAAM,sBAAc,aAAa;AACjD,YAAM,WAAW,MAAM,gBAAQ,KAAK,EAAC,MAAM,OAAO,MAAM,eAAe,SAAS,EAAE,YAAY,QAAQ,EAAE,CAAC;AAEzG,aAAO,SAAS;AAAA,IACpB;AAAA;AACJ;AAIA,IAAO,kBAAQ;;;ACVf,IAAM,UAAN,MAAc;AAAA,EACV,OAAoB,UAAU;AAAA;AAC1B,YAAM,UAAU,MAAM,sBAAc,aAAa;AACjD,YAAM,WAAW,MAAM,gBAAQ,KAAK,EAAC,MAAM,OAAO,MAAM,eAAe,SAAS,EAAE,YAAY,QAAQ,EAAE,CAAC;AAEzG,aAAO,SAAS;AAAA,IACpB;AAAA;AAAA,EAEA,OAAoB,UAAU,OAAgB;AAAA;AAE1C,UAAK,CAAC,OAAQ;AACV,cAAM,UAAU,MAAM,gBAAQ,QAAQ;AACtC,gBAAQ,QAAQ;AAAA,MACpB;AAEA,YAAM,UAAU,MAAM,sBAAc,aAAa;AACjD,YAAM,WAAW,MAAM,gBAAQ,KAAK,EAAC,MAAM,OAAO,MAAM,sBAAsB,SAAS,SAAS,EAAE,YAAY,QAAQ,EAAE,CAAC;AAEzH,aAAO,SAAS;AAAA,IACpB;AAAA;AACJ;AAEA,IAAO,kBAAQ;;;
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/controllers/Request.ts","../src/controllers/Authorization.ts","../src/controllers/Profile.ts","../src/controllers/Account.ts","../src/controllers/Document.ts"],"sourcesContent":["import { \n Authorization, \n Account, \n Profile, \n Document \n} from \"./controllers\";\n\nimport dotenv from 'dotenv';\ndotenv.config();\n\nexport {\n Account,\n Profile,\n Authorization,\n Document\n}","import axios, { Method } from \"axios\";\nimport { Authorization } from \"./\";\n\nclass Request {\n private static baseURL: string = \"https://stage.goodsign.biz/\";\n private static partnerToken: string = process.env.TBC_DIDOX_PARTNER_TOKEN || '';\n\n public static async make (options: IRequestOptions) {\n let headers = {\n \"Content-Type\": \"application/json\",\n \"Partner-Token\": this.partnerToken\n };\n\n Object.assign(headers, options.headers);\n\n return axios({\n method: options.type,\n url: Request.baseURL + options.path,\n data: options.data,\n headers: headers\n });\n }\n}\n\ninterface IRequestOptions {\n type: Method;\n path: string;\n data?: any;\n headers?: any;\n}\n\nexport default Request;","import Request from \"./Request\";\n\nclass Authorization {\n public static async getUserToken() {\n\n if ( !process.env.TBC_DIDOX_LOGIN || !process.env.TBC_DIDOX_PASSWORD ) {\n console.error('Please, edit your ENV variables as introduced in module Documentation');\n return false;\n }\n\n const response = await Request.make({\n type: 'post', \n path: `/v1/auth/${process.env.TBC_DIDOX_LOGIN}/token`, \n data: {\n \"password\": process.env.TBC_DIDOX_PASSWORD\n }\n });\n\n return response?.data.token;\n }\n}\n\nexport default Authorization;","import Authorization from \"./Authorization\";\nimport Request from \"./Request\";\n\nclass Profile {\n public static async getInfo() {\n const userKey = await Authorization.getUserToken();\n const response = await Request.make({type: 'get', path: `/v1/profile`, headers: { \"User-Key\": userKey } });\n\n return response.data;\n }\n}\n\n\n\nexport default Profile;","import Authorization from \"./Authorization\";\nimport Profile from \"./Profile\";\nimport Request from \"./Request\";\n\nclass Account {\n public static async getInfo() {\n const userKey = await Authorization.getUserToken();\n const response = await Request.make({type: 'get', path: `/v1/account`, headers: { \"User-Key\": userKey } });\n\n return response.data;\n }\n\n public static async getStatus(taxID?: string) {\n\n if ( !taxID ) {\n const profile = await Profile.getInfo();\n taxID = profile.tin;\n }\n \n const userKey = await Authorization.getUserToken();\n const response = await Request.make({type: 'get', path: `/v1/account/status/${taxID}`, headers: { \"User-Key\": userKey } });\n\n return response.data;\n }\n}\n\nexport default Account;","import { IDocument } from \"../interfaces\";\nimport Authorization from \"./Authorization\";\nimport Request from \"./Request\";\n\nclass Document {\n public static async getList (params: IDocumentGetListParamsInterface) {\n\n let queryParams : string = '?';\n queryParams += `owner=${params.owner || 1}`;\n queryParams += `&page=${params.page || 1}`;\n queryParams += `&limit=${params.limit || 20}`;\n\n const userKey = await Authorization.getUserToken();\n const response = await Request.make({type: 'get', path: `/v2/documents${queryParams}`, headers: { \"User-Key\": userKey } });\n \n return response.data;\n }\n\n public static async getCount () {\n const userKey = await Authorization.getUserToken();\n const response = await Request.make({type: 'get', path: `/v1/documents/statistics/all`, headers: { \"User-Key\": userKey } });\n \n return response.data;\n }\n\n public static async getInfo (id: string) {\n const userKey = await Authorization.getUserToken();\n const response = await Request.make({type: 'get', path: `/v1/documents/${id}`, headers: { \"User-Key\": userKey } });\n \n return response.data;\n }\n\n public static async getPrivileges (id: string) {\n const userKey = await Authorization.getUserToken();\n const response = await Request.make({type: 'get', path: `/v1/documents/${id}/privileges`, headers: { \"User-Key\": userKey } });\n \n return response.data;\n }\n\n public static async create (type: IDocumentType, data: IDocument) {\n const userKey = await Authorization.getUserToken();\n const response = await Request.make({\n type: 'post', \n path: `/v1/documents/${type}/create`,\n data: data,\n headers: { \"User-Key\": userKey } \n });\n \n return response.data;\n }\n}\n\ninterface IDocumentGetListParamsInterface extends Object {\n owner: 1 | 0;\n page?: number;\n limit?: number;\n\n dateFromCreated?: string;\n dateToCreated?: string;\n dateFromUpdated?: string;\n dateToUpdated?: string;\n signDateFrom?: string;\n signDateTo?: string;\n doctype?: IDocumentType;\n name?: string;\n sum?: number;\n docDateFromCreated?: string;\n docDateToCreated?: string;\n сontractname?: string;\n contractdate?: string;\n hasCommittent?: boolean;\n hasLgota?: boolean;\n hasMarks?: boolean;\n oneside?: boolean;\n\n}\n\ntype IDocumentType = \n'000' | // Custom Document\n'001' | // Invoice [Not used]\n'002' | // Invoice without request\n'004' | // Product Transport Document\n'005' | \n'006' | \n'007' | \n'008' | \n'052' | \n'054'\n\nexport default Document;"],"mappings":"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","names":["axios","dotenv"]}
|
package/dist/index.mjs
CHANGED
|
@@ -112,6 +112,39 @@ var Document = class {
|
|
|
112
112
|
return response.data;
|
|
113
113
|
});
|
|
114
114
|
}
|
|
115
|
+
static getCount() {
|
|
116
|
+
return __async(this, null, function* () {
|
|
117
|
+
const userKey = yield Authorization_default.getUserToken();
|
|
118
|
+
const response = yield Request_default.make({ type: "get", path: `/v1/documents/statistics/all`, headers: { "User-Key": userKey } });
|
|
119
|
+
return response.data;
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
static getInfo(id) {
|
|
123
|
+
return __async(this, null, function* () {
|
|
124
|
+
const userKey = yield Authorization_default.getUserToken();
|
|
125
|
+
const response = yield Request_default.make({ type: "get", path: `/v1/documents/${id}`, headers: { "User-Key": userKey } });
|
|
126
|
+
return response.data;
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
static getPrivileges(id) {
|
|
130
|
+
return __async(this, null, function* () {
|
|
131
|
+
const userKey = yield Authorization_default.getUserToken();
|
|
132
|
+
const response = yield Request_default.make({ type: "get", path: `/v1/documents/${id}/privileges`, headers: { "User-Key": userKey } });
|
|
133
|
+
return response.data;
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
static create(type, data) {
|
|
137
|
+
return __async(this, null, function* () {
|
|
138
|
+
const userKey = yield Authorization_default.getUserToken();
|
|
139
|
+
const response = yield Request_default.make({
|
|
140
|
+
type: "post",
|
|
141
|
+
path: `/v1/documents/${type}/create`,
|
|
142
|
+
data,
|
|
143
|
+
headers: { "User-Key": userKey }
|
|
144
|
+
});
|
|
145
|
+
return response.data;
|
|
146
|
+
});
|
|
147
|
+
}
|
|
115
148
|
};
|
|
116
149
|
var Document_default = Document;
|
|
117
150
|
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/controllers/Request.ts","../src/controllers/Authorization.ts","../src/controllers/Profile.ts","../src/controllers/Account.ts","../src/controllers/Document.ts","../src/index.ts"],"sourcesContent":["import axios, { Method } from \"axios\";\nimport { Authorization } from \"./\";\n\nclass Request {\n private static baseURL: string = \"https://stage.goodsign.biz/\";\n private static partnerToken: string = process.env.TBC_DIDOX_PARTNER_TOKEN || '';\n\n public static async make (options: IRequestOptions) {\n let headers = {\n \"Content-Type\": \"application/json\",\n \"Partner-Token\": this.partnerToken\n };\n\n Object.assign(headers, options.headers);\n\n return axios({\n method: options.type,\n url: Request.baseURL + options.path,\n data: options.data,\n headers: headers\n });\n }\n}\n\ninterface IRequestOptions {\n type: Method;\n path: string;\n data?: any;\n headers?: any;\n}\n\nexport default Request;","import Request from \"./Request\";\n\nclass Authorization {\n public static async getUserToken() {\n\n if ( !process.env.TBC_DIDOX_LOGIN || !process.env.TBC_DIDOX_PASSWORD ) {\n console.error('Please, edit your ENV variables as introduced in module Documentation');\n return false;\n }\n\n const response = await Request.make({\n type: 'post', \n path: `/v1/auth/${process.env.TBC_DIDOX_LOGIN}/token`, \n data: {\n \"password\": process.env.TBC_DIDOX_PASSWORD\n }\n });\n\n return response?.data.token;\n }\n}\n\nexport default Authorization;","import Authorization from \"./Authorization\";\nimport Request from \"./Request\";\n\nclass Profile {\n public static async getInfo() {\n const userKey = await Authorization.getUserToken();\n const response = await Request.make({type: 'get', path: `/v1/profile`, headers: { \"User-Key\": userKey } });\n\n return response.data;\n }\n}\n\n\n\nexport default Profile;","import Authorization from \"./Authorization\";\nimport Profile from \"./Profile\";\nimport Request from \"./Request\";\n\nclass Account {\n public static async getInfo() {\n const userKey = await Authorization.getUserToken();\n const response = await Request.make({type: 'get', path: `/v1/account`, headers: { \"User-Key\": userKey } });\n\n return response.data;\n }\n\n public static async getStatus(taxID?: string) {\n\n if ( !taxID ) {\n const profile = await Profile.getInfo();\n taxID = profile.tin;\n }\n \n const userKey = await Authorization.getUserToken();\n const response = await Request.make({type: 'get', path: `/v1/account/status/${taxID}`, headers: { \"User-Key\": userKey } });\n\n return response.data;\n }\n}\n\nexport default Account;","import Authorization from \"./Authorization\";\nimport Request from \"./Request\";\n\nclass Document {\n public static async getList (params: IDocumentGetListParamsInterface) {\n\n let queryParams : string = '?';\n queryParams += `owner=${params.owner || 1}`;\n queryParams += `&page=${params.page || 1}`;\n queryParams += `&limit=${params.limit || 20}`;\n\n const userKey = await Authorization.getUserToken();\n const response = await Request.make({type: 'get', path: `/v2/documents${queryParams}`, headers: { \"User-Key\": userKey } });\n \n return response.data;\n }\n}\n\ninterface IDocumentGetListParamsInterface extends Object {\n owner: 1 | 0;\n page?: number;\n limit?: number;\n\n dateFromCreated?: string;\n dateToCreated?: string;\n dateFromUpdated?: string;\n dateToUpdated?: string;\n signDateFrom?: string;\n signDateTo?: string;\n doctype?: IDocumentType;\n name?: string;\n sum?: number;\n docDateFromCreated?: string;\n docDateToCreated?: string;\n сontractname?: string;\n contractdate?: string;\n hasCommittent?: boolean;\n hasLgota?: boolean;\n hasMarks?: boolean;\n oneside?: boolean;\n\n}\n\ntype IDocumentType = \n'000' | // Custom Document\n'001' | // Invoice [Not used]\n'002' | // Invoice without request\n'004' | // Product Transport Document\n'005' | \n'006' | \n'007' | \n'008' | \n'052' | \n'054'\n\nexport default Document;","import { \n Authorization, \n Account, \n Profile, \n Document \n} from \"./controllers\";\n\nimport dotenv from 'dotenv';\ndotenv.config();\n\nexport {\n Account,\n Profile,\n Authorization,\n Document\n}"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,WAAuB;AAG9B,IAAM,WAAN,MAAc;AAAA,EAIV,OAAoB,KAAM,SAA0B;AAAA;AAChD,UAAI,UAAU;AAAA,QACV,gBAAgB;AAAA,QAChB,iBAAiB,KAAK;AAAA,MAC1B;AAEA,aAAO,OAAO,SAAS,QAAQ,OAAO;AAEtC,aAAO,MAAM;AAAA,QACT,QAAQ,QAAQ;AAAA,QAChB,KAAK,SAAQ,UAAU,QAAQ;AAAA,QAC/B,MAAM,QAAQ;AAAA,QACd;AAAA,MACJ,CAAC;AAAA,IACL;AAAA;AACJ;AAnBA,IAAM,UAAN;AAAM,QACa,UAAkB;AAD/B,QAEa,eAAuB,QAAQ,IAAI,2BAA2B;AA0BjF,IAAO,kBAAQ;;;AC7Bf,IAAM,gBAAN,MAAoB;AAAA,EAChB,OAAoB,eAAe;AAAA;AAE/B,UAAK,CAAC,QAAQ,IAAI,mBAAmB,CAAC,QAAQ,IAAI,oBAAqB;AACnE,gBAAQ,MAAM,uEAAuE;AACrF,eAAO;AAAA,MACX;AAEA,YAAM,WAAW,MAAM,gBAAQ,KAAK;AAAA,QAChC,MAAM;AAAA,QACN,MAAM,YAAY,QAAQ,IAAI;AAAA,QAC9B,MAAM;AAAA,UACF,YAAY,QAAQ,IAAI;AAAA,QAC5B;AAAA,MACJ,CAAC;AAED,aAAO,qCAAU,KAAK;AAAA,IAC1B;AAAA;AACJ;AAEA,IAAO,wBAAQ;;;ACnBf,IAAM,UAAN,MAAc;AAAA,EACV,OAAoB,UAAU;AAAA;AAC1B,YAAM,UAAU,MAAM,sBAAc,aAAa;AACjD,YAAM,WAAW,MAAM,gBAAQ,KAAK,EAAC,MAAM,OAAO,MAAM,eAAe,SAAS,EAAE,YAAY,QAAQ,EAAE,CAAC;AAEzG,aAAO,SAAS;AAAA,IACpB;AAAA;AACJ;AAIA,IAAO,kBAAQ;;;ACVf,IAAM,UAAN,MAAc;AAAA,EACV,OAAoB,UAAU;AAAA;AAC1B,YAAM,UAAU,MAAM,sBAAc,aAAa;AACjD,YAAM,WAAW,MAAM,gBAAQ,KAAK,EAAC,MAAM,OAAO,MAAM,eAAe,SAAS,EAAE,YAAY,QAAQ,EAAE,CAAC;AAEzG,aAAO,SAAS;AAAA,IACpB;AAAA;AAAA,EAEA,OAAoB,UAAU,OAAgB;AAAA;AAE1C,UAAK,CAAC,OAAQ;AACV,cAAM,UAAU,MAAM,gBAAQ,QAAQ;AACtC,gBAAQ,QAAQ;AAAA,MACpB;AAEA,YAAM,UAAU,MAAM,sBAAc,aAAa;AACjD,YAAM,WAAW,MAAM,gBAAQ,KAAK,EAAC,MAAM,OAAO,MAAM,sBAAsB,SAAS,SAAS,EAAE,YAAY,QAAQ,EAAE,CAAC;AAEzH,aAAO,SAAS;AAAA,IACpB;AAAA;AACJ;AAEA,IAAO,kBAAQ;;;
|
|
1
|
+
{"version":3,"sources":["../src/controllers/Request.ts","../src/controllers/Authorization.ts","../src/controllers/Profile.ts","../src/controllers/Account.ts","../src/controllers/Document.ts","../src/index.ts"],"sourcesContent":["import axios, { Method } from \"axios\";\nimport { Authorization } from \"./\";\n\nclass Request {\n private static baseURL: string = \"https://stage.goodsign.biz/\";\n private static partnerToken: string = process.env.TBC_DIDOX_PARTNER_TOKEN || '';\n\n public static async make (options: IRequestOptions) {\n let headers = {\n \"Content-Type\": \"application/json\",\n \"Partner-Token\": this.partnerToken\n };\n\n Object.assign(headers, options.headers);\n\n return axios({\n method: options.type,\n url: Request.baseURL + options.path,\n data: options.data,\n headers: headers\n });\n }\n}\n\ninterface IRequestOptions {\n type: Method;\n path: string;\n data?: any;\n headers?: any;\n}\n\nexport default Request;","import Request from \"./Request\";\n\nclass Authorization {\n public static async getUserToken() {\n\n if ( !process.env.TBC_DIDOX_LOGIN || !process.env.TBC_DIDOX_PASSWORD ) {\n console.error('Please, edit your ENV variables as introduced in module Documentation');\n return false;\n }\n\n const response = await Request.make({\n type: 'post', \n path: `/v1/auth/${process.env.TBC_DIDOX_LOGIN}/token`, \n data: {\n \"password\": process.env.TBC_DIDOX_PASSWORD\n }\n });\n\n return response?.data.token;\n }\n}\n\nexport default Authorization;","import Authorization from \"./Authorization\";\nimport Request from \"./Request\";\n\nclass Profile {\n public static async getInfo() {\n const userKey = await Authorization.getUserToken();\n const response = await Request.make({type: 'get', path: `/v1/profile`, headers: { \"User-Key\": userKey } });\n\n return response.data;\n }\n}\n\n\n\nexport default Profile;","import Authorization from \"./Authorization\";\nimport Profile from \"./Profile\";\nimport Request from \"./Request\";\n\nclass Account {\n public static async getInfo() {\n const userKey = await Authorization.getUserToken();\n const response = await Request.make({type: 'get', path: `/v1/account`, headers: { \"User-Key\": userKey } });\n\n return response.data;\n }\n\n public static async getStatus(taxID?: string) {\n\n if ( !taxID ) {\n const profile = await Profile.getInfo();\n taxID = profile.tin;\n }\n \n const userKey = await Authorization.getUserToken();\n const response = await Request.make({type: 'get', path: `/v1/account/status/${taxID}`, headers: { \"User-Key\": userKey } });\n\n return response.data;\n }\n}\n\nexport default Account;","import { IDocument } from \"../interfaces\";\nimport Authorization from \"./Authorization\";\nimport Request from \"./Request\";\n\nclass Document {\n public static async getList (params: IDocumentGetListParamsInterface) {\n\n let queryParams : string = '?';\n queryParams += `owner=${params.owner || 1}`;\n queryParams += `&page=${params.page || 1}`;\n queryParams += `&limit=${params.limit || 20}`;\n\n const userKey = await Authorization.getUserToken();\n const response = await Request.make({type: 'get', path: `/v2/documents${queryParams}`, headers: { \"User-Key\": userKey } });\n \n return response.data;\n }\n\n public static async getCount () {\n const userKey = await Authorization.getUserToken();\n const response = await Request.make({type: 'get', path: `/v1/documents/statistics/all`, headers: { \"User-Key\": userKey } });\n \n return response.data;\n }\n\n public static async getInfo (id: string) {\n const userKey = await Authorization.getUserToken();\n const response = await Request.make({type: 'get', path: `/v1/documents/${id}`, headers: { \"User-Key\": userKey } });\n \n return response.data;\n }\n\n public static async getPrivileges (id: string) {\n const userKey = await Authorization.getUserToken();\n const response = await Request.make({type: 'get', path: `/v1/documents/${id}/privileges`, headers: { \"User-Key\": userKey } });\n \n return response.data;\n }\n\n public static async create (type: IDocumentType, data: IDocument) {\n const userKey = await Authorization.getUserToken();\n const response = await Request.make({\n type: 'post', \n path: `/v1/documents/${type}/create`,\n data: data,\n headers: { \"User-Key\": userKey } \n });\n \n return response.data;\n }\n}\n\ninterface IDocumentGetListParamsInterface extends Object {\n owner: 1 | 0;\n page?: number;\n limit?: number;\n\n dateFromCreated?: string;\n dateToCreated?: string;\n dateFromUpdated?: string;\n dateToUpdated?: string;\n signDateFrom?: string;\n signDateTo?: string;\n doctype?: IDocumentType;\n name?: string;\n sum?: number;\n docDateFromCreated?: string;\n docDateToCreated?: string;\n сontractname?: string;\n contractdate?: string;\n hasCommittent?: boolean;\n hasLgota?: boolean;\n hasMarks?: boolean;\n oneside?: boolean;\n\n}\n\ntype IDocumentType = \n'000' | // Custom Document\n'001' | // Invoice [Not used]\n'002' | // Invoice without request\n'004' | // Product Transport Document\n'005' | \n'006' | \n'007' | \n'008' | \n'052' | \n'054'\n\nexport default Document;","import { \n Authorization, \n Account, \n Profile, \n Document \n} from \"./controllers\";\n\nimport dotenv from 'dotenv';\ndotenv.config();\n\nexport {\n Account,\n Profile,\n Authorization,\n Document\n}"],"mappings":"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","names":[]}
|