@very-simple/ajax 0.5.4 → 0.6.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.
package/dist/index.d.ts CHANGED
@@ -7,6 +7,7 @@ interface VisitOptions {
7
7
  autoFocus?: boolean;
8
8
  loadingDelay?: number;
9
9
  progressHideDelay?: number;
10
+ request?: RequestInit;
10
11
  }
11
12
  type MergeStrategy = 'replace' | 'morph' | 'before' | 'after' | 'prepend' | 'append' | 'update';
12
13
  interface Config {
@@ -41,7 +42,7 @@ declare global {
41
42
 
42
43
  declare const _default: {
43
44
  start: ({ watchHistory, merge, morphHeads, loadingDelay, }?: Config) => void;
44
- visit: (url: string, { action, emitEvents, isBackForward, morphHeads, merge: mergeStrategy, loadingDelay, progressHideDelay, autoFocus, }?: VisitOptions) => Promise<void>;
45
+ visit: (url: string, { action, emitEvents, isBackForward, morphHeads, merge: mergeStrategy, loadingDelay, progressHideDelay, autoFocus, request, }?: VisitOptions) => Promise<void>;
45
46
  };
46
47
 
47
48
  export { _default as default };
package/dist/index.js CHANGED
@@ -24,7 +24,9 @@ var load = async (url, regionIds, options) => {
24
24
  startTrickle();
25
25
  }, options.loadingDelay);
26
26
  const response = await fetch(url, {
27
+ ...options.request,
27
28
  headers: {
29
+ ...options.request?.headers,
28
30
  "X-Very-Simple-Request": "true",
29
31
  "X-Very-Simple-Regions": regionIds.join(" ")
30
32
  },
@@ -144,7 +146,8 @@ var visit = async (url, {
144
146
  merge: mergeStrategy = globalConfig.merge,
145
147
  loadingDelay = globalConfig.loadingDelay,
146
148
  progressHideDelay = globalConfig.progressHideDelay,
147
- autoFocus = true
149
+ autoFocus = true,
150
+ request
148
151
  } = {}) => {
149
152
  prevUrl = currentUrl;
150
153
  currentUrl = url;
@@ -155,7 +158,7 @@ var visit = async (url, {
155
158
  }
156
159
  const regions = findRegions(document);
157
160
  if (!newDocument) {
158
- const options = { loadingDelay, progressHideDelay };
161
+ const options = { loadingDelay, progressHideDelay, request };
159
162
  const result = await load(url, Array.from(regions.keys()), options);
160
163
  if (result) ({ url, document: newDocument } = result);
161
164
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@very-simple/ajax",
3
- "version": "0.5.4",
3
+ "version": "0.6.0",
4
4
  "description": "A very simple turbolinks inspired library",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",