@dropins/tools 1.0.0 → 1.0.1-alpha04140951

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/fetch-graphql.js CHANGED
@@ -1,3 +1,3 @@
1
1
  /*! Copyright 2025 Adobe
2
2
  All Rights Reserved. */
3
- var H=Object.defineProperty;var g=(h,t,e)=>t in h?H(h,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):h[t]=e;var s=(h,t,e)=>g(h,typeof t!="symbol"?t+"":t,e);const F={"Content-Type":"application/json",Accept:"application/json"};class i{constructor(){s(this,"_endpoint");s(this,"_fetchGraphQlHeaders")}get endpoint(){return this._endpoint}get fetchGraphQlHeaders(){return this._fetchGraphQlHeaders}setEndpoint(t){this._endpoint=t}setFetchGraphQlHeader(t,e){this._fetchGraphQlHeaders={...this.fetchGraphQlHeaders,[t]:e}}removeFetchGraphQlHeader(t){var e;(e=this._fetchGraphQlHeaders)==null||delete e[t]}setFetchGraphQlHeaders(t){this._fetchGraphQlHeaders={...t}}async fetchGraphQl(t,e){const c=this.endpoint,l=this.fetchGraphQlHeaders;if(!c)throw Error('Missing "url"');const r=(e==null?void 0:e.method)??"POST",p=e==null?void 0:e.cache,G=e==null?void 0:e.signal;let n;const a=new URL(c),Q={...F,...l};return r==="POST"&&(n=JSON.stringify({query:t,variables:e==null?void 0:e.variables})),r==="GET"&&(a.searchParams.append("query",b(t)),e!=null&&e.variables&&a.searchParams.append("variables",JSON.stringify(e.variables))),await fetch(a,{method:r,headers:Q,body:n,cache:p,signal:G}).then(f=>f.json())}getConfig(){return{endpoint:this.endpoint,fetchGraphQlHeaders:this.fetchGraphQlHeaders}}getMethods(){return{setEndpoint:this.setEndpoint.bind(this),setFetchGraphQlHeader:this.setFetchGraphQlHeader.bind(this),removeFetchGraphQlHeader:this.removeFetchGraphQlHeader.bind(this),setFetchGraphQlHeaders:this.setFetchGraphQlHeaders.bind(this),fetchGraphQl:this.fetchGraphQl.bind(this),getConfig:this.getConfig.bind(this)}}}const d=new i;class _ extends i{get endpoint(){return this._endpoint??d.endpoint}get fetchGraphQlHeaders(){return(this._endpoint?this._fetchGraphQlHeaders:{...this._fetchGraphQlHeaders,...d.fetchGraphQlHeaders})||{}}}function b(h){return h=h.replace(/#.*/g,""),h=h.replace(/\s+/g," "),h.trim()}const{setEndpoint:u,setFetchGraphQlHeaders:v,setFetchGraphQlHeader:E,removeFetchGraphQlHeader:C,fetchGraphQl:w,getConfig:M}=d.getMethods();export{_ as FetchGraphQL,w as fetchGraphQl,M as getConfig,C as removeFetchGraphQlHeader,u as setEndpoint,E as setFetchGraphQlHeader,v as setFetchGraphQlHeaders};
3
+ var H=Object.defineProperty;var g=(h,t,e)=>t in h?H(h,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):h[t]=e;var s=(h,t,e)=>g(h,typeof t!="symbol"?t+"":t,e);const _={"Content-Type":"application/json",Accept:"application/json"};class n{constructor(){s(this,"_endpoint");s(this,"_fetchGraphQlHeaders",{})}get endpoint(){return this._endpoint}get fetchGraphQlHeaders(){return this._fetchGraphQlHeaders}setEndpoint(t){this._endpoint=t}setFetchGraphQlHeader(t,e){this._fetchGraphQlHeaders={...this.fetchGraphQlHeaders,[t]:e}}removeFetchGraphQlHeader(t){delete this._fetchGraphQlHeaders[t]}setFetchGraphQlHeaders(t){typeof t=="function"?this._fetchGraphQlHeaders={...this._fetchGraphQlHeaders,...t(this._fetchGraphQlHeaders)}:this._fetchGraphQlHeaders={...t}}async fetchGraphQl(t,e){const d=this.endpoint,l=this.fetchGraphQlHeaders;if(!d)throw Error('Missing "url"');const r=(e==null?void 0:e.method)??"POST",p=e==null?void 0:e.cache,f=e==null?void 0:e.signal;let i;const a=new URL(d),G={..._,...l};return r==="POST"&&(i=JSON.stringify({query:t,variables:e==null?void 0:e.variables})),r==="GET"&&(a.searchParams.append("query",F(t)),e!=null&&e.variables&&a.searchParams.append("variables",JSON.stringify(e.variables))),await fetch(a,{method:r,headers:G,body:i,cache:p,signal:f}).then(Q=>Q.json())}getConfig(){return{endpoint:this.endpoint,fetchGraphQlHeaders:this.fetchGraphQlHeaders}}getMethods(){return{setEndpoint:this.setEndpoint.bind(this),setFetchGraphQlHeader:this.setFetchGraphQlHeader.bind(this),removeFetchGraphQlHeader:this.removeFetchGraphQlHeader.bind(this),setFetchGraphQlHeaders:this.setFetchGraphQlHeaders.bind(this),fetchGraphQl:this.fetchGraphQl.bind(this),getConfig:this.getConfig.bind(this)}}}const c=new n;class m extends n{get endpoint(){return this._endpoint??c.endpoint}get fetchGraphQlHeaders(){return this._endpoint?this._fetchGraphQlHeaders:{...this._fetchGraphQlHeaders,...c.fetchGraphQlHeaders}}}function F(h){return h=h.replace(/#.*/g,""),h=h.replace(/\s+/g," "),h.trim()}const{setEndpoint:u,setFetchGraphQlHeaders:v,setFetchGraphQlHeader:E,removeFetchGraphQlHeader:C,fetchGraphQl:w,getConfig:M}=c.getMethods();export{m as FetchGraphQL,w as fetchGraphQl,M as getConfig,C as removeFetchGraphQlHeader,u as setEndpoint,E as setFetchGraphQlHeader,v as setFetchGraphQlHeaders};
package/package.json CHANGED
@@ -1 +1 @@
1
- {"name": "@dropins/tools", "version": "1.0.0", "license": "SEE LICENSE IN LICENSE.md"}
1
+ {"name": "@dropins/tools", "version": "1.0.1-alpha04140951", "license": "SEE LICENSE IN LICENSE.md"}
@@ -26,8 +26,8 @@ export type FetchQueryError = Array<{
26
26
  declare class FetchGraphQLMesh {
27
27
  _endpoint?: string;
28
28
  get endpoint(): string | undefined;
29
- get fetchGraphQlHeaders(): Header | undefined;
30
- _fetchGraphQlHeaders: Header | undefined;
29
+ get fetchGraphQlHeaders(): Header;
30
+ _fetchGraphQlHeaders: Header;
31
31
  /**
32
32
  * Sets the GraphQL endpoint.
33
33
  * @param endpoint - The GraphQL endpoint.
@@ -46,9 +46,22 @@ declare class FetchGraphQLMesh {
46
46
  removeFetchGraphQlHeader(key: string): void;
47
47
  /**
48
48
  * Sets the GraphQL headers.
49
- * @param header - The header object.
49
+ * @param header - The header object or a function that returns a header object.
50
+ * If a function is provided, it will be called with the previous headers.
51
+ * The returned object will be merged with the previous headers.
52
+ * @example
53
+ * ```js
54
+ * // set headers
55
+ * setFetchGraphQlHeaders({ test: 'test' });
56
+ *
57
+ * // merge with previous headers
58
+ * setFetchGraphQlHeaders((prev) => ({
59
+ * ...prev,
60
+ * test: 'test2',
61
+ * }));
62
+ * ```
50
63
  */
51
- setFetchGraphQlHeaders(header: Header): void;
64
+ setFetchGraphQlHeaders(header: Header | ((prev: Header) => Header)): void;
52
65
  /**
53
66
  * Fetches GraphQL data.
54
67
  * @param query - The GraphQL query.
@@ -64,20 +77,20 @@ declare class FetchGraphQLMesh {
64
77
  */
65
78
  getConfig(): {
66
79
  endpoint: string | undefined;
67
- fetchGraphQlHeaders: Header | undefined;
80
+ fetchGraphQlHeaders: Header;
68
81
  };
69
82
  getMethods(): {
70
83
  setEndpoint: (endpoint: string) => void;
71
84
  setFetchGraphQlHeader: (key: string, value: string | null) => void;
72
85
  removeFetchGraphQlHeader: (key: string) => void;
73
- setFetchGraphQlHeaders: (header: Header) => void;
86
+ setFetchGraphQlHeaders: (header: Header | ((prev: Header) => Header)) => void;
74
87
  fetchGraphQl: <T = any>(query: string, options?: FetchOptions | undefined) => Promise<{
75
88
  errors?: FetchQueryError | undefined;
76
89
  data: T;
77
90
  }>;
78
91
  getConfig: () => {
79
92
  endpoint: string | undefined;
80
- fetchGraphQlHeaders: Header | undefined;
93
+ fetchGraphQlHeaders: Header;
81
94
  };
82
95
  };
83
96
  }
@@ -102,12 +115,12 @@ export declare class FetchGraphQL extends FetchGraphQLMesh {
102
115
  * @property {Function} fetchGraphQl - Fetches GraphQL data.
103
116
  * @property {Function} getConfig - Gets the configuration.
104
117
  */
105
- export declare const setEndpoint: (endpoint: string) => void, setFetchGraphQlHeaders: (header: Header) => void, setFetchGraphQlHeader: (key: string, value: string | null) => void, removeFetchGraphQlHeader: (key: string) => void, fetchGraphQl: <T = any>(query: string, options?: FetchOptions) => Promise<{
118
+ export declare const setEndpoint: (endpoint: string) => void, setFetchGraphQlHeaders: (header: Header | ((prev: Header) => Header)) => void, setFetchGraphQlHeader: (key: string, value: string | null) => void, removeFetchGraphQlHeader: (key: string) => void, fetchGraphQl: <T = any>(query: string, options?: FetchOptions) => Promise<{
106
119
  errors?: FetchQueryError | undefined;
107
120
  data: T;
108
121
  }>, getConfig: () => {
109
122
  endpoint: string | undefined;
110
- fetchGraphQlHeaders: Header | undefined;
123
+ fetchGraphQlHeaders: Header;
111
124
  };
112
125
  export {};
113
126
  //# sourceMappingURL=index.d.ts.map
@@ -4,14 +4,14 @@ export declare const recaptchaFetchApi: {
4
4
  setEndpoint: (endpoint: string) => void;
5
5
  setFetchGraphQlHeader: (key: string, value: string | null) => void;
6
6
  removeFetchGraphQlHeader: (key: string) => void;
7
- setFetchGraphQlHeaders: (header: import('@adobe-commerce/fetch-graphql').Header) => void;
7
+ setFetchGraphQlHeaders: (header: import('@adobe-commerce/fetch-graphql').Header | ((prev: import('@adobe-commerce/fetch-graphql').Header) => import('@adobe-commerce/fetch-graphql').Header)) => void;
8
8
  fetchGraphQl: <T = any>(query: string, options?: import('@adobe-commerce/fetch-graphql').FetchOptions | undefined) => Promise<{
9
9
  errors?: import('@adobe-commerce/fetch-graphql').FetchQueryError | undefined;
10
10
  data: T;
11
11
  }>;
12
12
  getConfig: () => {
13
13
  endpoint: string | undefined;
14
- fetchGraphQlHeaders: import('@adobe-commerce/fetch-graphql').Header | undefined;
14
+ fetchGraphQlHeaders: import('@adobe-commerce/fetch-graphql').Header;
15
15
  };
16
16
  };
17
17
  export declare class RecaptchaModule {