mobx-tanstack-query-api 0.0.73 → 0.0.75

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.
@@ -1,5 +1,5 @@
1
1
  import { LoDashStatic } from 'lodash';
2
- import { AnyObject, KeyOfByValue } from 'yummies/utils/types';
2
+ import { AnyObject, KeyOfByValue, Maybe } from 'yummies/utils/types';
3
3
  export type CodegenDataUtils = {
4
4
  _: LoDashStatic;
5
5
  getInlineParseContent: (requestParams: AnyObject) => string;
@@ -71,6 +71,10 @@ export interface GenerateQueryApiParams {
71
71
  libImports?: {
72
72
  'mobx-tanstack-query-api'?: string;
73
73
  };
74
+ transforms?: {
75
+ groupEnumValue?: (group: string, namespace?: Maybe<string>) => string;
76
+ tagEnumValue?: (tag: string, namespace?: Maybe<string>) => string;
77
+ };
74
78
  }
75
79
  export type AllImportFileParams = Record<KeyOfByValue<Required<GenerateQueryApiParams>, 'builtin' | ImportFileParams>, ImportFileParams>;
76
80
  export declare const generateApi: (params: GenerateQueryApiParams | GenerateQueryApiParams[]) => Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/codegen/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAS,MAAM,qBAAqB,CAAC;AAgBrE,MAAM,MAAM,gBAAgB,GAAG;IAC7B,CAAC,EAAE,YAAY,CAAC;IAChB,qBAAqB,EAAE,CAAC,aAAa,EAAE,SAAS,KAAK,MAAM,CAAC;IAC5D,eAAe,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;CAChD,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,SAAS,CAAC;AAEvC,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,QAAQ;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAE1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,qBAAqB,CAAC,EAAE,CACtB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,gBAAgB,KACpB,MAAM,CAAC;IAEZ;;OAEG;IACH,OAAO,CAAC,EACJ,CAAC,CAAC,KAAK,EAAE,SAAS,KAAK,MAAM,CAAC,GAC9B,cAAc,GACd,gBAAgB,MAAM,EAAE,GACxB,KAAK,GACL,OAAO,MAAM,EAAE,CAAC;IAEpB;;;;;;;;;;;;;;;OAeG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,SAAS,KAAK,MAAM,CAAC,CAAC;IAEpD;;;;;;;;OAQG;IACH,yBAAyB,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAE7C,WAAW,CAAC,EAAE,SAAS,GAAG,gBAAgB,CAAC;IAC3C,QAAQ,CAAC,EAAE,SAAS,GAAG,gBAAgB,CAAC;IACxC,UAAU,CAAC,EAAE,SAAS,GAAG,gBAAgB,CAAC;IAE1C,eAAe,CAAC,EAAE,CAChB,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,SAAS,KACb;QACH,QAAQ,EAAE,MAAM,CAAC;QACjB,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,cAAc,CAAC,EAAE,CACf,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,SAAS,KACb;QACH,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IAEF,cAAc,CAAC,EAAE,SAAS,CAAC;IAE3B,kBAAkB,CAAC,EAAE,SAAS,CAAC;IAE/B,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAAO,CAAC;IAE7C,YAAY,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC;IAE9C,UAAU,CAAC,EAAE;QACX,yBAAyB,CAAC,EAAE,MAAM,CAAC;KACpC,CAAC;CACH;AAED,MAAM,MAAM,mBAAmB,GAAG,MAAM,CACtC,YAAY,CAAC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,SAAS,GAAG,gBAAgB,CAAC,EAC5E,gBAAgB,CACjB,CAAC;AAEF,eAAO,MAAM,WAAW,GACtB,QAAQ,sBAAsB,GAAG,sBAAsB,EAAE,KACxD,OAAO,CAAC,IAAI,CAqbd,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/codegen/index.ts"],"names":[],"mappings":"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"}
package/codegen/index.js CHANGED
@@ -307,6 +307,7 @@ export * as ${exportGroupName} from './endpoints';
307
307
  ...generated,
308
308
  metaInfo,
309
309
  utils,
310
+ codegenParams: params,
310
311
  }),
311
312
  });
312
313
  if (namespace) {
@@ -1,11 +1,12 @@
1
1
  import { Maybe } from 'yummies';
2
- import { CodegenDataUtils, MetaInfo } from '../index.js';
2
+ import { CodegenDataUtils, GenerateQueryApiParams, MetaInfo } from '../index.js';
3
3
  export interface MetaInfoTmplParams {
4
4
  formatTSContent: (...args: any[]) => Promise<string>;
5
+ codegenParams: GenerateQueryApiParams;
5
6
  metaInfo: Maybe<MetaInfo>;
6
7
  utils: CodegenDataUtils;
7
8
  }
8
9
  export declare const formatGroupNameEnumKey: (groupName: string, { _ }: CodegenDataUtils) => Capitalize<string>;
9
10
  export declare const formatTagNameEnumKey: (tagName: string, utils: CodegenDataUtils) => Capitalize<string>;
10
- export declare const metaInfoTmpl: ({ metaInfo, utils, formatTSContent, }: MetaInfoTmplParams) => Promise<string>;
11
+ export declare const metaInfoTmpl: ({ metaInfo, utils, formatTSContent, codegenParams, }: MetaInfoTmplParams) => Promise<string>;
11
12
  //# sourceMappingURL=meta-info.tmpl.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"meta-info.tmpl.d.ts","sourceRoot":"","sources":["../../../src/codegen/templates/meta-info.tmpl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAIzD,MAAM,WAAW,kBAAkB;IACjC,eAAe,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACrD,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC1B,KAAK,EAAE,gBAAgB,CAAC;CACzB;AAED,eAAO,MAAM,sBAAsB,GACjC,WAAW,MAAM,EACjB,OAAO,gBAAgB,uBACgB,CAAC;AAE1C,eAAO,MAAM,oBAAoB,GAC/B,SAAS,MAAM,EACf,OAAO,gBAAgB,uBACkB,CAAC;AAE5C,eAAO,MAAM,YAAY,GAAU,uCAIhC,kBAAkB,oBAoBpB,CAAC"}
1
+ {"version":3,"file":"meta-info.tmpl.d.ts","sourceRoot":"","sources":["../../../src/codegen/templates/meta-info.tmpl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,QAAQ,EACT,MAAM,aAAa,CAAC;AAIrB,MAAM,WAAW,kBAAkB;IACjC,eAAe,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACrD,aAAa,EAAE,sBAAsB,CAAC;IACtC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC1B,KAAK,EAAE,gBAAgB,CAAC;CACzB;AAED,eAAO,MAAM,sBAAsB,GACjC,WAAW,MAAM,EACjB,OAAO,gBAAgB,uBACgB,CAAC;AAE1C,eAAO,MAAM,oBAAoB,GAC/B,SAAS,MAAM,EACf,OAAO,gBAAgB,uBACkB,CAAC;AAE5C,eAAO,MAAM,YAAY,GAAU,sDAKhC,kBAAkB,oBAoBpB,CAAC"}
@@ -1,20 +1,20 @@
1
1
  import { LINTERS_IGNORE } from './constants.js';
2
2
  export const formatGroupNameEnumKey = (groupName, { _ }) => _.upperFirst(_.camelCase(groupName));
3
3
  export const formatTagNameEnumKey = (tagName, utils) => formatGroupNameEnumKey(tagName, utils);
4
- export const metaInfoTmpl = async ({ metaInfo, utils, formatTSContent, }) => {
4
+ export const metaInfoTmpl = async ({ metaInfo, utils, formatTSContent, codegenParams, }) => {
5
5
  return await formatTSContent(`${LINTERS_IGNORE}
6
6
  ${[
7
7
  metaInfo?.namespace && `export const namespace = "${metaInfo?.namespace}";`,
8
8
  metaInfo?.groupNames?.length &&
9
9
  `
10
10
  export const enum Group {
11
- ${metaInfo?.groupNames.map((groupName) => `${formatGroupNameEnumKey(groupName, utils)} = "${groupName}"`).join(',\n')}
11
+ ${metaInfo?.groupNames.map((groupName) => `${formatGroupNameEnumKey(groupName, utils)} = "${codegenParams.transforms?.groupEnumValue?.(groupName) ?? groupName}"`).join(',\n')}
12
12
  }
13
13
  `,
14
14
  metaInfo?.tags?.length &&
15
15
  `
16
16
  export const enum Tag {
17
- ${metaInfo?.tags.map((tagName) => `${formatTagNameEnumKey(tagName, utils)} = "${tagName}"`).join(',\n')}
17
+ ${metaInfo?.tags.map((tagName) => `${formatTagNameEnumKey(tagName, utils)} = "${codegenParams.transforms?.tagEnumValue?.(tagName) ?? tagName}"`).join(',\n')}
18
18
  }
19
19
  `,
20
20
  ]
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mobx-tanstack-query-api",
3
- "version": "0.0.73",
3
+ "version": "0.0.75",
4
4
  "keywords": [],
5
5
  "author": "js2me",
6
6
  "license": "MIT",
@@ -24,6 +24,7 @@ export type RequestParams = Omit<FullRequestParams, 'body' | 'method' | 'query'
24
24
  export interface HttpClientConfig<TMeta = unknown> {
25
25
  baseUrl?: string;
26
26
  meta?: TMeta;
27
+ fetch?: typeof globalThis.fetch;
27
28
  baseApiParams?: Omit<RequestParams, 'baseUrl' | 'cancelToken' | 'signal'>;
28
29
  contentFormatters?: Record<string, (input: any) => any>;
29
30
  toQueryString?: (query?: QueryParamsType) => string;
@@ -31,9 +32,8 @@ export interface HttpClientConfig<TMeta = unknown> {
31
32
  baseUrl: string;
32
33
  path: string;
33
34
  query: string;
34
- }) => string;
35
+ }, metadata: TMeta | null) => string;
35
36
  interceptor?: (requestParams: RequestParams, metadata: TMeta | null) => Promise<RequestParams | void> | RequestParams | void;
36
- fetch?: typeof fetch;
37
37
  }
38
38
  export interface HttpResponse<TData, TError = null, TStatus = number> extends Omit<Response, 'status'> {
39
39
  data: TData;
@@ -57,15 +57,14 @@ export type AnyHttpResponse = HttpResponse<any, any>;
57
57
  export declare const isHttpResponse: (response: unknown, status?: number) => response is AnyHttpResponse;
58
58
  export declare const isHttpBadResponse: (response: unknown) => response is HttpResponse<null, any>;
59
59
  export declare class HttpClient<TMeta = unknown> {
60
- baseUrl: string;
60
+ private config;
61
+ private fetch;
61
62
  meta: TMeta | null;
62
63
  baseApiParams: RequestParams;
63
- private interceptor?;
64
- private fetch;
65
- private customBuildUrl;
66
- private customToQueryString;
67
64
  badResponse: unknown;
68
65
  constructor(config?: HttpClientConfig<TMeta>);
66
+ get baseUrl(): string;
67
+ updateConfig(update: Partial<HttpClientConfig<TMeta>>): void;
69
68
  setMeta: (data: TMeta | null) => void;
70
69
  setBadResponse: (response: unknown) => void;
71
70
  protected encodeQueryParam(key: string, value: any): string;
@@ -1 +1 @@
1
- {"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../../src/runtime/http-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../../src/runtime/http-client.ts"],"names":[],"mappings":"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"}
@@ -8,37 +8,44 @@ export const isHttpBadResponse = (response) => {
8
8
  return isHttpResponse(response) && !response.ok;
9
9
  };
10
10
  export class HttpClient {
11
- baseUrl = '';
12
- meta = null;
13
- baseApiParams = {
14
- credentials: 'same-origin',
15
- headers: {},
16
- redirect: 'follow',
17
- referrerPolicy: 'no-referrer',
18
- };
19
- interceptor;
11
+ config;
20
12
  fetch;
21
- customBuildUrl;
22
- customToQueryString;
23
- badResponse = null;
13
+ meta;
14
+ baseApiParams;
15
+ badResponse;
24
16
  constructor(config) {
25
- this.baseUrl = config?.baseUrl ?? '';
17
+ this.config = config ?? {};
18
+ this.badResponse = null;
26
19
  this.meta = config?.meta ?? null;
27
- this.interceptor = config?.interceptor;
28
- this.fetch = config?.fetch ?? fetch.bind(globalThis);
29
- this.customBuildUrl = config?.buildUrl;
30
- this.customToQueryString = config?.toQueryString;
20
+ this.fetch = config?.fetch ?? globalThis.fetch;
31
21
  this.baseApiParams = {
32
- ...this.baseApiParams,
33
- ...config?.baseApiParams,
22
+ credentials: 'same-origin',
23
+ headers: {},
24
+ redirect: 'follow',
25
+ referrerPolicy: 'no-referrer',
34
26
  };
35
- Object.assign(this.contentFormatters, config?.contentFormatters ?? {});
27
+ this.updateConfig(this.config);
36
28
  observable.ref(this, 'badResponse');
37
29
  observable.ref(this, 'meta');
38
30
  action(this, 'setMeta');
39
31
  action(this, 'setBadResponse');
40
32
  makeObservable(this);
41
33
  }
34
+ get baseUrl() {
35
+ return this.config.baseUrl ?? '';
36
+ }
37
+ updateConfig(update) {
38
+ Object.assign(this.config, update);
39
+ if (update.baseApiParams) {
40
+ Object.assign(this.baseApiParams, update.baseApiParams);
41
+ }
42
+ if (update.contentFormatters) {
43
+ Object.assign(this.contentFormatters, update.contentFormatters);
44
+ }
45
+ if (update.fetch) {
46
+ this.fetch = update.fetch;
47
+ }
48
+ }
42
49
  setMeta = (data) => {
43
50
  this.meta = data;
44
51
  };
@@ -57,8 +64,8 @@ export class HttpClient {
57
64
  return value.map((v) => this.encodeQueryParam(key, v)).join('&');
58
65
  }
59
66
  toQueryString(rawQuery) {
60
- if (this.customToQueryString) {
61
- return this.customToQueryString(rawQuery);
67
+ if (this.config.toQueryString) {
68
+ return this.config.toQueryString(rawQuery);
62
69
  }
63
70
  const query = rawQuery || {};
64
71
  const keys = Object.keys(query).filter((key) => 'undefined' !== typeof query[key]);
@@ -137,8 +144,8 @@ export class HttpClient {
137
144
  const path = params.path;
138
145
  const queryString = params.query && this.toQueryString(params.query);
139
146
  const query = queryString ? `?${queryString}` : '';
140
- if (this.customBuildUrl) {
141
- return this.customBuildUrl(params, { baseUrl, path, query });
147
+ if (this.config.buildUrl) {
148
+ return this.config.buildUrl(params, { baseUrl, path, query }, this.meta);
142
149
  }
143
150
  const url = baseUrl + path + query;
144
151
  return url;
@@ -147,9 +154,10 @@ export class HttpClient {
147
154
  this.setBadResponse(null);
148
155
  const { body, contentType = 'application/json', format = 'json', ...params } = fullParams;
149
156
  let requestParams = this.mergeRequestParams(params);
150
- if (this.interceptor) {
157
+ if (this.config.interceptor) {
151
158
  requestParams =
152
- (await this.interceptor(requestParams, this.meta)) ?? requestParams;
159
+ (await this.config.interceptor(requestParams, this.meta)) ??
160
+ requestParams;
153
161
  }
154
162
  const payloadFormatter = this.contentFormatters[contentType];
155
163
  const responseFormat = format || requestParams.format;