@amalaika/form-sdk-package 1.0.0 → 1.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.
Files changed (78) hide show
  1. package/README.md +6 -0
  2. package/dist/cjs/client/index.d.ts +15 -0
  3. package/dist/cjs/client/index.d.ts.map +1 -1
  4. package/dist/cjs/client/index.js +190 -47
  5. package/dist/cjs/client/index.js.map +1 -1
  6. package/dist/cjs/index.d.ts +3 -2
  7. package/dist/cjs/index.d.ts.map +1 -1
  8. package/dist/cjs/index.js +5 -1
  9. package/dist/cjs/index.js.map +1 -1
  10. package/dist/cjs/state/index.d.ts +24 -0
  11. package/dist/cjs/state/index.d.ts.map +1 -0
  12. package/dist/cjs/state/index.js +90 -0
  13. package/dist/cjs/state/index.js.map +1 -0
  14. package/dist/cjs/types/index.d.ts +42 -1
  15. package/dist/cjs/types/index.d.ts.map +1 -1
  16. package/dist/cjs/utils/index.d.ts +3 -1
  17. package/dist/cjs/utils/index.d.ts.map +1 -1
  18. package/dist/cjs/utils/index.js +83 -4
  19. package/dist/cjs/utils/index.js.map +1 -1
  20. package/dist/esm/client/index.d.ts +15 -0
  21. package/dist/esm/client/index.d.ts.map +1 -1
  22. package/dist/esm/client/index.js +190 -47
  23. package/dist/esm/client/index.js.map +1 -1
  24. package/dist/esm/index.d.ts +3 -2
  25. package/dist/esm/index.d.ts.map +1 -1
  26. package/dist/esm/index.js +2 -1
  27. package/dist/esm/index.js.map +1 -1
  28. package/dist/esm/state/index.d.ts +24 -0
  29. package/dist/esm/state/index.d.ts.map +1 -0
  30. package/dist/esm/state/index.js +86 -0
  31. package/dist/esm/state/index.js.map +1 -0
  32. package/dist/esm/types/index.d.ts +42 -1
  33. package/dist/esm/types/index.d.ts.map +1 -1
  34. package/dist/esm/utils/index.d.ts +3 -1
  35. package/dist/esm/utils/index.d.ts.map +1 -1
  36. package/dist/esm/utils/index.js +81 -4
  37. package/dist/esm/utils/index.js.map +1 -1
  38. package/package.json +1 -1
  39. package/dist/cjs/client/__tests__/client.spec.d.ts +0 -2
  40. package/dist/cjs/client/__tests__/client.spec.d.ts.map +0 -1
  41. package/dist/cjs/client/__tests__/client.spec.js +0 -300
  42. package/dist/cjs/client/__tests__/client.spec.js.map +0 -1
  43. package/dist/cjs/client.d.ts +0 -22
  44. package/dist/cjs/client.d.ts.map +0 -1
  45. package/dist/cjs/client.js +0 -111
  46. package/dist/cjs/client.js.map +0 -1
  47. package/dist/cjs/types.d.ts +0 -78
  48. package/dist/cjs/types.d.ts.map +0 -1
  49. package/dist/cjs/types.js +0 -3
  50. package/dist/cjs/types.js.map +0 -1
  51. package/dist/cjs/utils/__tests__/utils.spec.d.ts +0 -2
  52. package/dist/cjs/utils/__tests__/utils.spec.d.ts.map +0 -1
  53. package/dist/cjs/utils/__tests__/utils.spec.js +0 -172
  54. package/dist/cjs/utils/__tests__/utils.spec.js.map +0 -1
  55. package/dist/cjs/utils.d.ts +0 -5
  56. package/dist/cjs/utils.d.ts.map +0 -1
  57. package/dist/cjs/utils.js +0 -45
  58. package/dist/cjs/utils.js.map +0 -1
  59. package/dist/esm/client/__tests__/client.spec.d.ts +0 -2
  60. package/dist/esm/client/__tests__/client.spec.d.ts.map +0 -1
  61. package/dist/esm/client/__tests__/client.spec.js +0 -355
  62. package/dist/esm/client/__tests__/client.spec.js.map +0 -1
  63. package/dist/esm/client.d.ts +0 -22
  64. package/dist/esm/client.d.ts.map +0 -1
  65. package/dist/esm/client.js +0 -107
  66. package/dist/esm/client.js.map +0 -1
  67. package/dist/esm/types.d.ts +0 -78
  68. package/dist/esm/types.d.ts.map +0 -1
  69. package/dist/esm/types.js +0 -2
  70. package/dist/esm/types.js.map +0 -1
  71. package/dist/esm/utils/__tests__/utils.spec.d.ts +0 -2
  72. package/dist/esm/utils/__tests__/utils.spec.d.ts.map +0 -1
  73. package/dist/esm/utils/__tests__/utils.spec.js +0 -182
  74. package/dist/esm/utils/__tests__/utils.spec.js.map +0 -1
  75. package/dist/esm/utils.d.ts +0 -5
  76. package/dist/esm/utils.d.ts.map +0 -1
  77. package/dist/esm/utils.js +0 -40
  78. package/dist/esm/utils.js.map +0 -1
package/README.md CHANGED
@@ -56,6 +56,12 @@ const client = new EventFormClient(config: EventFormConfig);
56
56
  | `apiBaseUrl` | `string` | No | API base URL. Defaults to `"https://api.eventsfactory.rw/api"` |
57
57
  | `locale` | `string` | No | Default locale for all requests. Can be changed later via `setLocale()` |
58
58
  | `errorMessages` | `Partial<ErrorMessages>` | No | Custom error messages — override any or all defaults |
59
+ | `origin` | `string` | No | Origin header sent with every request. Defaults to `"https://smartevent.rw"` |
60
+ | `timeout` | `number` | No | Request timeout in milliseconds. Defaults to `30000` |
61
+ | `retry` | `{ maxRetries?: number; delay?: number }` | No | Retry configuration. Defaults to 3 retries with 1s delay and exponential backoff. Only retries on 5xx and network errors |
62
+ | `cache` | `{ enabled?: boolean; ttl?: number }` | No | Response caching for GET requests. Disabled by default. Use `clearCache()` to invalidate |
63
+ | `noCache` | `boolean` | No | Send `Cache-Control: no-cache` header with every request. Defaults to `false` |
64
+ | `interceptors` | `{ request?, response?, error? }` | No | Request/response interceptors for modifying headers, transforming data, or handling errors |
59
65
 
60
66
  ### Locale Management
61
67
 
@@ -4,10 +4,25 @@ export declare class EventFormClient {
4
4
  private readonly apiKey;
5
5
  private readonly resourceType;
6
6
  private readonly messages;
7
+ private readonly origin;
8
+ private readonly timeout;
9
+ private readonly retryConfig;
10
+ private readonly cacheConfig;
11
+ private readonly noCache;
12
+ private readonly interceptors;
13
+ private readonly cache;
7
14
  private locale;
8
15
  constructor(config: EventFormConfig);
9
16
  setLocale(locale: string): void;
10
17
  getLocale(): string | undefined;
18
+ clearCache(): void;
19
+ private getCached;
20
+ private setCache;
21
+ private applyRequestInterceptor;
22
+ private applyResponseInterceptor;
23
+ private applyErrorInterceptor;
24
+ private isRetryable;
25
+ private executeRequest;
11
26
  fetchTickets(options?: {
12
27
  locale?: string;
13
28
  name?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAGV,eAAe,EACf,QAAQ,EACR,MAAM,EACP,MAAM,mBAAmB,CAAC;AAmC3B,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgB;IACzC,OAAO,CAAC,MAAM,CAAqB;gBAEvB,MAAM,EAAE,eAAe;IAQnC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI/B,SAAS,IAAI,MAAM,GAAG,SAAS;IAIzB,YAAY,CAAC,OAAO,CAAC,EAAE;QAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAuBf,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAiB7D,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAoBnC,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAiB/D,eAAe,CACnB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,IAAI,EACV,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,CAAC;IAyBZ,UAAU,CACd,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,IAAI,EACV,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,CAAC;IAqBZ,UAAU,CACd,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,OAAO,EAAE;QACP,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GACA,OAAO,CAAC,IAAI,CAAC;CAuBjB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAGV,eAAe,EACf,QAAQ,EACR,MAAM,EACP,MAAM,mBAAmB,CAAC;AAuD3B,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgB;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAwC;IACpE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoC;IAChE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAkC;IAC/D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAiC;IACvD,OAAO,CAAC,MAAM,CAAqB;gBAEvB,MAAM,EAAE,eAAe;IAoBnC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI/B,SAAS,IAAI,MAAM,GAAG,SAAS;IAI/B,UAAU,IAAI,IAAI;IAIlB,OAAO,CAAC,SAAS;IAWjB,OAAO,CAAC,QAAQ;IAQhB,OAAO,CAAC,uBAAuB;IAa/B,OAAO,CAAC,wBAAwB;IAOhC,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,WAAW;YAOL,cAAc;IAsBtB,YAAY,CAAC,OAAO,CAAC,EAAE;QAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IA6Bf,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAwB7D,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IA4BnC,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAwB/D,eAAe,CACnB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,IAAI,EACV,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,CAAC;IA0BZ,UAAU,CACd,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,IAAI,EACV,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,CAAC;IAsBZ,UAAU,CACd,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,OAAO,EAAE;QACP,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GACA,OAAO,CAAC,IAAI,CAAC;CAyBjB"}
@@ -13,26 +13,41 @@ const DEFAULT_ERROR_MESSAGES = {
13
13
  uploadFile: "File upload failed",
14
14
  submitForm: "Submission failed",
15
15
  };
16
- function getHeaders(locale) {
16
+ function getHeaders(locale, origin, noCache) {
17
17
  const headers = {};
18
18
  if (locale)
19
19
  headers["Accept-Language"] = locale;
20
+ if (origin) {
21
+ headers["Origin"] = origin;
22
+ headers["X-Client-Origin"] = origin;
23
+ }
24
+ if (noCache)
25
+ headers["Cache-Control"] = "no-cache";
20
26
  return headers;
21
27
  }
22
- function extractErrorMessage(error, fallback) {
28
+ function extractErrorMessage(error, fallback, status) {
29
+ let message = fallback;
23
30
  if (error instanceof ajax_1.AjaxError) {
24
31
  const body = error.response;
25
- return body?.message || fallback;
32
+ message = body?.message || fallback;
33
+ }
34
+ else if (error instanceof Error) {
35
+ message = error.message;
26
36
  }
27
- if (error instanceof Error)
28
- return error.message;
29
- return fallback;
37
+ return `${message} (${status})`;
30
38
  }
31
39
  class EventFormClient {
32
40
  apiBase;
33
41
  apiKey;
34
42
  resourceType;
35
43
  messages;
44
+ origin;
45
+ timeout;
46
+ retryConfig;
47
+ cacheConfig;
48
+ noCache;
49
+ interceptors;
50
+ cache = new Map();
36
51
  locale;
37
52
  constructor(config) {
38
53
  this.apiKey = config.apiKey;
@@ -40,6 +55,18 @@ class EventFormClient {
40
55
  this.apiBase = (config.apiBaseUrl ?? DEFAULT_API_BASE).replace(/\/$/, "");
41
56
  this.messages = { ...DEFAULT_ERROR_MESSAGES, ...config.errorMessages };
42
57
  this.locale = config.locale;
58
+ this.origin = config.origin ?? "https://smartevent.rw";
59
+ this.timeout = config.timeout ?? 30_000;
60
+ this.retryConfig = {
61
+ maxRetries: config.retry?.maxRetries ?? 3,
62
+ delay: config.retry?.delay ?? 1000,
63
+ };
64
+ this.cacheConfig = {
65
+ enabled: config.cache?.enabled ?? false,
66
+ ttl: config.cache?.ttl ?? 60_000,
67
+ };
68
+ this.noCache = config.noCache ?? false;
69
+ this.interceptors = config.interceptors;
43
70
  }
44
71
  setLocale(locale) {
45
72
  this.locale = locale;
@@ -47,6 +74,79 @@ class EventFormClient {
47
74
  getLocale() {
48
75
  return this.locale;
49
76
  }
77
+ clearCache() {
78
+ this.cache.clear();
79
+ }
80
+ getCached(key) {
81
+ if (!this.cacheConfig.enabled)
82
+ return undefined;
83
+ const entry = this.cache.get(key);
84
+ if (!entry)
85
+ return undefined;
86
+ if (Date.now() > entry.expiresAt) {
87
+ this.cache.delete(key);
88
+ return undefined;
89
+ }
90
+ return entry.data;
91
+ }
92
+ setCache(key, data) {
93
+ if (!this.cacheConfig.enabled)
94
+ return;
95
+ this.cache.set(key, {
96
+ data,
97
+ expiresAt: Date.now() + this.cacheConfig.ttl,
98
+ });
99
+ }
100
+ applyRequestInterceptor(config) {
101
+ if (this.interceptors?.request) {
102
+ const result = this.interceptors.request({
103
+ url: config.url,
104
+ method: config.method,
105
+ headers: config.headers,
106
+ body: config.body,
107
+ });
108
+ return { ...config, ...result };
109
+ }
110
+ return config;
111
+ }
112
+ applyResponseInterceptor(response) {
113
+ if (this.interceptors?.response) {
114
+ return this.interceptors.response(response);
115
+ }
116
+ return response;
117
+ }
118
+ applyErrorInterceptor(error) {
119
+ if (this.interceptors?.error) {
120
+ return this.interceptors.error(error);
121
+ }
122
+ return error;
123
+ }
124
+ isRetryable(error) {
125
+ if (error instanceof ajax_1.AjaxError) {
126
+ return error.status >= 500 || error.status === 0;
127
+ }
128
+ return !(error instanceof ajax_1.AjaxError);
129
+ }
130
+ async executeRequest(config) {
131
+ const intercepted = this.applyRequestInterceptor(config);
132
+ let lastError;
133
+ for (let attempt = 0; attempt <= this.retryConfig.maxRetries; attempt++) {
134
+ try {
135
+ const result = await (0, rxjs_1.firstValueFrom)((0, ajax_1.ajax)({ ...intercepted, crossDomain: true }));
136
+ return result;
137
+ }
138
+ catch (error) {
139
+ lastError = error;
140
+ if (attempt < this.retryConfig.maxRetries && this.isRetryable(error)) {
141
+ const backoff = this.retryConfig.delay * Math.pow(2, attempt);
142
+ await new Promise((resolve) => setTimeout(resolve, backoff));
143
+ continue;
144
+ }
145
+ break;
146
+ }
147
+ }
148
+ throw lastError;
149
+ }
50
150
  async fetchTickets(options) {
51
151
  const effectiveLocale = options?.locale ?? this.locale;
52
152
  const url = new URL(`${this.apiBase}/events/tickets/event/${this.apiKey}/public`);
@@ -54,71 +154,104 @@ class EventFormClient {
54
154
  url.searchParams.set("locale", effectiveLocale);
55
155
  if (options?.name)
56
156
  url.searchParams.set("name", options.name);
157
+ const urlStr = url.toString();
158
+ const cached = this.getCached(urlStr);
159
+ if (cached)
160
+ return cached;
57
161
  try {
58
- const res = await (0, rxjs_1.firstValueFrom)((0, ajax_1.ajax)({
59
- url: url.toString(),
162
+ const res = await this.executeRequest({
163
+ url: urlStr,
60
164
  method: "GET",
61
- headers: getHeaders(effectiveLocale),
62
- }));
63
- return res.response.data;
165
+ headers: getHeaders(effectiveLocale, this.origin, this.noCache),
166
+ timeout: this.timeout,
167
+ });
168
+ const data = this.applyResponseInterceptor(res.response.data);
169
+ this.setCache(urlStr, data);
170
+ return data;
64
171
  }
65
172
  catch (error) {
66
- const status = error instanceof ajax_1.AjaxError ? error.status : 0;
67
- throw new Error(`${this.messages.fetchTickets} (${status})`, { cause: error });
173
+ const processed = this.applyErrorInterceptor(error);
174
+ const status = processed instanceof ajax_1.AjaxError ? processed.status : 0;
175
+ throw new Error(extractErrorMessage(processed, this.messages.fetchTickets, status), { cause: error });
68
176
  }
69
177
  }
70
178
  async fetchTicketById(id, locale) {
71
179
  const effectiveLocale = locale ?? this.locale;
180
+ const urlStr = `${this.apiBase}/events/tickets/${id}`;
181
+ const cached = this.getCached(urlStr);
182
+ if (cached)
183
+ return cached;
72
184
  try {
73
- const res = await (0, rxjs_1.firstValueFrom)((0, ajax_1.ajax)({
74
- url: `${this.apiBase}/events/tickets/${id}`,
185
+ const res = await this.executeRequest({
186
+ url: urlStr,
75
187
  method: "GET",
76
- headers: getHeaders(effectiveLocale),
77
- }));
78
- return res.response.data;
188
+ headers: getHeaders(effectiveLocale, this.origin, this.noCache),
189
+ timeout: this.timeout,
190
+ });
191
+ const data = this.applyResponseInterceptor(res.response.data);
192
+ this.setCache(urlStr, data);
193
+ return data;
79
194
  }
80
195
  catch (error) {
81
- const status = error instanceof ajax_1.AjaxError ? error.status : 0;
82
- throw new Error(`${this.messages.fetchTicketById} (${status})`, { cause: error });
196
+ const processed = this.applyErrorInterceptor(error);
197
+ const status = processed instanceof ajax_1.AjaxError ? processed.status : 0;
198
+ throw new Error(extractErrorMessage(processed, this.messages.fetchTicketById, status), { cause: error });
83
199
  }
84
200
  }
85
201
  async fetchLanguages() {
202
+ const urlStr = `${this.apiBase}/events/onboarding/main-info/${this.apiKey}/languages`;
203
+ const cached = this.getCached(urlStr);
204
+ if (cached)
205
+ return cached;
86
206
  try {
87
- const res = await (0, rxjs_1.firstValueFrom)((0, ajax_1.ajax)({
88
- url: `${this.apiBase}/events/onboarding/main-info/${this.apiKey}/languages`,
207
+ const res = await this.executeRequest({
208
+ url: urlStr,
89
209
  method: "GET",
90
- }));
210
+ timeout: this.timeout,
211
+ headers: getHeaders(undefined, this.origin, this.noCache),
212
+ });
91
213
  const sorted = res.response.data.sort((a, b) => a.isDefault === b.isDefault ? 0 : a.isDefault ? -1 : 1);
92
- return sorted.map((l) => l.languageCode);
214
+ const data = this.applyResponseInterceptor(sorted.map((l) => l.languageCode));
215
+ this.setCache(urlStr, data);
216
+ return data;
93
217
  }
94
218
  catch (error) {
95
- const status = error instanceof ajax_1.AjaxError ? error.status : 0;
96
- throw new Error(`${this.messages.fetchLanguages} (${status})`, { cause: error });
219
+ const processed = this.applyErrorInterceptor(error);
220
+ const status = processed instanceof ajax_1.AjaxError ? processed.status : 0;
221
+ throw new Error(extractErrorMessage(processed, this.messages.fetchLanguages, status), { cause: error });
97
222
  }
98
223
  }
99
224
  async fetchForm(ticketId, locale) {
100
225
  const effectiveLocale = locale ?? this.locale;
226
+ const urlStr = `${this.apiBase}/application/forms/ticketing/${ticketId}/public`;
227
+ const cached = this.getCached(urlStr);
228
+ if (cached)
229
+ return cached;
101
230
  try {
102
- const res = await (0, rxjs_1.firstValueFrom)((0, ajax_1.ajax)({
103
- url: `${this.apiBase}/application/forms/ticketing/${ticketId}/public`,
231
+ const res = await this.executeRequest({
232
+ url: urlStr,
104
233
  method: "GET",
105
- headers: getHeaders(effectiveLocale),
106
- }));
107
- return res.response.data;
234
+ headers: getHeaders(effectiveLocale, this.origin, this.noCache),
235
+ timeout: this.timeout,
236
+ });
237
+ const data = this.applyResponseInterceptor(res.response.data);
238
+ this.setCache(urlStr, data);
239
+ return data;
108
240
  }
109
241
  catch (error) {
110
- const status = error instanceof ajax_1.AjaxError ? error.status : 0;
111
- throw new Error(`${this.messages.fetchForm} (${status})`, { cause: error });
242
+ const processed = this.applyErrorInterceptor(error);
243
+ const status = processed instanceof ajax_1.AjaxError ? processed.status : 0;
244
+ throw new Error(extractErrorMessage(processed, this.messages.fetchForm, status), { cause: error });
112
245
  }
113
246
  }
114
247
  async authorizeUpload(formId, fieldId, file, locale) {
115
248
  const effectiveLocale = locale ?? this.locale;
116
249
  try {
117
- const res = await (0, rxjs_1.firstValueFrom)((0, ajax_1.ajax)({
250
+ const res = await this.executeRequest({
118
251
  url: `${this.apiBase}/application/forms/${formId}/submissions/authorize-upload`,
119
252
  method: "POST",
120
253
  headers: {
121
- ...getHeaders(effectiveLocale),
254
+ ...getHeaders(effectiveLocale, this.origin, this.noCache),
122
255
  "Content-Type": "application/json",
123
256
  },
124
257
  body: {
@@ -127,11 +260,14 @@ class EventFormClient {
127
260
  fileSize: file.size,
128
261
  fileName: file.name,
129
262
  },
130
- }));
131
- return res.response.data.uploadToken;
263
+ timeout: this.timeout,
264
+ });
265
+ return this.applyResponseInterceptor(res.response.data.uploadToken);
132
266
  }
133
267
  catch (error) {
134
- throw new Error(extractErrorMessage(error, this.messages.authorizeUpload), { cause: error });
268
+ const processed = this.applyErrorInterceptor(error);
269
+ const status = processed instanceof ajax_1.AjaxError ? processed.status : 0;
270
+ throw new Error(extractErrorMessage(processed, this.messages.authorizeUpload, status), { cause: error });
135
271
  }
136
272
  }
137
273
  async uploadFile(formId, token, file, locale) {
@@ -140,26 +276,29 @@ class EventFormClient {
140
276
  body.append("file", file);
141
277
  body.append("uploadToken", token);
142
278
  try {
143
- const res = await (0, rxjs_1.firstValueFrom)((0, ajax_1.ajax)({
279
+ const res = await this.executeRequest({
144
280
  url: `${this.apiBase}/application/forms/${formId}/submissions/upload`,
145
281
  method: "POST",
146
- headers: getHeaders(effectiveLocale),
282
+ headers: getHeaders(effectiveLocale, this.origin, this.noCache),
147
283
  body,
148
- }));
149
- return res.response.data.url;
284
+ timeout: this.timeout,
285
+ });
286
+ return this.applyResponseInterceptor(res.response.data.url);
150
287
  }
151
288
  catch (error) {
152
- throw new Error(this.messages.uploadFile, { cause: error });
289
+ const processed = this.applyErrorInterceptor(error);
290
+ const status = processed instanceof ajax_1.AjaxError ? processed.status : 0;
291
+ throw new Error(extractErrorMessage(processed, this.messages.uploadFile, status), { cause: error });
153
292
  }
154
293
  }
155
294
  async submitForm(formId, data, context) {
156
295
  const effectiveLocale = context.locale ?? this.locale;
157
296
  try {
158
- await (0, rxjs_1.firstValueFrom)((0, ajax_1.ajax)({
297
+ const res = await this.executeRequest({
159
298
  url: `${this.apiBase}/application/forms/${formId}/submissions`,
160
299
  method: "POST",
161
300
  headers: {
162
- ...getHeaders(effectiveLocale),
301
+ ...getHeaders(effectiveLocale, this.origin, this.noCache),
163
302
  "Content-Type": "application/json",
164
303
  },
165
304
  body: {
@@ -168,10 +307,14 @@ class EventFormClient {
168
307
  resourceType: this.resourceType,
169
308
  resourceId: context.ticketId,
170
309
  },
171
- }));
310
+ timeout: this.timeout,
311
+ });
312
+ this.applyResponseInterceptor(res.response);
172
313
  }
173
314
  catch (error) {
174
- throw new Error(extractErrorMessage(error, this.messages.submitForm), { cause: error });
315
+ const processed = this.applyErrorInterceptor(error);
316
+ const status = processed instanceof ajax_1.AjaxError ? processed.status : 0;
317
+ throw new Error(extractErrorMessage(processed, this.messages.submitForm, status), { cause: error });
175
318
  }
176
319
  }
177
320
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":";;;AAAA,+BAAsC;AACtC,oCAA0D;AAS1D,MAAM,gBAAgB,GAAG,kCAAkC,CAAC;AAE5D,MAAM,sBAAsB,GAAkB;IAC5C,YAAY,EAAE,yBAAyB;IACvC,eAAe,EAAE,kBAAkB;IACnC,cAAc,EAAE,2BAA2B;IAC3C,SAAS,EAAE,gBAAgB;IAC3B,eAAe,EAAE,6BAA6B;IAC9C,UAAU,EAAE,oBAAoB;IAChC,UAAU,EAAE,mBAAmB;CAChC,CAAC;AAEF,SAAS,UAAU,CAAC,MAAe,EAAE,MAAe,EAAE,OAAiB;IACrE,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,IAAI,MAAM;QAAE,OAAO,CAAC,iBAAiB,CAAC,GAAG,MAAM,CAAC;IAChD,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;QAC3B,OAAO,CAAC,iBAAiB,CAAC,GAAG,MAAM,CAAC;IACtC,CAAC;IACD,IAAI,OAAO;QAAE,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,CAAC;IACnD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAc,EAAE,QAAgB,EAAE,MAAc;IAC3E,IAAI,OAAO,GAAG,QAAQ,CAAC;IACvB,IAAI,KAAK,YAAY,gBAAS,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,KAAK,CAAC,QAA4C,CAAC;QAChE,OAAO,GAAG,IAAI,EAAE,OAAO,IAAI,QAAQ,CAAC;IACtC,CAAC;SAAM,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAClC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IAC1B,CAAC;IACD,OAAO,GAAG,OAAO,KAAK,MAAM,GAAG,CAAC;AAClC,CAAC;AAqBD,MAAa,eAAe;IACT,OAAO,CAAS;IAChB,MAAM,CAAS;IACf,YAAY,CAAS;IACrB,QAAQ,CAAgB;IACxB,MAAM,CAAqB;IAC3B,OAAO,CAAS;IAChB,WAAW,CAAwC;IACnD,WAAW,CAAoC;IAC/C,OAAO,CAAU;IACjB,YAAY,CAAkC;IAC9C,KAAK,GAAG,IAAI,GAAG,EAAsB,CAAC;IAC/C,MAAM,CAAqB;IAEnC,YAAY,MAAuB;QACjC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QACxC,IAAI,CAAC,OAAO,GAAG,CAAC,MAAM,CAAC,UAAU,IAAI,gBAAgB,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,QAAQ,GAAG,EAAE,GAAG,sBAAsB,EAAE,GAAG,MAAM,CAAC,aAAa,EAAE,CAAC;QACvE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,uBAAuB,CAAC;QACvD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC;QACxC,IAAI,CAAC,WAAW,GAAG;YACjB,UAAU,EAAE,MAAM,CAAC,KAAK,EAAE,UAAU,IAAI,CAAC;YACzC,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,IAAI,IAAI;SACnC,CAAC;QACF,IAAI,CAAC,WAAW,GAAG;YACjB,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,KAAK;YACvC,GAAG,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG,IAAI,MAAM;SACjC,CAAC;QACF,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,KAAK,CAAC;QACvC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;IAC1C,CAAC;IAED,SAAS,CAAC,MAAc;QACtB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,UAAU;QACR,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAEO,SAAS,CAAI,GAAW;QAC9B,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO;YAAE,OAAO,SAAS,CAAC;QAChD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,CAAC,KAAK;YAAE,OAAO,SAAS,CAAC;QAC7B,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACvB,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,KAAK,CAAC,IAAS,CAAC;IACzB,CAAC;IAEO,QAAQ,CAAC,GAAW,EAAE,IAAa;QACzC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO;YAAE,OAAO;QACtC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE;YAClB,IAAI;YACJ,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG;SAC7C,CAAC,CAAC;IACL,CAAC;IAEO,uBAAuB,CAAC,MAAyB;QACvD,IAAI,IAAI,CAAC,YAAY,EAAE,OAAO,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;gBACvC,GAAG,EAAE,MAAM,CAAC,GAAG;gBACf,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,IAAI,EAAE,MAAM,CAAC,IAAI;aAClB,CAAC,CAAC;YACH,OAAO,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;QAClC,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,wBAAwB,CAAI,QAAW;QAC7C,IAAI,IAAI,CAAC,YAAY,EAAE,QAAQ,EAAE,CAAC;YAChC,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAM,CAAC;QACnD,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,qBAAqB,CAAC,KAAc;QAC1C,IAAI,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACxC,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,WAAW,CAAC,KAAc;QAChC,IAAI,KAAK,YAAY,gBAAS,EAAE,CAAC;YAC/B,OAAO,KAAK,CAAC,MAAM,IAAI,GAAG,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;QACnD,CAAC;QACD,OAAO,CAAC,CAAC,KAAK,YAAY,gBAAS,CAAC,CAAC;IACvC,CAAC;IAEO,KAAK,CAAC,cAAc,CAAI,MAAyB;QACvD,MAAM,WAAW,GAAG,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC;QACzD,IAAI,SAAkB,CAAC;QAEvB,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE,CAAC;YACxE,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,IAAA,qBAAc,EAAC,IAAA,WAAI,EAAI,EAAE,GAAG,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACpF,OAAO,MAAM,CAAC;YAChB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,SAAS,GAAG,KAAK,CAAC;gBAClB,IAAI,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;oBACrE,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;oBAC9D,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;oBAC7D,SAAS;gBACX,CAAC;gBACD,MAAM;YACR,CAAC;QACH,CAAC;QAED,MAAM,SAAS,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,OAGlB;QACC,MAAM,eAAe,GAAG,OAAO,EAAE,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC;QACvD,MAAM,GAAG,GAAG,IAAI,GAAG,CACjB,GAAG,IAAI,CAAC,OAAO,yBAAyB,IAAI,CAAC,MAAM,SAAS,CAC7D,CAAC;QACF,IAAI,eAAe;YAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;QACrE,IAAI,OAAO,EAAE,IAAI;YAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAE9D,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAW,MAAM,CAAC,CAAC;QAChD,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC;QAE1B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,cAAc,CAAwB;gBAC3D,GAAG,EAAE,MAAM;gBACX,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE,UAAU,CAAC,eAAe,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC;gBAC/D,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC9D,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAC5B,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;YACpD,MAAM,MAAM,GAAG,SAAS,YAAY,gBAAS,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACrE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QACxG,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,EAAU,EAAE,MAAe;QAC/C,MAAM,eAAe,GAAG,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC;QAC9C,MAAM,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,mBAAmB,EAAE,EAAE,CAAC;QAEtD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAS,MAAM,CAAC,CAAC;QAC9C,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC;QAE1B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,cAAc,CAAsB;gBACzD,GAAG,EAAE,MAAM;gBACX,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE,UAAU,CAAC,eAAe,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC;gBAC/D,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC9D,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAC5B,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;YACpD,MAAM,MAAM,GAAG,SAAS,YAAY,gBAAS,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACrE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAC3G,CAAC;IACH,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,MAAM,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,gCAAgC,IAAI,CAAC,MAAM,YAAY,CAAC;QAEtF,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAW,MAAM,CAAC,CAAC;QAChD,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC;QAE1B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,cAAc,CAA+B;gBAClE,GAAG,EAAE,MAAM;gBACX,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,OAAO,EAAE,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC;aAC1D,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAC7C,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CACvD,CAAC;YAEF,MAAM,IAAI,GAAG,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;YAC9E,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAC5B,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;YACpD,MAAM,MAAM,GAAG,SAAS,YAAY,gBAAS,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACrE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1G,CAAC;IACH,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,QAAgB,EAAE,MAAe;QAC/C,MAAM,eAAe,GAAG,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC;QAC9C,MAAM,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,gCAAgC,QAAQ,SAAS,CAAC;QAEhF,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAW,MAAM,CAAC,CAAC;QAChD,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC;QAE1B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,cAAc,CAAwB;gBAC3D,GAAG,EAAE,MAAM;gBACX,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE,UAAU,CAAC,eAAe,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC;gBAC/D,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC9D,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAC5B,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;YACpD,MAAM,MAAM,GAAG,SAAS,YAAY,gBAAS,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACrE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QACrG,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,MAAc,EACd,OAAe,EACf,IAAU,EACV,MAAe;QAEf,MAAM,eAAe,GAAG,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC;QAC9C,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,cAAc,CAAuC;gBAC1E,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,sBAAsB,MAAM,+BAA+B;gBAC/E,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,GAAG,UAAU,CAAC,eAAe,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC;oBACzD,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE;oBACJ,OAAO;oBACP,QAAQ,EAAE,IAAI,CAAC,IAAI;oBACnB,QAAQ,EAAE,IAAI,CAAC,IAAI;oBACnB,QAAQ,EAAE,IAAI,CAAC,IAAI;iBACpB;gBACD,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC,CAAC;YACH,OAAO,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACtE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;YACpD,MAAM,MAAM,GAAG,SAAS,YAAY,gBAAS,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACrE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAC3G,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU,CACd,MAAc,EACd,KAAa,EACb,IAAU,EACV,MAAe;QAEf,MAAM,eAAe,GAAG,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC;QAC9C,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;QACvC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC1B,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;QAElC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,cAAc,CAA+B;gBAClE,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,sBAAsB,MAAM,qBAAqB;gBACrE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,UAAU,CAAC,eAAe,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC;gBAC/D,IAAI;gBACJ,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC,CAAC;YACH,OAAO,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;YACpD,MAAM,MAAM,GAAG,SAAS,YAAY,gBAAS,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACrE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QACtG,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU,CACd,MAAc,EACd,IAA6B,EAC7B,OAIC;QAED,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC;QACtD,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,cAAc,CAAU;gBAC7C,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,sBAAsB,MAAM,cAAc;gBAC9D,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,GAAG,UAAU,CAAC,eAAe,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC;oBACzD,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE;oBACJ,IAAI;oBACJ,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,YAAY,EAAE,IAAI,CAAC,YAAY;oBAC/B,UAAU,EAAE,OAAO,CAAC,QAAQ;iBAC7B;gBACD,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC,CAAC;YACH,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC9C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;YACpD,MAAM,MAAM,GAAG,SAAS,YAAY,gBAAS,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACrE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QACtG,CAAC;IACH,CAAC;CACF;AAhUD,0CAgUC"}
@@ -1,4 +1,5 @@
1
1
  export { EventFormClient } from "./client/index.js";
2
- export { getAllFields, isFieldVisible, getVisibleFieldIds, } from "./utils/index.js";
3
- export type { ErrorMessages, EventFormConfig, FieldOption, FieldDefinition, StepDefinition, FormSchema, FormData, ApiResponse, TicketTranslation, Ticket, } from "./types/index.js";
2
+ export { getAllFields, isFieldVisible, getVisibleFieldIds, validateField, validateForm, } from "./utils/index.js";
3
+ export { FormStateManager } from "./state/index.js";
4
+ export type { ErrorMessages, EventFormConfig, FieldOption, FieldDefinition, StepDefinition, FormSchema, FormData, ApiResponse, TicketTranslation, Ticket, ValidationResult, } from "./types/index.js";
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EACL,YAAY,EACZ,cAAc,EACd,kBAAkB,GACnB,MAAM,kBAAkB,CAAC;AAE1B,YAAY,EACV,aAAa,EACb,eAAe,EACf,WAAW,EACX,eAAe,EACf,cAAc,EACd,UAAU,EACV,QAAQ,EACR,WAAW,EACX,iBAAiB,EACjB,MAAM,GACP,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EACL,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,YAAY,GACb,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD,YAAY,EACV,aAAa,EACb,eAAe,EACf,WAAW,EACX,eAAe,EACf,cAAc,EACd,UAAU,EACV,QAAQ,EACR,WAAW,EACX,iBAAiB,EACjB,MAAM,EACN,gBAAgB,GACjB,MAAM,kBAAkB,CAAC"}
package/dist/cjs/index.js CHANGED
@@ -1,10 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getVisibleFieldIds = exports.isFieldVisible = exports.getAllFields = exports.EventFormClient = void 0;
3
+ exports.FormStateManager = exports.validateForm = exports.validateField = exports.getVisibleFieldIds = exports.isFieldVisible = exports.getAllFields = exports.EventFormClient = void 0;
4
4
  var index_js_1 = require("./client/index.js");
5
5
  Object.defineProperty(exports, "EventFormClient", { enumerable: true, get: function () { return index_js_1.EventFormClient; } });
6
6
  var index_js_2 = require("./utils/index.js");
7
7
  Object.defineProperty(exports, "getAllFields", { enumerable: true, get: function () { return index_js_2.getAllFields; } });
8
8
  Object.defineProperty(exports, "isFieldVisible", { enumerable: true, get: function () { return index_js_2.isFieldVisible; } });
9
9
  Object.defineProperty(exports, "getVisibleFieldIds", { enumerable: true, get: function () { return index_js_2.getVisibleFieldIds; } });
10
+ Object.defineProperty(exports, "validateField", { enumerable: true, get: function () { return index_js_2.validateField; } });
11
+ Object.defineProperty(exports, "validateForm", { enumerable: true, get: function () { return index_js_2.validateForm; } });
12
+ var index_js_3 = require("./state/index.js");
13
+ Object.defineProperty(exports, "FormStateManager", { enumerable: true, get: function () { return index_js_3.FormStateManager; } });
10
14
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,8CAAoD;AAA3C,2GAAA,eAAe,OAAA;AAExB,6CAI0B;AAHxB,wGAAA,YAAY,OAAA;AACZ,0GAAA,cAAc,OAAA;AACd,8GAAA,kBAAkB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,8CAAoD;AAA3C,2GAAA,eAAe,OAAA;AAExB,6CAM0B;AALxB,wGAAA,YAAY,OAAA;AACZ,0GAAA,cAAc,OAAA;AACd,8GAAA,kBAAkB,OAAA;AAClB,yGAAA,aAAa,OAAA;AACb,wGAAA,YAAY,OAAA;AAGd,6CAAoD;AAA3C,4GAAA,gBAAgB,OAAA"}
@@ -0,0 +1,24 @@
1
+ import type { FieldDefinition } from "../types/index.js";
2
+ type ChangeCallback = (fieldId: string, value: unknown) => void;
3
+ export declare class FormStateManager {
4
+ private readonly fields;
5
+ private readonly values;
6
+ private readonly initialValues;
7
+ private readonly touched;
8
+ private readonly callbacks;
9
+ constructor(fields: FieldDefinition[]);
10
+ getValue(fieldId: string): unknown;
11
+ setValue(fieldId: string, value: unknown): void;
12
+ getValues(): Record<string, unknown>;
13
+ setValues(values: Record<string, unknown>): void;
14
+ isDirty(): boolean;
15
+ getDirtyFields(): Set<string>;
16
+ isTouched(fieldId: string): boolean;
17
+ touchField(fieldId: string): void;
18
+ reset(): void;
19
+ getVisibleFieldIds(): Set<string>;
20
+ getSubmissionData(): Record<string, unknown>;
21
+ onChange(callback: ChangeCallback): () => void;
22
+ }
23
+ export {};
24
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/state/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGzD,KAAK,cAAc,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;AAEhE,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;IAC3C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA+B;IACtD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA+B;IAC7D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA6B;gBAE3C,MAAM,EAAE,eAAe,EAAE;IAIrC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAIlC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAO/C,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAIpC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAWhD,OAAO,IAAI,OAAO;IAIlB,cAAc,IAAI,GAAG,CAAC,MAAM,CAAC;IAY7B,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAInC,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIjC,KAAK,IAAI,IAAI;IAQb,kBAAkB,IAAI,GAAG,CAAC,MAAM,CAAC;IAUjC,iBAAiB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAW5C,QAAQ,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM,IAAI;CAM/C"}
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FormStateManager = void 0;
4
+ const index_js_1 = require("../utils/index.js");
5
+ class FormStateManager {
6
+ fields;
7
+ values = {};
8
+ initialValues = {};
9
+ touched = new Set();
10
+ callbacks = new Set();
11
+ constructor(fields) {
12
+ this.fields = fields;
13
+ }
14
+ getValue(fieldId) {
15
+ return this.values[fieldId];
16
+ }
17
+ setValue(fieldId, value) {
18
+ this.values[fieldId] = value;
19
+ for (const cb of this.callbacks) {
20
+ cb(fieldId, value);
21
+ }
22
+ }
23
+ getValues() {
24
+ return { ...this.values };
25
+ }
26
+ setValues(values) {
27
+ for (const [key, value] of Object.entries(values)) {
28
+ this.values[key] = value;
29
+ }
30
+ for (const [key, value] of Object.entries(values)) {
31
+ for (const cb of this.callbacks) {
32
+ cb(key, value);
33
+ }
34
+ }
35
+ }
36
+ isDirty() {
37
+ return this.getDirtyFields().size > 0;
38
+ }
39
+ getDirtyFields() {
40
+ const dirty = new Set();
41
+ for (const field of this.fields) {
42
+ const current = this.values[field.id];
43
+ const initial = this.initialValues[field.id];
44
+ if (current !== initial) {
45
+ dirty.add(field.id);
46
+ }
47
+ }
48
+ return dirty;
49
+ }
50
+ isTouched(fieldId) {
51
+ return this.touched.has(fieldId);
52
+ }
53
+ touchField(fieldId) {
54
+ this.touched.add(fieldId);
55
+ }
56
+ reset() {
57
+ for (const key of Object.keys(this.values)) {
58
+ delete this.values[key];
59
+ }
60
+ Object.assign(this.values, structuredClone(this.initialValues));
61
+ this.touched.clear();
62
+ }
63
+ getVisibleFieldIds() {
64
+ const visible = new Set();
65
+ for (const field of this.fields) {
66
+ if ((0, index_js_1.isFieldVisible)(field, this.values, this.fields)) {
67
+ visible.add(field.id);
68
+ }
69
+ }
70
+ return visible;
71
+ }
72
+ getSubmissionData() {
73
+ const visible = this.getVisibleFieldIds();
74
+ const data = {};
75
+ for (const [key, value] of Object.entries(this.values)) {
76
+ if (visible.has(key)) {
77
+ data[key] = value;
78
+ }
79
+ }
80
+ return data;
81
+ }
82
+ onChange(callback) {
83
+ this.callbacks.add(callback);
84
+ return () => {
85
+ this.callbacks.delete(callback);
86
+ };
87
+ }
88
+ }
89
+ exports.FormStateManager = FormStateManager;
90
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/state/index.ts"],"names":[],"mappings":"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"}