@emilgroup/billing-sdk-node 1.1.0 → 1.4.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.
Files changed (245) hide show
  1. package/.openapi-generator/FILES +53 -20
  2. package/README.md +2 -2
  3. package/api/documents-api.ts +442 -0
  4. package/api/leads-api.ts +482 -0
  5. package/api/{recurring-invoices-api.ts → notifications-api.ts} +47 -43
  6. package/api/payments-setup-api.ts +408 -0
  7. package/api/products-api.ts +891 -0
  8. package/api.ts +13 -18
  9. package/base.ts +30 -39
  10. package/common.ts +64 -3
  11. package/configuration.ts +3 -3
  12. package/dist/api/documents-api.d.ts +252 -0
  13. package/dist/api/documents-api.js +443 -0
  14. package/dist/api/leads-api.d.ts +266 -0
  15. package/dist/api/leads-api.js +506 -0
  16. package/dist/api/notifications-api.d.ts +97 -0
  17. package/dist/api/{recurring-invoices-api.js → notifications-api.js} +47 -43
  18. package/dist/api/payments-setup-api.d.ts +228 -0
  19. package/dist/api/payments-setup-api.js +426 -0
  20. package/dist/api/products-api.d.ts +497 -0
  21. package/dist/api/products-api.js +827 -0
  22. package/dist/api.d.ts +8 -12
  23. package/dist/api.js +8 -14
  24. package/dist/base.d.ts +7 -7
  25. package/dist/base.js +27 -28
  26. package/dist/common.d.ts +29 -3
  27. package/dist/common.js +38 -5
  28. package/dist/configuration.d.ts +3 -3
  29. package/dist/configuration.js +3 -3
  30. package/dist/index.d.ts +4 -4
  31. package/dist/index.js +5 -4
  32. package/dist/models/complete-braintree-payment-setup-request-dto.d.ts +48 -0
  33. package/dist/models/{create-custom-estimated-invoice-response-class.js → complete-braintree-payment-setup-request-dto.js} +3 -3
  34. package/dist/models/complete-payment-setup-request-dto.d.ts +32 -0
  35. package/dist/models/{create-correction-invoices-response-class.js → complete-payment-setup-request-dto.js} +3 -3
  36. package/dist/models/complete-payment-setup-response-class.d.ts +25 -0
  37. package/dist/models/{list-invoices-response-class.js → complete-payment-setup-response-class.js} +3 -3
  38. package/dist/models/complete-stripe-payment-setup-request-dto.d.ts +60 -0
  39. package/dist/models/{create-invoice-response-class.js → complete-stripe-payment-setup-request-dto.js} +3 -3
  40. package/dist/models/create-account-request-dto.d.ts +132 -0
  41. package/dist/models/create-account-request-dto.js +31 -0
  42. package/dist/models/create-bank-account-request-dto.d.ts +30 -0
  43. package/dist/models/create-bank-account-request-dto.js +15 -0
  44. package/dist/models/create-custom-application-request-dto.d.ts +35 -0
  45. package/dist/models/{create-custom-estimated-invoice-request-dto.js → create-custom-application-request-dto.js} +5 -5
  46. package/dist/models/create-custom-application-response-class.d.ts +24 -0
  47. package/dist/models/create-custom-application-response-class.js +15 -0
  48. package/dist/models/create-document-request-dto.d.ts +101 -0
  49. package/dist/models/create-document-request-dto.js +31 -0
  50. package/dist/models/create-estimated-invoice-request-dto.d.ts +33 -9
  51. package/dist/models/create-estimated-invoice-request-dto.js +8 -3
  52. package/dist/models/create-estimated-invoice-response-class.d.ts +7 -7
  53. package/dist/models/create-estimated-invoice-response-class.js +3 -3
  54. package/dist/models/create-lead-request-dto.d.ts +83 -0
  55. package/dist/models/create-lead-request-dto.js +15 -0
  56. package/dist/models/create-lead-response-class.d.ts +25 -0
  57. package/dist/models/create-lead-response-class.js +15 -0
  58. package/dist/models/document-class.d.ts +130 -0
  59. package/dist/models/document-class.js +41 -0
  60. package/dist/models/get-custom-css-response-class.d.ts +24 -0
  61. package/dist/models/get-custom-css-response-class.js +15 -0
  62. package/dist/models/get-lead-response-class.d.ts +25 -0
  63. package/dist/models/get-lead-response-class.js +15 -0
  64. package/dist/models/get-public-psp-settings-response-class.d.ts +30 -0
  65. package/dist/models/get-public-psp-settings-response-class.js +15 -0
  66. package/dist/models/index.d.ts +48 -15
  67. package/dist/models/index.js +48 -15
  68. package/dist/models/initiate-braintree-payment-setup-request-dto.d.ts +30 -0
  69. package/dist/models/initiate-braintree-payment-setup-request-dto.js +15 -0
  70. package/dist/models/initiate-braintree-payment-setup-response-class.d.ts +24 -0
  71. package/dist/models/initiate-braintree-payment-setup-response-class.js +15 -0
  72. package/dist/models/initiate-lead-response-class.d.ts +24 -0
  73. package/dist/models/initiate-lead-response-class.js +15 -0
  74. package/dist/models/initiate-payment-setup-request-dto.d.ts +32 -0
  75. package/dist/models/initiate-payment-setup-request-dto.js +15 -0
  76. package/dist/models/initiate-payment-setup-response-class.d.ts +32 -0
  77. package/dist/models/initiate-payment-setup-response-class.js +15 -0
  78. package/dist/models/initiate-stripe-payment-setup-request-dto.d.ts +30 -0
  79. package/dist/models/initiate-stripe-payment-setup-request-dto.js +15 -0
  80. package/dist/models/initiate-stripe-payment-setup-response-class.d.ts +30 -0
  81. package/dist/models/initiate-stripe-payment-setup-response-class.js +15 -0
  82. package/dist/models/insured-object-class.d.ts +67 -0
  83. package/dist/models/insured-object-class.js +15 -0
  84. package/dist/models/insured-object-type-class.d.ts +48 -0
  85. package/dist/models/insured-object-type-class.js +15 -0
  86. package/dist/models/invoice-class.d.ts +22 -15
  87. package/dist/models/invoice-class.js +3 -3
  88. package/dist/models/invoice-item-class.d.ts +17 -17
  89. package/dist/models/invoice-item-class.js +3 -3
  90. package/dist/models/invoice-status-class.d.ts +42 -0
  91. package/dist/models/invoice-status-class.js +15 -0
  92. package/dist/models/lead-account-class.d.ts +109 -0
  93. package/dist/models/lead-account-class.js +22 -0
  94. package/dist/models/lead-bank-account-class.d.ts +30 -0
  95. package/dist/models/lead-bank-account-class.js +15 -0
  96. package/dist/models/lead-class.d.ts +96 -0
  97. package/dist/models/lead-class.js +15 -0
  98. package/dist/models/lead-policy-class.d.ts +43 -0
  99. package/dist/models/lead-policy-class.js +15 -0
  100. package/dist/models/lead-policy-object-class.d.ts +30 -0
  101. package/dist/models/lead-policy-object-class.js +15 -0
  102. package/dist/models/list-documents-response-class.d.ts +31 -0
  103. package/dist/models/list-documents-response-class.js +15 -0
  104. package/dist/models/list-products-response-class.d.ts +31 -0
  105. package/dist/models/list-products-response-class.js +15 -0
  106. package/dist/models/payment-method-class.d.ts +60 -0
  107. package/dist/models/payment-method-class.js +15 -0
  108. package/dist/models/policy-object-request-dto.d.ts +30 -0
  109. package/dist/models/policy-object-request-dto.js +15 -0
  110. package/dist/models/policy-premium-class.d.ts +55 -0
  111. package/dist/models/policy-premium-class.js +15 -0
  112. package/dist/models/policy-premium-item-class.d.ts +73 -0
  113. package/dist/models/policy-premium-item-class.js +15 -0
  114. package/dist/models/premium-formula-class.d.ts +72 -0
  115. package/dist/models/premium-formula-class.js +15 -0
  116. package/dist/models/premium-override-dto.d.ts +54 -0
  117. package/dist/models/premium-override-dto.js +26 -0
  118. package/dist/models/premium-override-request-dto.d.ts +25 -0
  119. package/dist/models/premium-override-request-dto.js +15 -0
  120. package/dist/models/product-class.d.ts +74 -0
  121. package/dist/models/product-class.js +15 -0
  122. package/dist/models/product-factor-class.d.ts +60 -0
  123. package/dist/models/product-factor-class.js +15 -0
  124. package/dist/models/product-field-class.d.ts +132 -0
  125. package/dist/models/product-field-class.js +15 -0
  126. package/dist/models/product-version-class.d.ts +61 -0
  127. package/dist/models/product-version-class.js +22 -0
  128. package/dist/models/send-notification-request-dto.d.ts +36 -0
  129. package/dist/models/send-notification-request-dto.js +15 -0
  130. package/dist/models/send-notification-response-class.d.ts +24 -0
  131. package/dist/models/send-notification-response-class.js +15 -0
  132. package/dist/models/update-lead-request-dto.d.ts +83 -0
  133. package/dist/models/update-lead-request-dto.js +15 -0
  134. package/dist/models/update-lead-response-class.d.ts +25 -0
  135. package/dist/models/update-lead-response-class.js +15 -0
  136. package/dist/models/uploaded-document-dto.d.ts +24 -0
  137. package/dist/models/uploaded-document-dto.js +15 -0
  138. package/index.ts +4 -4
  139. package/models/complete-braintree-payment-setup-request-dto.ts +54 -0
  140. package/models/complete-payment-setup-request-dto.ts +38 -0
  141. package/models/complete-payment-setup-response-class.ts +31 -0
  142. package/models/complete-stripe-payment-setup-request-dto.ts +66 -0
  143. package/models/create-account-request-dto.ts +143 -0
  144. package/models/create-bank-account-request-dto.ts +36 -0
  145. package/models/create-custom-application-request-dto.ts +44 -0
  146. package/models/create-custom-application-response-class.ts +30 -0
  147. package/models/create-document-request-dto.ts +111 -0
  148. package/models/create-estimated-invoice-request-dto.ts +36 -9
  149. package/models/create-estimated-invoice-response-class.ts +7 -7
  150. package/models/create-lead-request-dto.ts +89 -0
  151. package/models/create-lead-response-class.ts +31 -0
  152. package/models/document-class.ts +141 -0
  153. package/models/get-custom-css-response-class.ts +30 -0
  154. package/models/get-lead-response-class.ts +31 -0
  155. package/models/get-public-psp-settings-response-class.ts +36 -0
  156. package/models/index.ts +48 -15
  157. package/models/initiate-braintree-payment-setup-request-dto.ts +36 -0
  158. package/models/initiate-braintree-payment-setup-response-class.ts +30 -0
  159. package/models/initiate-lead-response-class.ts +30 -0
  160. package/models/initiate-payment-setup-request-dto.ts +38 -0
  161. package/models/initiate-payment-setup-response-class.ts +38 -0
  162. package/models/initiate-stripe-payment-setup-request-dto.ts +36 -0
  163. package/models/initiate-stripe-payment-setup-response-class.ts +36 -0
  164. package/models/insured-object-class.ts +73 -0
  165. package/models/insured-object-type-class.ts +54 -0
  166. package/models/invoice-class.ts +22 -15
  167. package/models/invoice-item-class.ts +17 -17
  168. package/models/invoice-status-class.ts +48 -0
  169. package/models/lead-account-class.ts +118 -0
  170. package/models/lead-bank-account-class.ts +36 -0
  171. package/models/lead-class.ts +102 -0
  172. package/models/lead-policy-class.ts +49 -0
  173. package/models/lead-policy-object-class.ts +36 -0
  174. package/models/list-documents-response-class.ts +37 -0
  175. package/models/list-products-response-class.ts +37 -0
  176. package/models/payment-method-class.ts +66 -0
  177. package/models/policy-object-request-dto.ts +36 -0
  178. package/models/policy-premium-class.ts +61 -0
  179. package/models/policy-premium-item-class.ts +79 -0
  180. package/models/premium-formula-class.ts +78 -0
  181. package/models/premium-override-dto.ts +64 -0
  182. package/models/premium-override-request-dto.ts +31 -0
  183. package/models/product-class.ts +80 -0
  184. package/models/product-factor-class.ts +66 -0
  185. package/models/product-field-class.ts +138 -0
  186. package/models/product-version-class.ts +70 -0
  187. package/models/send-notification-request-dto.ts +42 -0
  188. package/models/send-notification-response-class.ts +30 -0
  189. package/models/update-lead-request-dto.ts +89 -0
  190. package/models/update-lead-response-class.ts +31 -0
  191. package/models/uploaded-document-dto.ts +30 -0
  192. package/package.json +2 -3
  193. package/api/correction-invoices-api.ts +0 -165
  194. package/api/estimated-invoices-api.ts +0 -268
  195. package/api/initial-invoices-api.ts +0 -165
  196. package/api/invoices-api.ts +0 -402
  197. package/dist/api/correction-invoices-api.d.ts +0 -93
  198. package/dist/api/correction-invoices-api.js +0 -224
  199. package/dist/api/estimated-invoices-api.d.ts +0 -146
  200. package/dist/api/estimated-invoices-api.js +0 -313
  201. package/dist/api/initial-invoices-api.d.ts +0 -93
  202. package/dist/api/initial-invoices-api.js +0 -224
  203. package/dist/api/invoices-api.d.ts +0 -234
  204. package/dist/api/invoices-api.js +0 -373
  205. package/dist/api/recurring-invoices-api.d.ts +0 -93
  206. package/dist/models/create-correction-invoices-response-class.d.ts +0 -25
  207. package/dist/models/create-custom-estimated-invoice-request-dto.d.ts +0 -35
  208. package/dist/models/create-custom-estimated-invoice-response-class.d.ts +0 -24
  209. package/dist/models/create-invoice-request-dto.d.ts +0 -75
  210. package/dist/models/create-invoice-request-dto.js +0 -24
  211. package/dist/models/create-invoice-response-class.d.ts +0 -25
  212. package/dist/models/list-invoices-response-class.d.ts +0 -31
  213. package/dist/models/list-policies-billing-dates-response-class.d.ts +0 -30
  214. package/dist/models/list-policies-billing-dates-response-class.js +0 -15
  215. package/dist/models/list-request-dto.d.ts +0 -54
  216. package/dist/models/list-request-dto.js +0 -15
  217. package/dist/models/policy-dto.d.ts +0 -85
  218. package/dist/models/policy-dto.js +0 -15
  219. package/dist/models/policy-object-dto.d.ts +0 -42
  220. package/dist/models/policy-object-dto.js +0 -15
  221. package/dist/models/policy-premium-dto.d.ts +0 -43
  222. package/dist/models/policy-premium-dto.js +0 -15
  223. package/dist/models/policy-premium-item-dto.d.ts +0 -49
  224. package/dist/models/policy-premium-item-dto.js +0 -15
  225. package/dist/models/policy-version-dto.d.ts +0 -55
  226. package/dist/models/policy-version-dto.js +0 -15
  227. package/dist/models/premium-formula-dto.d.ts +0 -72
  228. package/dist/models/premium-formula-dto.js +0 -15
  229. package/dist/models/timeslice-dto.d.ts +0 -62
  230. package/dist/models/timeslice-dto.js +0 -15
  231. package/models/create-correction-invoices-response-class.ts +0 -31
  232. package/models/create-custom-estimated-invoice-request-dto.ts +0 -44
  233. package/models/create-custom-estimated-invoice-response-class.ts +0 -30
  234. package/models/create-invoice-request-dto.ts +0 -84
  235. package/models/create-invoice-response-class.ts +0 -31
  236. package/models/list-invoices-response-class.ts +0 -37
  237. package/models/list-policies-billing-dates-response-class.ts +0 -36
  238. package/models/list-request-dto.ts +0 -60
  239. package/models/policy-dto.ts +0 -91
  240. package/models/policy-object-dto.ts +0 -48
  241. package/models/policy-premium-dto.ts +0 -49
  242. package/models/policy-premium-item-dto.ts +0 -55
  243. package/models/policy-version-dto.ts +0 -61
  244. package/models/premium-formula-dto.ts +0 -78
  245. package/models/timeslice-dto.ts +0 -68
package/api.ts CHANGED
@@ -1,11 +1,11 @@
1
1
  /* tslint:disable */
2
2
  /* eslint-disable */
3
3
  /**
4
- * EMIL BillingService
5
- * The EMIL BillingService API description
4
+ * Emil PublicAPI
5
+ * The Emil Public API description
6
6
  *
7
7
  * The version of the OpenAPI document: 1.0
8
- *
8
+ * Contact: kontakt@emil.de
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
11
  * https://openapi-generator.tech
@@ -24,21 +24,16 @@ import FormData from 'form-data'
24
24
  import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from './common';
25
25
  // @ts-ignore
26
26
  import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from './base';
27
- import { CorrectionInvoicesApi } from './api';
28
- import { EstimatedInvoicesApi } from './api';
29
- import { InitialInvoicesApi } from './api';
30
- import { InvoicesApi } from './api';
31
- import { RecurringInvoicesApi } from './api';
27
+ import { DocumentsApi } from './api';
28
+ import { LeadsApi } from './api';
29
+ import { NotificationsApi } from './api';
30
+ import { PaymentsSetupApi } from './api';
31
+ import { ProductsApi } from './api';
32
32
 
33
33
 
34
- export * from './api/correction-invoices-api';
35
- export * from './api/estimated-invoices-api';
36
- export * from './api/initial-invoices-api';
37
- export * from './api/invoices-api';
38
- export * from './api/recurring-invoices-api';
34
+ export * from './api/documents-api';
35
+ export * from './api/leads-api';
36
+ export * from './api/notifications-api';
37
+ export * from './api/payments-setup-api';
38
+ export * from './api/products-api';
39
39
 
40
-
41
- export enum Environment {
42
- Production = 'https://apiv2.emil.de',
43
- Test = 'https://apiv2-test.emil.de',
44
- }
package/base.ts CHANGED
@@ -1,11 +1,11 @@
1
1
  /* tslint:disable */
2
2
  /* eslint-disable */
3
3
  /**
4
- * EMIL BillingService
5
- * The EMIL BillingService API description
4
+ * Emil PublicAPI
5
+ * The Emil Public API description
6
6
  *
7
7
  * The version of the OpenAPI document: 1.0
8
- *
8
+ * Contact: kontakt@emil.de
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
11
  * https://openapi-generator.tech
@@ -21,7 +21,7 @@ import * as fs from 'fs';
21
21
  import * as path from 'path';
22
22
  import * as os from 'os';
23
23
 
24
- export const BASE_PATH = "https://apiv2.emil.de".replace(/\/+$/, "");
24
+ export const BASE_PATH = "http://localhost".replace(/\/+$/, "");
25
25
  const CONFIG_DIRECTORY = '.emil';
26
26
  const CONFIG_FILENAME = 'credentials';
27
27
  const KEY_USERNAME = 'emil_username';
@@ -42,12 +42,19 @@ export const COLLECTION_FORMATS = {
42
42
  export interface LoginClass {
43
43
  accessToken: string;
44
44
  permissions: Array<string>;
45
- newPasswordRequired: boolean;
46
45
  }
47
46
 
48
47
  export enum Environment {
49
48
  Production = 'https://apiv2.emil.de',
50
49
  Test = 'https://apiv2-test.emil.de',
50
+ Development = 'https://apiv2-dev.emil.de',
51
+ }
52
+
53
+ let _retry_count = 0
54
+ let _retry = null
55
+
56
+ export function resetRetry() {
57
+ _retry_count = 0
51
58
  }
52
59
 
53
60
  /**
@@ -69,7 +76,6 @@ const NETWORK_ERROR_MESSAGE = "Network Error";
69
76
  */
70
77
  export class BaseAPI {
71
78
  protected configuration: Configuration;
72
- private lastRequestConfig?: AxiosRequestConfig;
73
79
  private username?: string;
74
80
  private password?: string;
75
81
 
@@ -164,7 +170,7 @@ export class BaseAPI {
164
170
  this.configuration.refreshToken = refreshToken;
165
171
  }
166
172
 
167
- async refreshToken(): Promise<string> {
173
+ async refreshTokenInternal(): Promise<string> {
168
174
  const { username, refreshToken } = this.configuration;
169
175
 
170
176
 
@@ -182,6 +188,7 @@ export class BaseAPI {
182
188
  data: { username: username },
183
189
  withCredentials: true,
184
190
  };
191
+
185
192
  const { data: { accessToken } } = await globalAxios.request<LoginClass>(options);
186
193
 
187
194
  return accessToken;
@@ -202,13 +209,6 @@ export class BaseAPI {
202
209
  }
203
210
 
204
211
  private attachInterceptor(axios: AxiosInstance) {
205
- axios.interceptors.request.use((config) => {
206
- if (config.url?.indexOf('refresh-token') === -1) {
207
- this.lastRequestConfig = config;
208
- }
209
-
210
- return config;
211
- });
212
212
  axios.interceptors.response.use(
213
213
  (res) => {
214
214
  return res;
@@ -220,20 +220,14 @@ export class BaseAPI {
220
220
  if (err.response.status === 401 && !originalConfig._retry) {
221
221
  originalConfig._retry = true;
222
222
  try {
223
- const tokenString = await this.refreshToken();
223
+ const tokenString = await this.refreshTokenInternal();
224
224
  const accessToken = `Bearer ${tokenString}`;
225
225
 
226
- const localVarHeaderParameter = {} as any;
227
- localVarHeaderParameter['Authorization'] = accessToken;
228
-
229
- originalConfig.headers = {
230
- ...originalConfig.headers,
231
- ...localVarHeaderParameter,
232
- };
226
+ originalConfig.headers['Authorization'] = `Bearer ${accessToken}`
233
227
 
234
228
  this.configuration.accessToken = accessToken;
235
229
 
236
- return axios(originalConfig);
230
+ return axios.request(originalConfig);
237
231
  } catch (_error) {
238
232
  if (_error.response && _error.response.data) {
239
233
  return Promise.reject(_error.response.data);
@@ -244,28 +238,24 @@ export class BaseAPI {
244
238
  if (err.response.status === 403 && err.response.data) {
245
239
  return Promise.reject(err.response.data);
246
240
  }
247
- } else if (err.message === NETWORK_ERROR_MESSAGE && !originalConfig._retry) {
241
+ } else if(err.message === NETWORK_ERROR_MESSAGE
242
+ && err.isAxiosError
243
+ && originalConfig.headers.hasOwnProperty('Authorization')
244
+ && _retry_count < 4
245
+ ){
246
+ _retry_count++;
248
247
  try {
249
- const tokenString = await this.refreshToken();
248
+ const tokenString = await this.refreshTokenInternal();
250
249
  const accessToken = `Bearer ${tokenString}`;
251
250
 
252
- const localVarHeaderParameter = {} as any;
253
- localVarHeaderParameter['Authorization'] = accessToken;
254
-
255
- this.lastRequestConfig.headers = {
256
- ...originalConfig.headers,
257
- ...localVarHeaderParameter,
258
- };
259
-
260
- originalConfig = {
261
- ...this.lastRequestConfig,
262
- }
263
-
264
- originalConfig._retry = true;
251
+ _retry = true;
252
+ originalConfig.headers['Authorization'] = accessToken;
265
253
 
266
254
  this.configuration.accessToken = accessToken;
267
255
 
268
- return axios(originalConfig);
256
+ return axios.request({
257
+ ...originalConfig,
258
+ });
269
259
  } catch (_error) {
270
260
  if (_error.response && _error.response.data) {
271
261
  return Promise.reject(_error.response.data);
@@ -291,3 +281,4 @@ export class RequiredError extends Error {
291
281
  super(msg);
292
282
  }
293
283
  }
284
+
package/common.ts CHANGED
@@ -1,11 +1,11 @@
1
1
  /* tslint:disable */
2
2
  /* eslint-disable */
3
3
  /**
4
- * EMIL BillingService
5
- * The EMIL BillingService API description
4
+ * Emil PublicAPI
5
+ * The Emil Public API description
6
6
  *
7
7
  * The version of the OpenAPI document: 1.0
8
- *
8
+ * Contact: kontakt@emil.de
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
11
  * https://openapi-generator.tech
@@ -136,3 +136,64 @@ export const createRequestFunction = function (axiosArgs: RequestArgs, globalAxi
136
136
  return axios.request<T, R>(axiosRequestArgs);
137
137
  };
138
138
  }
139
+
140
+ /* tslint:disable */
141
+ /* eslint-disable */
142
+ /**
143
+ * Emil PublicAPI
144
+ * The Emil Public API description
145
+ *
146
+ * The version of the OpenAPI document: 1.0
147
+ * Contact: kontakt@emil.de
148
+ *
149
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
150
+ * https://openapi-generator.tech
151
+ * Do not edit the class manually.
152
+ */
153
+
154
+
155
+ export interface IStorageConverter<D, SD> {
156
+ toStorageData( data: D ): SD;
157
+ fromStorageData( storageData: SD ): D;
158
+ }
159
+
160
+ export interface IStorage {
161
+ get<T>( key: string, converter?: IStorageConverter<T, any> ): T | null;
162
+ set<T>( key: string, value: T, converter?: IStorageConverter<T, any> ): void;
163
+ }
164
+
165
+ export class LocalStorage implements IStorage {
166
+ readonly storage: Storage;
167
+
168
+ constructor() {
169
+ this.storage = localStorage;
170
+ }
171
+
172
+ get<T>( key: string, converter?: IStorageConverter<T, any> ): T | null {
173
+ const jsonValue = this.storage.getItem( key );
174
+ if ( jsonValue === null ) {
175
+ return null;
176
+ }
177
+ const value = JSON.parse( jsonValue );
178
+ if ( converter !== undefined ) {
179
+ return converter.fromStorageData( value );
180
+ } else {
181
+ return value as T;
182
+ }
183
+ }
184
+
185
+ set<T>( key: string, value: T, converter?: IStorageConverter<T, any> ): void {
186
+ let valueToStore: any = value;
187
+ if ( converter !== undefined ) {
188
+ valueToStore = converter.toStorageData( value );
189
+ }
190
+ const jsonValue = JSON.stringify( valueToStore );
191
+ this.storage.setItem( key, jsonValue );
192
+ }
193
+ }
194
+
195
+ let _defaultStorage: IStorage = null;
196
+
197
+ export const defaultStorage = (): IStorage => {
198
+ return _defaultStorage || (_defaultStorage = new LocalStorage());
199
+ };
package/configuration.ts CHANGED
@@ -1,11 +1,11 @@
1
1
  /* tslint:disable */
2
2
  /* eslint-disable */
3
3
  /**
4
- * EMIL BillingService
5
- * The EMIL BillingService API description
4
+ * Emil PublicAPI
5
+ * The Emil Public API description
6
6
  *
7
7
  * The version of the OpenAPI document: 1.0
8
- *
8
+ * Contact: kontakt@emil.de
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
11
  * https://openapi-generator.tech
@@ -0,0 +1,252 @@
1
+ /**
2
+ * Emil PublicAPI
3
+ * The Emil Public API description
4
+ *
5
+ * The version of the OpenAPI document: 1.0
6
+ * Contact: kontakt@emil.de
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import { AxiosPromise, AxiosInstance, AxiosRequestConfig } from 'axios';
13
+ import { Configuration } from '../configuration';
14
+ import { RequestArgs, BaseAPI } from '../base';
15
+ import { CreateDocumentRequestDto } from '../models';
16
+ import { ListDocumentsResponseClass } from '../models';
17
+ /**
18
+ * DocumentsApi - axios parameter creator
19
+ * @export
20
+ */
21
+ export declare const DocumentsApiAxiosParamCreator: (configuration?: Configuration) => {
22
+ /**
23
+ * This will create a temporary document.
24
+ * @summary Create the temporary document
25
+ * @param {CreateDocumentRequestDto} createDocumentRequestDto
26
+ * @param {string} [authorization] Bearer Token
27
+ * @param {*} [options] Override http request option.
28
+ * @throws {RequiredError}
29
+ */
30
+ createTemporaryDocument: (createDocumentRequestDto: CreateDocumentRequestDto, authorization?: string, options?: AxiosRequestConfig) => Promise<RequestArgs>;
31
+ /**
32
+ * Retrieves the details of the specific document that was previously created. Supply the unique document code that was returned when you created it and Emil Api will return the corresponding document file to download.
33
+ * @summary Download a document
34
+ * @param {string} code
35
+ * @param {string} [authorization] Bearer Token
36
+ * @param {*} [options] Override http request option.
37
+ * @throws {RequiredError}
38
+ */
39
+ downloadDocument: (code: string, authorization?: string, options?: AxiosRequestConfig) => Promise<RequestArgs>;
40
+ /**
41
+ * Returns a list of documents you have previously created. The documents are returned in sorted order, with the oldest one appearing first. For more information about pagination, read the Pagination documentation.
42
+ * @summary List documents
43
+ * @param {string} [authorization] Bearer Token
44
+ * @param {any} [pageSize] A limit on the number of objects to be returned. Limit ranges between 1 and 100. Default: 10.
45
+ * @param {any} [pageToken] A cursor for use in pagination. pageToken is an ID that defines your place in the list. For instance, if you make a list request and receive 100 objects and pageToken&#x3D;1, your subsequent call can include pageToken&#x3D;2 in order to fetch the next page of the list.
46
+ * @param {any} [filter] Filter the response by one or multiple fields. In general, fetching filtered responses will conserve bandwidth and reduce response time.
47
+ * @param {any} [search] Search the list by any field. For instance, if you want to search by code add code&#x3D;xxx in order to fetch the result.
48
+ * @param {any} [order] The order parameter determines how the results should be sorted according to a specified field. It functions similarly to an SQL ORDER BY. Sorting can be performed in either ascending (ASC) or descending (DESC) order. Default: ASC.
49
+ * @param {any} [expand] Use this parameter to fetch additional information about the list items. The expand query parameter increases the set of fields that appear in the response in addition to the default ones. Expanding resources can reduce the number of API calls required to accomplish a task. However, use this with parsimony as some expanded fields can drastically increase payload size.
50
+ * @param {*} [options] Override http request option.
51
+ * @throws {RequiredError}
52
+ */
53
+ listDocuments: (authorization?: string, pageSize?: any, pageToken?: any, filter?: any, search?: any, order?: any, expand?: any, options?: AxiosRequestConfig) => Promise<RequestArgs>;
54
+ };
55
+ /**
56
+ * DocumentsApi - functional programming interface
57
+ * @export
58
+ */
59
+ export declare const DocumentsApiFp: (configuration?: Configuration) => {
60
+ /**
61
+ * This will create a temporary document.
62
+ * @summary Create the temporary document
63
+ * @param {CreateDocumentRequestDto} createDocumentRequestDto
64
+ * @param {string} [authorization] Bearer Token
65
+ * @param {*} [options] Override http request option.
66
+ * @throws {RequiredError}
67
+ */
68
+ createTemporaryDocument(createDocumentRequestDto: CreateDocumentRequestDto, authorization?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
69
+ /**
70
+ * Retrieves the details of the specific document that was previously created. Supply the unique document code that was returned when you created it and Emil Api will return the corresponding document file to download.
71
+ * @summary Download a document
72
+ * @param {string} code
73
+ * @param {string} [authorization] Bearer Token
74
+ * @param {*} [options] Override http request option.
75
+ * @throws {RequiredError}
76
+ */
77
+ downloadDocument(code: string, authorization?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
78
+ /**
79
+ * Returns a list of documents you have previously created. The documents are returned in sorted order, with the oldest one appearing first. For more information about pagination, read the Pagination documentation.
80
+ * @summary List documents
81
+ * @param {string} [authorization] Bearer Token
82
+ * @param {any} [pageSize] A limit on the number of objects to be returned. Limit ranges between 1 and 100. Default: 10.
83
+ * @param {any} [pageToken] A cursor for use in pagination. pageToken is an ID that defines your place in the list. For instance, if you make a list request and receive 100 objects and pageToken&#x3D;1, your subsequent call can include pageToken&#x3D;2 in order to fetch the next page of the list.
84
+ * @param {any} [filter] Filter the response by one or multiple fields. In general, fetching filtered responses will conserve bandwidth and reduce response time.
85
+ * @param {any} [search] Search the list by any field. For instance, if you want to search by code add code&#x3D;xxx in order to fetch the result.
86
+ * @param {any} [order] The order parameter determines how the results should be sorted according to a specified field. It functions similarly to an SQL ORDER BY. Sorting can be performed in either ascending (ASC) or descending (DESC) order. Default: ASC.
87
+ * @param {any} [expand] Use this parameter to fetch additional information about the list items. The expand query parameter increases the set of fields that appear in the response in addition to the default ones. Expanding resources can reduce the number of API calls required to accomplish a task. However, use this with parsimony as some expanded fields can drastically increase payload size.
88
+ * @param {*} [options] Override http request option.
89
+ * @throws {RequiredError}
90
+ */
91
+ listDocuments(authorization?: string, pageSize?: any, pageToken?: any, filter?: any, search?: any, order?: any, expand?: any, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ListDocumentsResponseClass>>;
92
+ };
93
+ /**
94
+ * DocumentsApi - factory interface
95
+ * @export
96
+ */
97
+ export declare const DocumentsApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
98
+ /**
99
+ * This will create a temporary document.
100
+ * @summary Create the temporary document
101
+ * @param {CreateDocumentRequestDto} createDocumentRequestDto
102
+ * @param {string} [authorization] Bearer Token
103
+ * @param {*} [options] Override http request option.
104
+ * @throws {RequiredError}
105
+ */
106
+ createTemporaryDocument(createDocumentRequestDto: CreateDocumentRequestDto, authorization?: string, options?: any): AxiosPromise<void>;
107
+ /**
108
+ * Retrieves the details of the specific document that was previously created. Supply the unique document code that was returned when you created it and Emil Api will return the corresponding document file to download.
109
+ * @summary Download a document
110
+ * @param {string} code
111
+ * @param {string} [authorization] Bearer Token
112
+ * @param {*} [options] Override http request option.
113
+ * @throws {RequiredError}
114
+ */
115
+ downloadDocument(code: string, authorization?: string, options?: any): AxiosPromise<void>;
116
+ /**
117
+ * Returns a list of documents you have previously created. The documents are returned in sorted order, with the oldest one appearing first. For more information about pagination, read the Pagination documentation.
118
+ * @summary List documents
119
+ * @param {string} [authorization] Bearer Token
120
+ * @param {any} [pageSize] A limit on the number of objects to be returned. Limit ranges between 1 and 100. Default: 10.
121
+ * @param {any} [pageToken] A cursor for use in pagination. pageToken is an ID that defines your place in the list. For instance, if you make a list request and receive 100 objects and pageToken&#x3D;1, your subsequent call can include pageToken&#x3D;2 in order to fetch the next page of the list.
122
+ * @param {any} [filter] Filter the response by one or multiple fields. In general, fetching filtered responses will conserve bandwidth and reduce response time.
123
+ * @param {any} [search] Search the list by any field. For instance, if you want to search by code add code&#x3D;xxx in order to fetch the result.
124
+ * @param {any} [order] The order parameter determines how the results should be sorted according to a specified field. It functions similarly to an SQL ORDER BY. Sorting can be performed in either ascending (ASC) or descending (DESC) order. Default: ASC.
125
+ * @param {any} [expand] Use this parameter to fetch additional information about the list items. The expand query parameter increases the set of fields that appear in the response in addition to the default ones. Expanding resources can reduce the number of API calls required to accomplish a task. However, use this with parsimony as some expanded fields can drastically increase payload size.
126
+ * @param {*} [options] Override http request option.
127
+ * @throws {RequiredError}
128
+ */
129
+ listDocuments(authorization?: string, pageSize?: any, pageToken?: any, filter?: any, search?: any, order?: any, expand?: any, options?: any): AxiosPromise<ListDocumentsResponseClass>;
130
+ };
131
+ /**
132
+ * Request parameters for createTemporaryDocument operation in DocumentsApi.
133
+ * @export
134
+ * @interface DocumentsApiCreateTemporaryDocumentRequest
135
+ */
136
+ export interface DocumentsApiCreateTemporaryDocumentRequest {
137
+ /**
138
+ *
139
+ * @type {CreateDocumentRequestDto}
140
+ * @memberof DocumentsApiCreateTemporaryDocument
141
+ */
142
+ readonly createDocumentRequestDto: CreateDocumentRequestDto;
143
+ /**
144
+ * Bearer Token
145
+ * @type {string}
146
+ * @memberof DocumentsApiCreateTemporaryDocument
147
+ */
148
+ readonly authorization?: string;
149
+ }
150
+ /**
151
+ * Request parameters for downloadDocument operation in DocumentsApi.
152
+ * @export
153
+ * @interface DocumentsApiDownloadDocumentRequest
154
+ */
155
+ export interface DocumentsApiDownloadDocumentRequest {
156
+ /**
157
+ *
158
+ * @type {string}
159
+ * @memberof DocumentsApiDownloadDocument
160
+ */
161
+ readonly code: string;
162
+ /**
163
+ * Bearer Token
164
+ * @type {string}
165
+ * @memberof DocumentsApiDownloadDocument
166
+ */
167
+ readonly authorization?: string;
168
+ }
169
+ /**
170
+ * Request parameters for listDocuments operation in DocumentsApi.
171
+ * @export
172
+ * @interface DocumentsApiListDocumentsRequest
173
+ */
174
+ export interface DocumentsApiListDocumentsRequest {
175
+ /**
176
+ * Bearer Token
177
+ * @type {string}
178
+ * @memberof DocumentsApiListDocuments
179
+ */
180
+ readonly authorization?: string;
181
+ /**
182
+ * A limit on the number of objects to be returned. Limit ranges between 1 and 100. Default: 10.
183
+ * @type {any}
184
+ * @memberof DocumentsApiListDocuments
185
+ */
186
+ readonly pageSize?: any;
187
+ /**
188
+ * A cursor for use in pagination. pageToken is an ID that defines your place in the list. For instance, if you make a list request and receive 100 objects and pageToken&#x3D;1, your subsequent call can include pageToken&#x3D;2 in order to fetch the next page of the list.
189
+ * @type {any}
190
+ * @memberof DocumentsApiListDocuments
191
+ */
192
+ readonly pageToken?: any;
193
+ /**
194
+ * Filter the response by one or multiple fields. In general, fetching filtered responses will conserve bandwidth and reduce response time.
195
+ * @type {any}
196
+ * @memberof DocumentsApiListDocuments
197
+ */
198
+ readonly filter?: any;
199
+ /**
200
+ * Search the list by any field. For instance, if you want to search by code add code&#x3D;xxx in order to fetch the result.
201
+ * @type {any}
202
+ * @memberof DocumentsApiListDocuments
203
+ */
204
+ readonly search?: any;
205
+ /**
206
+ * The order parameter determines how the results should be sorted according to a specified field. It functions similarly to an SQL ORDER BY. Sorting can be performed in either ascending (ASC) or descending (DESC) order. Default: ASC.
207
+ * @type {any}
208
+ * @memberof DocumentsApiListDocuments
209
+ */
210
+ readonly order?: any;
211
+ /**
212
+ * Use this parameter to fetch additional information about the list items. The expand query parameter increases the set of fields that appear in the response in addition to the default ones. Expanding resources can reduce the number of API calls required to accomplish a task. However, use this with parsimony as some expanded fields can drastically increase payload size.
213
+ * @type {any}
214
+ * @memberof DocumentsApiListDocuments
215
+ */
216
+ readonly expand?: any;
217
+ }
218
+ /**
219
+ * DocumentsApi - object-oriented interface
220
+ * @export
221
+ * @class DocumentsApi
222
+ * @extends {BaseAPI}
223
+ */
224
+ export declare class DocumentsApi extends BaseAPI {
225
+ /**
226
+ * This will create a temporary document.
227
+ * @summary Create the temporary document
228
+ * @param {DocumentsApiCreateTemporaryDocumentRequest} requestParameters Request parameters.
229
+ * @param {*} [options] Override http request option.
230
+ * @throws {RequiredError}
231
+ * @memberof DocumentsApi
232
+ */
233
+ createTemporaryDocument(requestParameters: DocumentsApiCreateTemporaryDocumentRequest, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
234
+ /**
235
+ * Retrieves the details of the specific document that was previously created. Supply the unique document code that was returned when you created it and Emil Api will return the corresponding document file to download.
236
+ * @summary Download a document
237
+ * @param {DocumentsApiDownloadDocumentRequest} requestParameters Request parameters.
238
+ * @param {*} [options] Override http request option.
239
+ * @throws {RequiredError}
240
+ * @memberof DocumentsApi
241
+ */
242
+ downloadDocument(requestParameters: DocumentsApiDownloadDocumentRequest, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
243
+ /**
244
+ * Returns a list of documents you have previously created. The documents are returned in sorted order, with the oldest one appearing first. For more information about pagination, read the Pagination documentation.
245
+ * @summary List documents
246
+ * @param {DocumentsApiListDocumentsRequest} requestParameters Request parameters.
247
+ * @param {*} [options] Override http request option.
248
+ * @throws {RequiredError}
249
+ * @memberof DocumentsApi
250
+ */
251
+ listDocuments(requestParameters?: DocumentsApiListDocumentsRequest, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<ListDocumentsResponseClass, any>>;
252
+ }