@webpros/tsxuserprofilevue 3.0.11 → 3.1.0-alpha.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -2,13 +2,15 @@
2
2
  /* tslint:disable */
3
3
 
4
4
  /**
5
- * Mock Service Worker (1.3.0).
5
+ * Mock Service Worker.
6
6
  * @see https://github.com/mswjs/msw
7
7
  * - Please do NOT modify this file.
8
8
  * - Please do NOT serve this file on production.
9
9
  */
10
10
 
11
- const INTEGRITY_CHECKSUM = '3d6b9f06410d179a7f7404d4bf4c3c70'
11
+ const PACKAGE_VERSION = '2.2.14'
12
+ const INTEGRITY_CHECKSUM = '26357c79639bfa20d64c0efca2a87423'
13
+ const IS_MOCKED_RESPONSE = Symbol('isMockedResponse')
12
14
  const activeClientIds = new Set()
13
15
 
14
16
  self.addEventListener('install', function () {
@@ -47,7 +49,10 @@ self.addEventListener('message', async function (event) {
47
49
  case 'INTEGRITY_CHECK_REQUEST': {
48
50
  sendToClient(client, {
49
51
  type: 'INTEGRITY_CHECK_RESPONSE',
50
- payload: INTEGRITY_CHECKSUM,
52
+ payload: {
53
+ packageVersion: PACKAGE_VERSION,
54
+ checksum: INTEGRITY_CHECKSUM,
55
+ },
51
56
  })
52
57
  break
53
58
  }
@@ -86,12 +91,6 @@ self.addEventListener('message', async function (event) {
86
91
 
87
92
  self.addEventListener('fetch', function (event) {
88
93
  const { request } = event
89
- const accept = request.headers.get('accept') || ''
90
-
91
- // Bypass server-sent events.
92
- if (accept.includes('text/event-stream')) {
93
- return
94
- }
95
94
 
96
95
  // Bypass navigation requests.
97
96
  if (request.mode === 'navigate') {
@@ -112,29 +111,8 @@ self.addEventListener('fetch', function (event) {
112
111
  }
113
112
 
114
113
  // Generate unique request ID.
115
- const requestId = Math.random().toString(16).slice(2)
116
-
117
- event.respondWith(
118
- handleRequest(event, requestId).catch((error) => {
119
- if (error.name === 'NetworkError') {
120
- console.warn(
121
- '[MSW] Successfully emulated a network error for the "%s %s" request.',
122
- request.method,
123
- request.url,
124
- )
125
- return
126
- }
127
-
128
- // At this point, any exception indicates an issue with the original request/response.
129
- console.error(
130
- `\
131
- [MSW] Caught an exception from the "%s %s" request (%s). This is probably not a problem with Mock Service Worker. There is likely an additional logging output above.`,
132
- request.method,
133
- request.url,
134
- `${error.name}: ${error.message}`,
135
- )
136
- }),
137
- )
114
+ const requestId = crypto.randomUUID()
115
+ event.respondWith(handleRequest(event, requestId))
138
116
  })
139
117
 
140
118
  async function handleRequest(event, requestId) {
@@ -146,21 +124,24 @@ async function handleRequest(event, requestId) {
146
124
  // this message will pend indefinitely.
147
125
  if (client && activeClientIds.has(client.id)) {
148
126
  ;(async function () {
149
- const clonedResponse = response.clone()
150
- sendToClient(client, {
151
- type: 'RESPONSE',
152
- payload: {
153
- requestId,
154
- type: clonedResponse.type,
155
- ok: clonedResponse.ok,
156
- status: clonedResponse.status,
157
- statusText: clonedResponse.statusText,
158
- body:
159
- clonedResponse.body === null ? null : await clonedResponse.text(),
160
- headers: Object.fromEntries(clonedResponse.headers.entries()),
161
- redirected: clonedResponse.redirected,
127
+ const responseClone = response.clone()
128
+
129
+ sendToClient(
130
+ client,
131
+ {
132
+ type: 'RESPONSE',
133
+ payload: {
134
+ requestId,
135
+ isMockedResponse: IS_MOCKED_RESPONSE in response,
136
+ type: responseClone.type,
137
+ status: responseClone.status,
138
+ statusText: responseClone.statusText,
139
+ body: responseClone.body,
140
+ headers: Object.fromEntries(responseClone.headers.entries()),
141
+ },
162
142
  },
163
- })
143
+ [responseClone.body],
144
+ )
164
145
  })()
165
146
  }
166
147
 
@@ -196,20 +177,20 @@ async function resolveMainClient(event) {
196
177
 
197
178
  async function getResponse(event, client, requestId) {
198
179
  const { request } = event
199
- const clonedRequest = request.clone()
180
+
181
+ // Clone the request because it might've been already used
182
+ // (i.e. its body has been read and sent to the client).
183
+ const requestClone = request.clone()
200
184
 
201
185
  function passthrough() {
202
- // Clone the request because it might've been already used
203
- // (i.e. its body has been read and sent to the client).
204
- const headers = Object.fromEntries(clonedRequest.headers.entries())
186
+ const headers = Object.fromEntries(requestClone.headers.entries())
205
187
 
206
- // Remove MSW-specific request headers so the bypassed requests
207
- // comply with the server's CORS preflight check.
208
- // Operate with the headers as an object because request "Headers"
209
- // are immutable.
210
- delete headers['x-msw-bypass']
188
+ // Remove internal MSW request header so the passthrough request
189
+ // complies with any potential CORS preflight checks on the server.
190
+ // Some servers forbid unknown request headers.
191
+ delete headers['x-msw-intention']
211
192
 
212
- return fetch(clonedRequest, { headers })
193
+ return fetch(requestClone, { headers })
213
194
  }
214
195
 
215
196
  // Bypass mocking when the client is not active.
@@ -225,57 +206,46 @@ async function getResponse(event, client, requestId) {
225
206
  return passthrough()
226
207
  }
227
208
 
228
- // Bypass requests with the explicit bypass header.
229
- // Such requests can be issued by "ctx.fetch()".
230
- if (request.headers.get('x-msw-bypass') === 'true') {
231
- return passthrough()
232
- }
233
-
234
209
  // Notify the client that a request has been intercepted.
235
- const clientMessage = await sendToClient(client, {
236
- type: 'REQUEST',
237
- payload: {
238
- id: requestId,
239
- url: request.url,
240
- method: request.method,
241
- headers: Object.fromEntries(request.headers.entries()),
242
- cache: request.cache,
243
- mode: request.mode,
244
- credentials: request.credentials,
245
- destination: request.destination,
246
- integrity: request.integrity,
247
- redirect: request.redirect,
248
- referrer: request.referrer,
249
- referrerPolicy: request.referrerPolicy,
250
- body: await request.text(),
251
- bodyUsed: request.bodyUsed,
252
- keepalive: request.keepalive,
210
+ const requestBuffer = await request.arrayBuffer()
211
+ const clientMessage = await sendToClient(
212
+ client,
213
+ {
214
+ type: 'REQUEST',
215
+ payload: {
216
+ id: requestId,
217
+ url: request.url,
218
+ mode: request.mode,
219
+ method: request.method,
220
+ headers: Object.fromEntries(request.headers.entries()),
221
+ cache: request.cache,
222
+ credentials: request.credentials,
223
+ destination: request.destination,
224
+ integrity: request.integrity,
225
+ redirect: request.redirect,
226
+ referrer: request.referrer,
227
+ referrerPolicy: request.referrerPolicy,
228
+ body: requestBuffer,
229
+ keepalive: request.keepalive,
230
+ },
253
231
  },
254
- })
232
+ [requestBuffer],
233
+ )
255
234
 
256
235
  switch (clientMessage.type) {
257
236
  case 'MOCK_RESPONSE': {
258
237
  return respondWithMock(clientMessage.data)
259
238
  }
260
239
 
261
- case 'MOCK_NOT_FOUND': {
240
+ case 'PASSTHROUGH': {
262
241
  return passthrough()
263
242
  }
264
-
265
- case 'NETWORK_ERROR': {
266
- const { name, message } = clientMessage.data
267
- const networkError = new Error(message)
268
- networkError.name = name
269
-
270
- // Rejecting a "respondWith" promise emulates a network error.
271
- throw networkError
272
- }
273
243
  }
274
244
 
275
245
  return passthrough()
276
246
  }
277
247
 
278
- function sendToClient(client, message) {
248
+ function sendToClient(client, message, transferrables = []) {
279
249
  return new Promise((resolve, reject) => {
280
250
  const channel = new MessageChannel()
281
251
 
@@ -287,17 +257,28 @@ function sendToClient(client, message) {
287
257
  resolve(event.data)
288
258
  }
289
259
 
290
- client.postMessage(message, [channel.port2])
260
+ client.postMessage(
261
+ message,
262
+ [channel.port2].concat(transferrables.filter(Boolean)),
263
+ )
291
264
  })
292
265
  }
293
266
 
294
- function sleep(timeMs) {
295
- return new Promise((resolve) => {
296
- setTimeout(resolve, timeMs)
267
+ async function respondWithMock(response) {
268
+ // Setting response status code to 0 is a no-op.
269
+ // However, when responding with a "Response.error()", the produced Response
270
+ // instance will have status code set to 0. Since it's not possible to create
271
+ // a Response instance with status code 0, handle that use-case separately.
272
+ if (response.status === 0) {
273
+ return Response.error()
274
+ }
275
+
276
+ const mockedResponse = new Response(response.body, response)
277
+
278
+ Reflect.defineProperty(mockedResponse, IS_MOCKED_RESPONSE, {
279
+ value: true,
280
+ enumerable: true,
297
281
  })
298
- }
299
282
 
300
- async function respondWithMock(response) {
301
- await sleep(response.delay)
302
- return new Response(response.body, response)
283
+ return mockedResponse
303
284
  }
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "main": "dist/index.js",
5
5
  "author": "Sascha Fuchs <sascha.fuchs@webpros.com>",
6
6
  "license": "MIT",
7
- "version": "3.0.11",
7
+ "version": "3.1.0-alpha.1",
8
8
  "engines": {
9
9
  "node": "18.x"
10
10
  },
@@ -33,60 +33,57 @@
33
33
  "story:preview": "histoire preview"
34
34
  },
35
35
  "dependencies": {
36
- "@headlessui/vue": "^1.7.16",
37
- "@histoire/plugin-vue": "^0.17.1",
36
+ "@headlessui/vue": "^1.7.23",
37
+ "@histoire/plugin-vue": "^0.17.17",
38
38
  "@tailwindcss/container-queries": "^0.1.1",
39
- "@vueuse/core": "^10.4.1",
40
- "@vueuse/integrations": "^10.4.1",
41
- "axios": "^1.5.0",
39
+ "@vueuse/core": "^11.1.0",
40
+ "@vueuse/integrations": "^11.1.0",
41
+ "axios": "^1.7.7",
42
42
  "container-query-polyfill": "^1.0.2",
43
- "marked": "^5.1.1",
43
+ "marked": "^5.1.2",
44
44
  "mitt": "^3.0.1",
45
- "terser": "^5.19.4",
46
- "universal-cookie": "^6.1.1",
47
- "vue": "^3.3.4",
48
- "vue-multiselect": "^3.0.0-beta.2"
45
+ "terser": "^5.34.1",
46
+ "universal-cookie": "^7.2.1",
47
+ "vue": "^3.5.11",
48
+ "vue-multiselect": "^3.1.0"
49
49
  },
50
50
  "devDependencies": {
51
- "zod": "^4.0.0-beta.1",
52
- "histoire": "^0.17.0",
53
- "@babel/core": "^7.22.17",
54
- "@typescript-eslint/eslint-plugin": "^6.7.0",
55
- "@typescript-eslint/parser": "^6.7.0",
56
- "@vitejs/plugin-vue": "^4.3.4",
57
- "@vitest/ui": "^0.34.4",
51
+ "@babel/core": "^7.24.4",
52
+ "@typescript-eslint/eslint-plugin": "^7.7.0",
53
+ "@typescript-eslint/parser": "^7.7.0",
54
+ "@vitejs/plugin-vue": "^5.0.4",
55
+ "@vitest/ui": "^1.5.0",
58
56
  "@vue/eslint-config-standard": "^8.0.1",
59
57
  "@vue/eslint-config-typescript": "^11.0.3",
60
- "@vue/test-utils": "^2.4.1",
61
- "autoprefixer": "^10.4.15",
58
+ "@vue/test-utils": "^2.4.5",
59
+ "autoprefixer": "^10.4.19",
62
60
  "babel-loader": "^9.1.3",
63
61
  "cross-fetch": "^4.0.0",
64
- "cssnano": "^6.0.1",
65
- "eslint": "^8.49.0",
66
- "eslint-config-prettier": "^9.0.0",
67
- "eslint-import-resolver-typescript": "^3.6.0",
68
- "eslint-plugin-import": "^2.28.1",
62
+ "cssnano": "^6.1.2",
63
+ "eslint": "^9.0.0",
64
+ "eslint-config-prettier": "^9.1.0",
65
+ "eslint-import-resolver-typescript": "^3.6.1",
66
+ "eslint-plugin-import": "^2.29.1",
69
67
  "eslint-plugin-node": "^11.1.0",
70
68
  "eslint-plugin-promise": "^6.1.1",
71
- "eslint-plugin-vue": "^9.17.0",
69
+ "eslint-plugin-vue": "^9.25.0",
70
+ "histoire": "^0.17.17",
72
71
  "jsdom": "^22.1.0",
73
- "msw": "^1.3.0",
74
- "plop": "^4.0.0",
75
- "postcss": "^8.4.29",
72
+ "msw": "^2.2.14",
73
+ "plop": "^4.0.1",
74
+ "postcss": "^8.4.38",
76
75
  "postcss-cli": "^10.1.0",
77
76
  "postcss-import": "^15.1.0",
78
77
  "postcss-nested": "^6.0.1",
79
- "tailwindcss": "^3.3.3",
80
- "typescript": "^5.3.0-dev.20230913",
81
- "unplugin-auto-import": "^0.16.6",
78
+ "tailwindcss": "^3.4.3",
79
+ "typescript": "^5.6.3",
80
+ "unplugin-auto-import": "^0.17.5",
82
81
  "unplugin-vue-components": "^0.25.2",
83
- "vite": "^4.4.9",
84
- "vitest": "^0.34.4",
85
- "vue-loader": "^17.2.2",
86
- "vue-tsc": "^1.8.11",
87
- "wait-on": "^7.0.1"
88
- },
89
- "msw": {
90
- "workerDirectory": "public"
82
+ "vite": "^5.2.9",
83
+ "vitest": "^1.5.0",
84
+ "vue-loader": "^17.4.2",
85
+ "vue-tsc": "^2.0.13",
86
+ "wait-on": "^7.2.0",
87
+ "zod": "^4.0.0-beta.1"
91
88
  }
92
89
  }