diff --git a/CHANGELOG.md b/CHANGELOG.md index 84ab110..1db5042 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,7 +8,7 @@ convey — dependency moves, notes about the shape of the public API — are add to the release entry by hand. This project follows [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [0.1.0] - 2026-07-26 +## [0.1.0] - 2026-07-28 ### Features @@ -38,8 +38,8 @@ to the release entry by hand. This project follows ### Notes - The transports are subpath-only. `SharePointTransport` is imported from - `@agentic-tooling/polydoc-core/sharepoint` and `GoogleDriveTransport` from - `@agentic-tooling/polydoc-core/google`; neither is re-exported from the root + `@llbbl/polydoc-core/sharepoint` and `GoogleDriveTransport` from + `@llbbl/polydoc-core/google`; neither is re-exported from the root entry point, types included. The root entry point loads no third-party SDK — Node builtins plus `execa` and `fflate` — so a Markdown-to-DOCX consumer never pays for a cloud SDK it will not call. Both transport entry points re-export diff --git a/README.md b/README.md index dd3f88a..2a1158f 100644 --- a/README.md +++ b/README.md @@ -20,9 +20,9 @@ opt-in: importing the root entry point never loads a cloud SDK. | Entry point | Contents | Third-party load | | ------------------------------------------ | ------------------------------------------------------------------------------------- | ------------------------------------------- | -| `@agentic-tooling/polydoc-core` | Conversion core, the `Transport` contract, `TransportError`, and `LocalFileTransport` | `execa` and `fflate` only | -| `@agentic-tooling/polydoc-core/sharepoint` | `SharePointTransport` and its auth helpers | `@azure/msal-node` | -| `@agentic-tooling/polydoc-core/google` | `GoogleDriveTransport` and its Drive helpers | `@googleapis/drive`, loaded on first upload | +| `@llbbl/polydoc-core` | Conversion core, the `Transport` contract, `TransportError`, and `LocalFileTransport` | `execa` and `fflate` only | +| `@llbbl/polydoc-core/sharepoint` | `SharePointTransport` and its auth helpers | `@azure/msal-node` | +| `@llbbl/polydoc-core/google` | `GoogleDriveTransport` and its Drive helpers | `@googleapis/drive`, loaded on first upload | A consumer doing pure Markdown-to-DOCX conversion should never pay to load a SharePoint or Drive SDK it will not call, so the transports live behind their @@ -71,7 +71,7 @@ import { SUPPORTED_PANDOC_MAJOR, convertMarkdownToDocx, doctor, -} from "@agentic-tooling/polydoc-core"; +} from "@llbbl/polydoc-core"; const probe = await doctor(); @@ -100,14 +100,14 @@ library. Transports are side-effecting adapters that publish DOCX bytes for a canonical document ID and return a stable destination handle for later consumers. The contract and `LocalFileTransport` live in the root entry point; the two cloud -transports are imported from `@agentic-tooling/polydoc-core/sharepoint` and -`@agentic-tooling/polydoc-core/google`. +transports are imported from `@llbbl/polydoc-core/sharepoint` and +`@llbbl/polydoc-core/google`. ```ts import { LocalFileTransport, convertMarkdownToDocx, -} from "@agentic-tooling/polydoc-core"; +} from "@llbbl/polydoc-core"; const docx = await convertMarkdownToDocx({ markdown, @@ -152,8 +152,8 @@ Microsoft Graph app-only auth. It implements the same create-or-update `Transport.upload(canonicalId, docx)` contract as `LocalFileTransport`. ```ts -import { convertMarkdownToDocx } from "@agentic-tooling/polydoc-core"; -import { SharePointTransport } from "@agentic-tooling/polydoc-core/sharepoint"; +import { convertMarkdownToDocx } from "@llbbl/polydoc-core"; +import { SharePointTransport } from "@llbbl/polydoc-core/sharepoint"; const docx = await convertMarkdownToDocx({ markdown, @@ -179,7 +179,7 @@ console.log(destination.webUrl); // optional Graph driveItem webUrl Auth uses `@azure/msal-node` with the Microsoft Graph scope `https://graph.microsoft.com/.default`. The SDK is a static import here, which is -why this is a separate entry point: importing `@agentic-tooling/polydoc-core` +why this is a separate entry point: importing `@llbbl/polydoc-core` loads no part of it. `Sites.Selected` is the required Entra application permission to admin-consent on the app registration, and a separate site-specific `write` grant must be provisioned out of band. The library does @@ -257,11 +257,11 @@ contract as the other transports. ```ts import { OAuth2Client } from "google-auth-library"; -import { convertMarkdownToDocx } from "@agentic-tooling/polydoc-core"; +import { convertMarkdownToDocx } from "@llbbl/polydoc-core"; import { GOOGLE_DRIVE_FILE_SCOPE, GoogleDriveTransport, -} from "@agentic-tooling/polydoc-core/google"; +} from "@llbbl/polydoc-core/google"; const docx = await convertMarkdownToDocx({ markdown, @@ -423,7 +423,7 @@ not DOCX generation. GitHub-Flavored Markdown, and reports what it could not bring with it. ```ts -import { convertDocxToMarkdown } from "@agentic-tooling/polydoc-core"; +import { convertDocxToMarkdown } from "@llbbl/polydoc-core"; const { markdown, report } = await convertDocxToMarkdown({ docx: "./out/word/handbook-intro.docx", // bytes or a path diff --git a/package.json b/package.json index afa4031..cc0d2f6 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { - "name": "@agentic-tooling/polydoc-core", - "version": "0.0.0", + "name": "@llbbl/polydoc-core", + "version": "0.1.0", "description": "Reusable TypeScript Markdown-to-DOCX conversion core for polydoc and TeamWiki.", "type": "module", "license": "MIT", diff --git a/src/index.ts b/src/index.ts index 647208e..0d5b1b4 100644 --- a/src/index.ts +++ b/src/index.ts @@ -7,8 +7,8 @@ * converts Markdown to DOCX never loads a cloud SDK. The cloud transports live * behind their own entry points and are opt-in: * - * - `@agentic-tooling/polydoc-core/sharepoint` — `SharePointTransport` - * - `@agentic-tooling/polydoc-core/google` — `GoogleDriveTransport` + * - `@llbbl/polydoc-core/sharepoint` — `SharePointTransport` + * - `@llbbl/polydoc-core/google` — `GoogleDriveTransport` * * Both re-export the shared transport contract, so a consumer of one transport * never has to reach back into this barrel for the types it needs. Adding a diff --git a/tests/entrypoints.test.ts b/tests/entrypoints.test.ts index 53d64c9..a45e1a8 100644 --- a/tests/entrypoints.test.ts +++ b/tests/entrypoints.test.ts @@ -23,7 +23,7 @@ const repoRoot = resolve(dirname(fileURLToPath(import.meta.url)), ".."); const distDir = join(repoRoot, "dist"); const supportDir = join(repoRoot, "tests", "support"); -const PACKAGE_NAME = "@agentic-tooling/polydoc-core"; +const PACKAGE_NAME = "@llbbl/polydoc-core"; /** * Every third-party package the root entry point may load. This list is the diff --git a/tests/support/entrypoint-probe.mjs b/tests/support/entrypoint-probe.mjs index 0eaeff9..3cafe15 100644 --- a/tests/support/entrypoint-probe.mjs +++ b/tests/support/entrypoint-probe.mjs @@ -4,7 +4,7 @@ * * node tests/support/entrypoint-probe.mjs * - * The specifier is the public one — `@agentic-tooling/polydoc-core/google`, not + * The specifier is the public one — `@llbbl/polydoc-core/google`, not * a guessed `dist/` path — so the probe exercises the package.json `exports` * map through Node's own resolver by self-reference. A typo in an export key or * target fails here the same way it would fail for a consumer after publish. diff --git a/tests/support/shared-bindings-probe.mjs b/tests/support/shared-bindings-probe.mjs index 2f84bc5..8c9542f 100644 --- a/tests/support/shared-bindings-probe.mjs +++ b/tests/support/shared-bindings-probe.mjs @@ -7,9 +7,9 @@ * same `dist/transport.js` module instance — otherwise `instanceof` would fail * across entry points and the duplicate exports would be a real hazard. */ -import * as core from "@agentic-tooling/polydoc-core"; -import * as google from "@agentic-tooling/polydoc-core/google"; -import * as sharepoint from "@agentic-tooling/polydoc-core/sharepoint"; +import * as core from "@llbbl/polydoc-core"; +import * as google from "@llbbl/polydoc-core/google"; +import * as sharepoint from "@llbbl/polydoc-core/sharepoint"; const googleError = new google.GoogleDriveTransportError( "GOOGLE_DRIVE_API_FAILED",