@web-widget/vue2 1.52.1 → 1.53.1

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/vite.d.ts CHANGED
@@ -2,6 +2,7 @@ import * as vite from 'vite';
2
2
  import { WebWidgetUserConfig } from '@web-widget/vite-plugin';
3
3
 
4
4
  interface Vue2WebWidgetPluginOptions extends Partial<WebWidgetUserConfig> {
5
+ workspace?: string;
5
6
  }
6
7
  declare function vue2WebWidgetPlugin(options?: Vue2WebWidgetPluginOptions): vite.Plugin<any>[];
7
8
 
package/dist/vite.js CHANGED
@@ -1,42 +1,58 @@
1
1
  // src/vite.ts
2
2
  import { webWidgetPlugin } from "@web-widget/vite-plugin";
3
- var VUE_INTERNAL_SCRIPT_REQUEST = /\.vue\?vue&type=script\b.*$/;
3
+ import { posix } from "path";
4
+ import { normalizePath } from "@rollup/pluginutils";
5
+ function escapeRegExp(path) {
6
+ return path.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
7
+ }
8
+ function appendSlash(path) {
9
+ return path.endsWith(posix.sep) ? path : `${path}${posix.sep}`;
10
+ }
4
11
  function vue2WebWidgetPlugin(options) {
5
12
  const {
6
13
  manifest,
7
14
  provide = "@web-widget/vue2",
15
+ workspace = "",
8
16
  export: exportWidget = {},
9
17
  import: importWidget = {}
10
18
  } = options != null ? options : {};
11
- const route = /[.@]route\.vue(?:\?as=.+)?$/;
12
- const widget = /[.@]widget\.vue(?:\?as=.+)?$/;
19
+ const workspacePattern = workspace ? escapeRegExp(normalizePath(appendSlash(workspace))) : workspace;
20
+ const widgetPattern = `[.@]widget`;
21
+ const routePattern = `[.@]route`;
22
+ const modulesPattern = `[.@](?:route|widget)`;
23
+ const extensionPattern = `\\.vue`;
24
+ const vueBuildModeQueryPattern = `(?:\\?vue&type=script\\b.*)`;
25
+ const routeRegExp = new RegExp(
26
+ `^${workspacePattern}.*${routePattern}${extensionPattern}$`
27
+ );
13
28
  return webWidgetPlugin({
14
29
  manifest,
15
30
  provide,
16
31
  export: {
17
- include: [route, widget],
32
+ include: new RegExp(
33
+ `^${workspacePattern}[^?]*${modulesPattern}${extensionPattern}$`
34
+ ),
18
35
  extractFromExportDefault: [
19
36
  {
20
37
  name: "handler",
21
38
  default: "{GET({render}){return render()}}",
22
- include: route
39
+ include: routeRegExp
23
40
  },
24
41
  {
25
42
  name: "meta",
26
43
  default: "{}",
27
- include: route
44
+ include: routeRegExp
28
45
  }
29
46
  ],
30
47
  ...exportWidget
31
48
  },
32
49
  import: {
33
- include: /[.@]widget\.[^?]*(?:\?as=.+)?$/,
34
- includeImporter: [
35
- // vite: dev mode
36
- /\.vue(?:\?as=.+)?$/,
37
- // vite: build mode
38
- VUE_INTERNAL_SCRIPT_REQUEST
39
- ],
50
+ include: new RegExp(`^[^?]*${widgetPattern}\\.[^?]*$`),
51
+ includeImporter: new RegExp(
52
+ // vite dev mode: .vue
53
+ // vite build mode: .vue?vue&type=script&setup=true&lang.ts
54
+ `^${workspacePattern}[^?]*${extensionPattern}${vueBuildModeQueryPattern}?$`
55
+ ),
40
56
  ...importWidget
41
57
  }
42
58
  });
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@web-widget/vue2",
3
3
  "description": "Vue2 adapter",
4
- "version": "1.52.1",
4
+ "version": "1.53.1",
5
5
  "homepage": "https://github.com/web-widget/web-widget#readme",
6
6
  "repository": {
7
7
  "type": "git",
@@ -13,10 +13,11 @@
13
13
  },
14
14
  "license": "MIT",
15
15
  "dependencies": {
16
- "@web-widget/helpers": "1.52.1",
17
- "@web-widget/vite-plugin": "1.52.1",
18
- "@web-widget/web-widget": "1.52.1",
19
- "@web-widget/react": "1.52.1"
16
+ "@rollup/pluginutils": "^5.1.4",
17
+ "@web-widget/helpers": "1.53.1",
18
+ "@web-widget/vite-plugin": "1.53.1",
19
+ "@web-widget/web-widget": "1.53.1",
20
+ "@web-widget/react": "1.53.1"
20
21
  },
21
22
  "devDependencies": {
22
23
  "@types/node": "^22.2.0",