@embroider/vite 0.2.1-unstable.b446d89 → 0.2.1-unstable.b6c717f

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/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@embroider/vite",
3
- "version": "0.2.1-unstable.b446d89",
3
+ "version": "0.2.1-unstable.b6c717f",
4
4
  "main": "index.mjs",
5
5
  "peerDependencies": {
6
- "@embroider/core": "3.4.3-unstable.b446d89",
6
+ "@embroider/core": "3.4.3-unstable.b6c717f",
7
7
  "vite": "^4.3.9"
8
8
  },
9
9
  "scripts": {
@@ -11,7 +11,7 @@
11
11
  },
12
12
  "dependencies": {
13
13
  "@babel/core": "^7.22.9",
14
- "@embroider/macros": "1.13.4-unstable.b446d89",
14
+ "@embroider/macros": "1.13.4-unstable.b6c717f",
15
15
  "@rollup/pluginutils": "^4.1.1",
16
16
  "assert-never": "^1.2.1",
17
17
  "content-tag": "^1.1.2",
@@ -23,7 +23,7 @@
23
23
  "terser": "^5.7.0"
24
24
  },
25
25
  "devDependencies": {
26
- "@embroider/core": "3.4.3-unstable.b446d89",
26
+ "@embroider/core": "3.4.3-unstable.b6c717f",
27
27
  "@types/babel__core": "^7.20.1",
28
28
  "@types/debug": "^4.1.5",
29
29
  "@types/jsdom": "^16.2.11",
@@ -43,7 +43,10 @@ function esBuildResolver(root = process.cwd()) {
43
43
  });
44
44
  build.onLoad({ filter: /\.gjs$/ }, async ({ path: filename }) => {
45
45
  const code = (0, fs_extra_1.readFileSync)(filename, 'utf8');
46
- const result = (0, core_1.transform)(preprocessor.process(code, filename), { configFile: 'babel.config.js', filename });
46
+ const result = (0, core_1.transform)(preprocessor.process(code, filename), {
47
+ configFile: (0, path_1.join)(process.cwd(), 'babel.config.js'),
48
+ filename,
49
+ });
47
50
  if (!result || !result.code) {
48
51
  throw new Error(`Failed to load file ${filename} in esbuild-hbs-loader`);
49
52
  }
@@ -52,7 +55,7 @@ function esBuildResolver(root = process.cwd()) {
52
55
  });
53
56
  build.onLoad({ filter: /\.hbs$/ }, async ({ path: filename }) => {
54
57
  const code = (0, fs_extra_1.readFileSync)(filename, 'utf8');
55
- const result = (0, core_1.transform)((0, core_3.hbsToJS)(code), { configFile: 'babel.config.js', filename });
58
+ const result = (0, core_1.transform)((0, core_3.hbsToJS)(code), { configFile: (0, path_1.join)(process.cwd(), 'babel.config.js'), filename });
56
59
  if (!result || !result.code) {
57
60
  throw new Error(`Failed to load file ${filename} in esbuild-hbs-loader`);
58
61
  }
@@ -1 +1 @@
1
- {"version":3,"file":"esbuild-resolver.js","sourceRoot":"","sources":["esbuild-resolver.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Plugin as EsBuildPlugin, ImportKind, OnResolveResult, PluginBuild } from 'esbuild';\nimport { type PluginItem, transform } from '@babel/core';\nimport {\n type Resolution,\n type ResolverFunction,\n ResolverLoader,\n virtualContent,\n locateEmbroiderWorkingDir,\n} from '@embroider/core';\nimport { readFileSync, readJSONSync } from 'fs-extra';\nimport { EsBuildModuleRequest } from './esbuild-request';\nimport assertNever from 'assert-never';\nimport { dirname, resolve } from 'path';\nimport { hbsToJS } from '@embroider/core';\nimport { Preprocessor } from 'content-tag';\n\nexport function esBuildResolver(root = process.cwd()): EsBuildPlugin {\n let resolverLoader = new ResolverLoader(process.cwd());\n let macrosConfig: PluginItem | undefined;\n let preprocessor = new Preprocessor();\n\n return {\n name: 'embroider-esbuild-resolver',\n setup(build) {\n build.onResolve({ filter: /./ }, async ({ path, importer, pluginData, kind }) => {\n let request = EsBuildModuleRequest.from(path, importer, pluginData);\n if (!request) {\n return null;\n }\n let resolution = await resolverLoader.resolver.resolve(request, defaultResolve(build, kind));\n switch (resolution.type) {\n case 'found':\n return resolution.result;\n case 'not_found':\n return resolution.err;\n default:\n throw assertNever(resolution);\n }\n });\n\n build.onLoad({ namespace: 'embroider', filter: /./ }, ({ path }) => {\n let src = virtualContent(path, resolverLoader.resolver);\n if (!macrosConfig) {\n macrosConfig = readJSONSync(\n resolve(locateEmbroiderWorkingDir(root), 'rewritten-app', 'macros-config.json')\n ) as PluginItem;\n }\n return { contents: runMacros(src, path, macrosConfig) };\n });\n\n build.onLoad({ filter: /\\.gjs$/ }, async ({ path: filename }) => {\n const code = readFileSync(filename, 'utf8');\n\n const result = transform(preprocessor.process(code, filename), { configFile: 'babel.config.js', filename });\n\n if (!result || !result.code) {\n throw new Error(`Failed to load file ${filename} in esbuild-hbs-loader`);\n }\n\n const contents = result.code;\n\n return { contents };\n });\n\n build.onLoad({ filter: /\\.hbs$/ }, async ({ path: filename }) => {\n const code = readFileSync(filename, 'utf8');\n\n const result = transform(hbsToJS(code), { configFile: 'babel.config.js', filename });\n\n if (!result || !result.code) {\n throw new Error(`Failed to load file ${filename} in esbuild-hbs-loader`);\n }\n\n const contents = result.code;\n\n return { contents };\n });\n\n build.onLoad({ filter: /\\.js$/ }, ({ path, namespace }) => {\n let src: string;\n if (namespace === 'embroider') {\n src = virtualContent(path, resolverLoader.resolver);\n } else {\n src = readFileSync(path, 'utf8');\n }\n if (!macrosConfig) {\n macrosConfig = readJSONSync(\n resolve(locateEmbroiderWorkingDir(root), 'rewritten-app', 'macros-config.json')\n ) as PluginItem;\n }\n return { contents: runMacros(src, path, macrosConfig) };\n });\n },\n };\n}\n\nfunction runMacros(src: string, filename: string, macrosConfig: PluginItem): string {\n return transform(src, {\n filename,\n plugins: [macrosConfig],\n })!.code!;\n}\n\nfunction defaultResolve(\n context: PluginBuild,\n kind: ImportKind\n): ResolverFunction<EsBuildModuleRequest, Resolution<OnResolveResult, OnResolveResult>> {\n return async (request: EsBuildModuleRequest) => {\n if (request.isVirtual) {\n return {\n type: 'found',\n result: { path: request.specifier, namespace: 'embroider' },\n };\n }\n let result = await context.resolve(request.specifier, {\n importer: request.fromFile,\n resolveDir: dirname(request.fromFile),\n kind,\n pluginData: {\n embroider: {\n enableCustomResolver: false,\n meta: request.meta,\n },\n },\n });\n if (result.errors.length > 0) {\n return { type: 'not_found', err: result };\n } else {\n return { type: 'found', result };\n }\n };\n}\n"]}
1
+ {"version":3,"file":"esbuild-resolver.js","sourceRoot":"","sources":["esbuild-resolver.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Plugin as EsBuildPlugin, ImportKind, OnResolveResult, PluginBuild } from 'esbuild';\nimport { type PluginItem, transform } from '@babel/core';\nimport {\n type Resolution,\n type ResolverFunction,\n ResolverLoader,\n virtualContent,\n locateEmbroiderWorkingDir,\n} from '@embroider/core';\nimport { readFileSync, readJSONSync } from 'fs-extra';\nimport { EsBuildModuleRequest } from './esbuild-request';\nimport assertNever from 'assert-never';\nimport { dirname, resolve, join } from 'path';\nimport { hbsToJS } from '@embroider/core';\nimport { Preprocessor } from 'content-tag';\n\nexport function esBuildResolver(root = process.cwd()): EsBuildPlugin {\n let resolverLoader = new ResolverLoader(process.cwd());\n let macrosConfig: PluginItem | undefined;\n let preprocessor = new Preprocessor();\n\n return {\n name: 'embroider-esbuild-resolver',\n setup(build) {\n build.onResolve({ filter: /./ }, async ({ path, importer, pluginData, kind }) => {\n let request = EsBuildModuleRequest.from(path, importer, pluginData);\n if (!request) {\n return null;\n }\n let resolution = await resolverLoader.resolver.resolve(request, defaultResolve(build, kind));\n switch (resolution.type) {\n case 'found':\n return resolution.result;\n case 'not_found':\n return resolution.err;\n default:\n throw assertNever(resolution);\n }\n });\n\n build.onLoad({ namespace: 'embroider', filter: /./ }, ({ path }) => {\n let src = virtualContent(path, resolverLoader.resolver);\n if (!macrosConfig) {\n macrosConfig = readJSONSync(\n resolve(locateEmbroiderWorkingDir(root), 'rewritten-app', 'macros-config.json')\n ) as PluginItem;\n }\n return { contents: runMacros(src, path, macrosConfig) };\n });\n\n build.onLoad({ filter: /\\.gjs$/ }, async ({ path: filename }) => {\n const code = readFileSync(filename, 'utf8');\n\n const result = transform(preprocessor.process(code, filename), {\n configFile: join(process.cwd(), 'babel.config.js'),\n filename,\n });\n\n if (!result || !result.code) {\n throw new Error(`Failed to load file ${filename} in esbuild-hbs-loader`);\n }\n\n const contents = result.code;\n\n return { contents };\n });\n\n build.onLoad({ filter: /\\.hbs$/ }, async ({ path: filename }) => {\n const code = readFileSync(filename, 'utf8');\n\n const result = transform(hbsToJS(code), { configFile: join(process.cwd(), 'babel.config.js'), filename });\n\n if (!result || !result.code) {\n throw new Error(`Failed to load file ${filename} in esbuild-hbs-loader`);\n }\n\n const contents = result.code;\n\n return { contents };\n });\n\n build.onLoad({ filter: /\\.js$/ }, ({ path, namespace }) => {\n let src: string;\n if (namespace === 'embroider') {\n src = virtualContent(path, resolverLoader.resolver);\n } else {\n src = readFileSync(path, 'utf8');\n }\n if (!macrosConfig) {\n macrosConfig = readJSONSync(\n resolve(locateEmbroiderWorkingDir(root), 'rewritten-app', 'macros-config.json')\n ) as PluginItem;\n }\n return { contents: runMacros(src, path, macrosConfig) };\n });\n },\n };\n}\n\nfunction runMacros(src: string, filename: string, macrosConfig: PluginItem): string {\n return transform(src, {\n filename,\n plugins: [macrosConfig],\n })!.code!;\n}\n\nfunction defaultResolve(\n context: PluginBuild,\n kind: ImportKind\n): ResolverFunction<EsBuildModuleRequest, Resolution<OnResolveResult, OnResolveResult>> {\n return async (request: EsBuildModuleRequest) => {\n if (request.isVirtual) {\n return {\n type: 'found',\n result: { path: request.specifier, namespace: 'embroider' },\n };\n }\n let result = await context.resolve(request.specifier, {\n importer: request.fromFile,\n resolveDir: dirname(request.fromFile),\n kind,\n pluginData: {\n embroider: {\n enableCustomResolver: false,\n meta: request.meta,\n },\n },\n });\n if (result.errors.length > 0) {\n return { type: 'not_found', err: result };\n } else {\n return { type: 'found', result };\n }\n };\n}\n"]}