@txstate-mws/sveltekit-utils 1.0.0 → 1.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/dist/api.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { InteractionEvent } from '@txstate-mws/fastify-shared';
2
- export type APIBaseQueryPayload = string | Record<string, string | number | (string | number)[]>;
1
+ import type { InteractionEvent, ValidatedResponse } from '@txstate-mws/fastify-shared';
2
+ export type APIBaseQueryPayload = string | Record<string, undefined | string | number | (string | number)[]>;
3
3
  type Optional<T, K extends keyof T> = Pick<Partial<T>, K> & Omit<T, K>;
4
4
  /**
5
5
  * Provided for convenience in case you are not using APIBase but still want to record navigations
@@ -19,18 +19,46 @@ export declare class APIBase {
19
19
  constructor(apiBase: string, authRedirect: string);
20
20
  init(token: string | undefined, fetch?: (info: RequestInfo, init?: RequestInit) => Promise<Response>): Promise<void>;
21
21
  stringifyQuery(query: undefined | APIBaseQueryPayload): string;
22
- protected request<ReturnType = any>(path: string, method: string, payload?: {
22
+ protected request<ReturnType = any>(path: string, method: string, opts?: {
23
23
  body?: any;
24
24
  query?: APIBaseQueryPayload;
25
- }): Promise<any>;
26
- get<ReturnType = any>(path: string, query?: APIBaseQueryPayload): Promise<any>;
27
- post<ReturnType = any>(path: string, body?: any, query?: APIBaseQueryPayload): Promise<any>;
28
- put<ReturnType = any>(path: string, body?: any, query?: APIBaseQueryPayload): Promise<any>;
29
- patch<ReturnType = any>(path: string, body?: any, query?: APIBaseQueryPayload): Promise<any>;
25
+ inlineValidation?: boolean;
26
+ }): Promise<ReturnType>;
27
+ get<ReturnType = any>(path: string, query?: APIBaseQueryPayload): Promise<ReturnType>;
28
+ /**
29
+ * Remember to use validatedPost when the user is interacting with a form. That way they
30
+ * will get inline errors.
31
+ */
32
+ post<ReturnType = any>(path: string, body?: any, query?: APIBaseQueryPayload): Promise<ReturnType>;
33
+ /**
34
+ * Remember to use validatedPut when the user is interacting with a form. That way they
35
+ * will get inline errors.
36
+ */
37
+ put<ReturnType = any>(path: string, body?: any, query?: APIBaseQueryPayload): Promise<ReturnType>;
38
+ /**
39
+ * Remember to use validatedPatch when the user is interacting with a form. That way they
40
+ * will get inline errors.
41
+ */
42
+ patch<ReturnType = any>(path: string, body?: any, query?: APIBaseQueryPayload): Promise<ReturnType>;
43
+ /**
44
+ * Use this method when the user is interacting with a form. You should expect a ValidatedResponse,
45
+ * e.g. { success: false, messages: [{ type: 'error', message: 'That name is already taken.', path: 'name' }] }
46
+ */
47
+ validatedPost<ReturnType extends ValidatedResponse = ValidatedResponse>(path: string, body?: any, query?: APIBaseQueryPayload): Promise<ReturnType>;
48
+ /**
49
+ * Use this method when the user is interacting with a form. You should expect a ValidatedResponse,
50
+ * e.g. { success: false, messages: [{ type: 'error', message: 'That name is already taken.', path: 'name' }] }
51
+ */
52
+ validatedPut<ReturnType extends ValidatedResponse = ValidatedResponse>(path: string, body?: any, query?: APIBaseQueryPayload): Promise<ReturnType>;
53
+ /**
54
+ * Use this method when the user is interacting with a form. You should expect a ValidatedResponse,
55
+ * e.g. { success: false, messages: [{ type: 'error', message: 'That name is already taken.', path: 'name' }] }
56
+ */
57
+ validatedPatch<ReturnType extends ValidatedResponse = ValidatedResponse>(path: string, body?: any, query?: APIBaseQueryPayload): Promise<ReturnType>;
30
58
  /**
31
59
  * Sending a JSON body with an HTTP DELETE is not recommended
32
60
  */
33
- delete<ReturnType = any>(path: string, query?: APIBaseQueryPayload, body?: any): Promise<any>;
61
+ delete<ReturnType = any>(path: string, query?: APIBaseQueryPayload, body?: any): Promise<ReturnType>;
34
62
  graphql<ReturnType = any>(query: string, variables?: any, querySignature?: string): Promise<ReturnType>;
35
63
  protected analyticsQueue: InteractionEvent[];
36
64
  recordInteraction(evt: Optional<InteractionEvent, 'screen'>): void;
package/dist/api.js CHANGED
@@ -51,19 +51,21 @@ export class APIBase {
51
51
  }
52
52
  return '?' + p.toString();
53
53
  }
54
- async request(path, method, payload) {
54
+ async request(path, method, opts) {
55
55
  await this.readyPromise;
56
56
  try {
57
- const resp = await this.fetch(this.apiBase + path + this.stringifyQuery(payload?.query), {
57
+ const resp = await this.fetch(this.apiBase + path + this.stringifyQuery(opts?.query), {
58
58
  method,
59
59
  headers: {
60
60
  Authorization: `Bearer ${this.token ?? ''}`,
61
61
  Accept: 'application/json',
62
- ...(payload?.body ? { 'Content-Type': 'application/json' } : {})
62
+ ...(opts?.body ? { 'Content-Type': 'application/json' } : {})
63
63
  },
64
- body: payload?.body ? JSON.stringify(payload.body) : undefined
64
+ body: opts?.body ? JSON.stringify(opts.body) : undefined
65
65
  });
66
- if (!resp.ok) {
66
+ const contentType = resp.headers.get("content-type");
67
+ const isJsonResponse = contentType && contentType.indexOf("application/json") !== -1;
68
+ if (!resp.ok && !(resp.status === 422 && opts?.inlineValidation)) {
67
69
  if (resp.status === 401) {
68
70
  const loginRedirect = new URL(this.authRedirect);
69
71
  loginRedirect.searchParams.set('requestedUrl', location.href);
@@ -71,13 +73,12 @@ export class APIBase {
71
73
  throw error(401);
72
74
  }
73
75
  else {
74
- const message = ((await rescue(resp.json()))?.message ?? resp.statusText);
76
+ const message = ((isJsonResponse ? (await rescue(resp.json()))?.message : await rescue(resp.text())) ?? resp.statusText);
75
77
  toasts.add(message);
76
78
  throw error(resp.status, message);
77
79
  }
78
80
  }
79
- const contentType = resp.headers.get("content-type");
80
- return (contentType && contentType.indexOf("application/json") !== -1) ? await resp.json() : await resp.text();
81
+ return ((isJsonResponse) ? await resp.json() : await resp.text());
81
82
  }
82
83
  catch (e) {
83
84
  toasts.add(e.message);
@@ -87,15 +88,48 @@ export class APIBase {
87
88
  async get(path, query) {
88
89
  return await this.request(path, 'GET', { query });
89
90
  }
91
+ /**
92
+ * Remember to use validatedPost when the user is interacting with a form. That way they
93
+ * will get inline errors.
94
+ */
90
95
  async post(path, body, query) {
91
96
  return await this.request(path, 'POST', { body, query });
92
97
  }
98
+ /**
99
+ * Remember to use validatedPut when the user is interacting with a form. That way they
100
+ * will get inline errors.
101
+ */
93
102
  async put(path, body, query) {
94
103
  return await this.request(path, 'PUT', { body, query });
95
104
  }
105
+ /**
106
+ * Remember to use validatedPatch when the user is interacting with a form. That way they
107
+ * will get inline errors.
108
+ */
96
109
  async patch(path, body, query) {
97
110
  return await this.request(path, 'PATCH', { body, query });
98
111
  }
112
+ /**
113
+ * Use this method when the user is interacting with a form. You should expect a ValidatedResponse,
114
+ * e.g. { success: false, messages: [{ type: 'error', message: 'That name is already taken.', path: 'name' }] }
115
+ */
116
+ async validatedPost(path, body, query) {
117
+ return await this.request(path, 'POST', { body, query, inlineValidation: true });
118
+ }
119
+ /**
120
+ * Use this method when the user is interacting with a form. You should expect a ValidatedResponse,
121
+ * e.g. { success: false, messages: [{ type: 'error', message: 'That name is already taken.', path: 'name' }] }
122
+ */
123
+ async validatedPut(path, body, query) {
124
+ return await this.request(path, 'PUT', { body, query, inlineValidation: true });
125
+ }
126
+ /**
127
+ * Use this method when the user is interacting with a form. You should expect a ValidatedResponse,
128
+ * e.g. { success: false, messages: [{ type: 'error', message: 'That name is already taken.', path: 'name' }] }
129
+ */
130
+ async validatedPatch(path, body, query) {
131
+ return await this.request(path, 'PATCH', { body, query, inlineValidation: true });
132
+ }
99
133
  /**
100
134
  * Sending a JSON body with an HTTP DELETE is not recommended
101
135
  */
package/dist/api.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@txstate-mws/sveltekit-utils",
3
- "version": "1.0.0",
3
+ "version": "1.0.2",
4
4
  "description": "Shared library for code that is specifically tied to sveltekit in addition to svelte.",
5
5
  "type": "module",
6
6
  "exports": {