@immense/vue-pom-generator 1.0.17 → 1.0.18

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/RELEASE_NOTES.md CHANGED
@@ -1,20 +1,27 @@
1
- ## v1.0.17
1
+ # v1.0.18
2
2
 
3
- ### Highlights
4
- - Fixed TypeScript declaration file emission during build to ensure `.d.ts` files are generated
5
- alongside compiled output
6
- - Updated `.gitignore` to exclude generated declaration files from source control
7
- - Build process now includes explicit `tsc --emitDeclarationOnly` step after Vite compilation
3
+ ## Highlights
8
4
 
9
- ### Changes
10
- - **Build**: Added TypeScript compiler step to emit declaration files, as Vite alone does not
11
- generate `.d.ts` even with `declaration:true` in tsconfig
12
- - **Configuration**: Updated `.gitignore` to ignore generated TypeScript declaration outputs
5
+ - Fixed `ERR_INVALID_URL_SCHEME` error by migrating from `fileURLToPath` to
6
+ `import.meta.dirname`
7
+ - Improved path resolution in class generation module
8
+ - Added PR release-notes preview comments workflow
13
9
 
14
- ### Pull Requests Included
15
- - [#1 Add PR release-notes preview
16
- comments](https://github.com/immense/vue-pom-generator/pull/1) by @dkattan (merged 2026-02-02)
10
+ ## Changes
17
11
 
18
- ### Testing
19
- All existing tests continue to pass.
12
+ **Bug Fixes**
13
+ - Use `import.meta.dirname` instead of `fileURLToPath` to resolve directory paths, preventing
14
+ invalid URL scheme errors in class generation
15
+
16
+ **Developer Experience**
17
+ - Added automated release notes preview comments on pull requests (#1)
18
+
19
+ ## Pull Requests Included
20
+
21
+ - #1 Add PR release-notes preview comments (https://github.com/immense/vue-pom-generator/pull/1)
22
+ by @dkattan
23
+
24
+ ## Testing
25
+
26
+ No specific test changes mentioned in this release.
20
27
 
@@ -1,7 +1,6 @@
1
1
  import fs from "node:fs";
2
2
  import path from "node:path";
3
3
  import process from "node:process";
4
- import { fileURLToPath } from "node:url";
5
4
  import { generateViewObjectModelMethodContent } from "../method-generation";
6
5
  import { introspectNuxtPages, parseRouterFileFromCwd } from "../router-introspection";
7
6
  import { IComponentDependencies, IDataTestId, PomExtraClickMethodSpec, PomPrimarySpec, upperFirst } from "../utils";
@@ -1484,12 +1483,16 @@ async function generateAggregatedFiles(
1484
1483
 
1485
1484
  // Copy runtime dependencies into the output folder so the aggregated POM file can
1486
1485
  // import them without relying on workspace package resolution.
1487
- const clickInstrumentationAbs = fileURLToPath(new URL("../click-instrumentation.ts", import.meta.url));
1488
- // These runtime .ts files must resolve correctly both when running from source
1489
- // (e.g. during development/tests) and when bundled into dist/index.* for npm.
1490
- // Resolving via package-root `class-generation/*` is stable across both.
1491
- const pointerAbs = fileURLToPath(new URL("../class-generation/Pointer.ts", import.meta.url));
1492
- const playwrightTypesAbs = fileURLToPath(new URL("../class-generation/playwright-types.ts", import.meta.url));
1486
+ // Use import.meta.dirname (a plain absolute path string) instead of
1487
+ // fileURLToPath(new URL(..., import.meta.url)) to avoid ERR_INVALID_URL_SCHEME
1488
+ // when globalThis.document has been shimmed by JSDOM (as done in ensureDomShim
1489
+ // for router introspection) the Rollup CJS shim for import.meta.url then
1490
+ // picks up document.baseURI (https://example.test/) instead of a file:// URL.
1491
+ // Rollup transforms import.meta.dirname to __dirname in the CJS bundle, which
1492
+ // is always a valid absolute path regardless of any document globals.
1493
+ const clickInstrumentationAbs = path.resolve(import.meta.dirname, "../click-instrumentation.ts");
1494
+ const pointerAbs = path.resolve(import.meta.dirname, "../class-generation/Pointer.ts");
1495
+ const playwrightTypesAbs = path.resolve(import.meta.dirname, "../class-generation/playwright-types.ts");
1493
1496
 
1494
1497
  const runtimeFiles: Array<{ filePath: string; content: string }> = [
1495
1498
  {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../class-generation/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,oCAAoC,EAAE,MAAM,sBAAsB,CAAC;AAE5E,OAAO,EAAE,sBAAsB,EAAoE,MAAM,UAAU,CAAC;AAQpH,OAAO,EAAE,oCAAoC,EAAE,CAAC;AA4ChD,UAAU,SAAS;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AA+MD,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;;;;;;;;OAWG;IACH,gBAAgB,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAE1D;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;;;OAOG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEhD;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,KAAK,CAAC;QAC3B,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;QACrB,wBAAwB,EAAE,MAAM,EAAE,CAAC;QAEnC;;;WAGG;QACH,QAAQ,CAAC,EAAE,OAAO,GAAG,YAAY,GAAG,MAAM,CAAC;KAC5C,CAAC,CAAC;IAEH,yEAAyE;IACzE,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,uDAAuD;IACvD,aAAa,CAAC,EAAE,KAAK,CAAC,IAAI,GAAG,QAAQ,CAAC,CAAC;IAEvC,6BAA6B;IAC7B,MAAM,CAAC,EAAE;QACP,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IAEF,6EAA6E;IAC7E,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAElC,2FAA2F;IAC3F,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,mDAAmD;IACnD,UAAU,CAAC,EAAE,YAAY,GAAG,MAAM,CAAC;IAEnC,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;CAClD;AAiCD,wBAAsB,aAAa,CACjC,qBAAqB,EAAE,GAAG,CAAC,MAAM,EAAE,sBAAsB,CAAC,EAC1D,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EACpC,iBAAiB,EAAE,MAAM,EACzB,OAAO,GAAE,oBAAyB,iBA2DnC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../class-generation/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oCAAoC,EAAE,MAAM,sBAAsB,CAAC;AAE5E,OAAO,EAAE,sBAAsB,EAAoE,MAAM,UAAU,CAAC;AAQpH,OAAO,EAAE,oCAAoC,EAAE,CAAC;AA4ChD,UAAU,SAAS;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AA+MD,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;;;;;;;;OAWG;IACH,gBAAgB,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAE1D;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;;;OAOG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEhD;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,KAAK,CAAC;QAC3B,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;QACrB,wBAAwB,EAAE,MAAM,EAAE,CAAC;QAEnC;;;WAGG;QACH,QAAQ,CAAC,EAAE,OAAO,GAAG,YAAY,GAAG,MAAM,CAAC;KAC5C,CAAC,CAAC;IAEH,yEAAyE;IACzE,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,uDAAuD;IACvD,aAAa,CAAC,EAAE,KAAK,CAAC,IAAI,GAAG,QAAQ,CAAC,CAAC;IAEvC,6BAA6B;IAC7B,MAAM,CAAC,EAAE;QACP,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IAEF,6EAA6E;IAC7E,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAElC,2FAA2F;IAC3F,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,mDAAmD;IACnD,UAAU,CAAC,EAAE,YAAY,GAAG,MAAM,CAAC;IAEnC,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;CAClD;AAiCD,wBAAsB,aAAa,CACjC,qBAAqB,EAAE,GAAG,CAAC,MAAM,EAAE,sBAAsB,CAAC,EAC1D,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EACpC,iBAAiB,EAAE,MAAM,EACzB,OAAO,GAAE,oBAAyB,iBA2DnC"}
package/dist/index.cjs CHANGED
@@ -3700,9 +3700,9 @@ export * from "./page-object-models.g";
3700
3700
  throw new Error(`Failed to read ${description} at ${absPath}`);
3701
3701
  }
3702
3702
  };
3703
- const clickInstrumentationAbs = node_url.fileURLToPath(new URL("../click-instrumentation.ts", typeof document === "undefined" ? require("url").pathToFileURL(__filename).href : _documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === "SCRIPT" && _documentCurrentScript.src || new URL("index.cjs", document.baseURI).href));
3704
- const pointerAbs = node_url.fileURLToPath(new URL("../class-generation/Pointer.ts", typeof document === "undefined" ? require("url").pathToFileURL(__filename).href : _documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === "SCRIPT" && _documentCurrentScript.src || new URL("index.cjs", document.baseURI).href));
3705
- const playwrightTypesAbs = node_url.fileURLToPath(new URL("../class-generation/playwright-types.ts", typeof document === "undefined" ? require("url").pathToFileURL(__filename).href : _documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === "SCRIPT" && _documentCurrentScript.src || new URL("index.cjs", document.baseURI).href));
3703
+ const clickInstrumentationAbs = path.resolve(void 0, "../click-instrumentation.ts");
3704
+ const pointerAbs = path.resolve(void 0, "../class-generation/Pointer.ts");
3705
+ const playwrightTypesAbs = path.resolve(void 0, "../class-generation/playwright-types.ts");
3706
3706
  const runtimeFiles = [
3707
3707
  {
3708
3708
  filePath: path.join(runtimeDirAbs, "click-instrumentation.ts"),