diff --git a/README.md b/README.md index 5f17bcbbe..f2d3c60de 100644 --- a/README.md +++ b/README.md @@ -15,6 +15,18 @@ bun install bun run dev ``` +## Publishing precision diffs + +Note that publishing precision diffs is a bit artisinal. You need to update the exports to be +/dist/ before exporting, otherwise the package wont work. + +Long term, im hoping we can use publishConfig to override this, but because we +rely on Bun for package managment, we currently don't have this functionality. + +This means, before publishing, you need to manually update the exports inside the package.json. + +This is dangerous. + ## Architectural Notes This is just a basic-ass vite project, so most of what you'll probably want to diff --git a/apps/demo/package.json b/apps/demo/package.json index 871e8c80d..6cb4c9ea8 100644 --- a/apps/demo/package.json +++ b/apps/demo/package.json @@ -20,7 +20,7 @@ "vite": "catalog:" }, "dependencies": { - "@pierre/diff-ui": "workspace:*", + "@pierre/precision-diffs": "workspace:*", "react": "catalog:", "react-dom": "catalog:", "shiki": "catalog:" diff --git a/apps/demo/src/components/App.tsx b/apps/demo/src/components/App.tsx index 5306ad59d..344b70541 100644 --- a/apps/demo/src/components/App.tsx +++ b/apps/demo/src/components/App.tsx @@ -3,7 +3,7 @@ import { type PJSThemeNames, isHighlighterNull, preloadHighlighter, -} from '@pierre/diff-ui'; +} from '@pierre/precision-diffs'; import * as React from 'react'; import { useCallback, useState } from 'react'; diff --git a/apps/demo/src/components/CodeRenderer.tsx b/apps/demo/src/components/CodeRenderer.tsx index 8c4bfe494..a3c0b59bd 100644 --- a/apps/demo/src/components/CodeRenderer.tsx +++ b/apps/demo/src/components/CodeRenderer.tsx @@ -1,7 +1,7 @@ import { CodeRenderer as CodeRendererClass, type CodeRendererOptions, -} from '@pierre/diff-ui'; +} from '@pierre/precision-diffs'; import { useEffect, useRef, useState } from 'react'; export type { CodeRendererOptions }; diff --git a/apps/demo/src/main.ts b/apps/demo/src/main.ts index 890524f54..3a25a6f8b 100644 --- a/apps/demo/src/main.ts +++ b/apps/demo/src/main.ts @@ -10,7 +10,7 @@ import { parseDiffFromFile, parsePatchFiles, preloadHighlighter, -} from '@pierre/diff-ui'; +} from '@pierre/precision-diffs'; import { CodeConfigs, diff --git a/apps/demo/src/mocks/index.ts b/apps/demo/src/mocks/index.ts index 911a2ff57..4b753a2cf 100644 --- a/apps/demo/src/mocks/index.ts +++ b/apps/demo/src/mocks/index.ts @@ -1,4 +1,4 @@ -import type { CodeRendererOptions, LineAnnotation } from '@pierre/diff-ui'; +import type { CodeRendererOptions, LineAnnotation } from '@pierre/precision-diffs'; import { createHighlighterCleanup } from '../utils/createHighlighterCleanup'; import mdContent from './example_md.txt?raw'; diff --git a/apps/demo/src/utils/createFakeContentStream.ts b/apps/demo/src/utils/createFakeContentStream.ts index 56f4166fc..0ba07aa9a 100644 --- a/apps/demo/src/utils/createFakeContentStream.ts +++ b/apps/demo/src/utils/createFakeContentStream.ts @@ -1,4 +1,4 @@ -import { queueRender } from '@pierre/diff-ui'; +import { queueRender } from '@pierre/precision-diffs'; export function createFakeContentStream(data: string, letterByLetter = false) { return new ReadableStream({ diff --git a/apps/demo/src/utils/createHighlighterCleanup.ts b/apps/demo/src/utils/createHighlighterCleanup.ts index 5d8d56c5a..33c6e64ff 100644 --- a/apps/demo/src/utils/createHighlighterCleanup.ts +++ b/apps/demo/src/utils/createHighlighterCleanup.ts @@ -1,4 +1,4 @@ -import { disposeHighlighter } from '@pierre/diff-ui'; +import { disposeHighlighter } from '@pierre/precision-diffs'; let totalInstances = 0; let completed = 0; diff --git a/apps/demo/src/utils/renderAnnotation.ts b/apps/demo/src/utils/renderAnnotation.ts index d15a2003b..fdc75c3db 100644 --- a/apps/demo/src/utils/renderAnnotation.ts +++ b/apps/demo/src/utils/renderAnnotation.ts @@ -1,4 +1,4 @@ -import type { LineAnnotation } from '@pierre/diff-ui'; +import type { LineAnnotation } from '@pierre/precision-diffs'; import type { LineCommentMetadata } from 'src/mocks'; export function renderAnnotation( diff --git a/apps/docs/app/diff-examples/Annotations.tsx b/apps/docs/app/diff-examples/Annotations.tsx index 4e96e4c6a..2cd210a36 100644 --- a/apps/docs/app/diff-examples/Annotations.tsx +++ b/apps/docs/app/diff-examples/Annotations.tsx @@ -2,7 +2,7 @@ import { FileDiff } from '@/components/diff-ui/FileDiff'; import { Avatar, AvatarFallback, AvatarImage } from '@/components/ui/avatar'; -import type { FileContents } from '@pierre/diff-ui'; +import type { FileContents } from '@pierre/precision-diffs'; import { CornerDownRight } from 'lucide-react'; import { FeatureHeader } from './FeatureHeader'; diff --git a/apps/docs/app/diff-examples/ArbitraryFiles.tsx b/apps/docs/app/diff-examples/ArbitraryFiles.tsx index 8e076bd23..a02f25dad 100644 --- a/apps/docs/app/diff-examples/ArbitraryFiles.tsx +++ b/apps/docs/app/diff-examples/ArbitraryFiles.tsx @@ -1,7 +1,7 @@ 'use client'; import { FileDiff } from '@/components/diff-ui/FileDiff'; -import type { FileContents } from '@pierre/diff-ui'; +import type { FileContents } from '@pierre/precision-diffs'; import { useState } from 'react'; import { FeatureHeader } from './FeatureHeader'; diff --git a/apps/docs/app/diff-examples/DiffStyles.tsx b/apps/docs/app/diff-examples/DiffStyles.tsx index acc5962d8..73ce3cd61 100644 --- a/apps/docs/app/diff-examples/DiffStyles.tsx +++ b/apps/docs/app/diff-examples/DiffStyles.tsx @@ -19,7 +19,7 @@ import { DropdownMenuTrigger, } from '@/components/ui/dropdown-menu'; import { Switch } from '@/components/ui/switch'; -import type { FileContents } from '@pierre/diff-ui'; +import type { FileContents } from '@pierre/precision-diffs'; import { ChevronDown } from 'lucide-react'; import { useState } from 'react'; diff --git a/apps/docs/app/diff-examples/FontStyles.tsx b/apps/docs/app/diff-examples/FontStyles.tsx index b82585527..db24c9c13 100644 --- a/apps/docs/app/diff-examples/FontStyles.tsx +++ b/apps/docs/app/diff-examples/FontStyles.tsx @@ -10,7 +10,7 @@ import { DropdownMenuTrigger, } from '@/components/ui/dropdown-menu'; import { InputWithIcon } from '@/components/ui/input-group'; -import type { FileContents } from '@pierre/diff-ui'; +import type { FileContents } from '@pierre/precision-diffs'; import { ChevronDown } from 'lucide-react'; import { useState } from 'react'; diff --git a/apps/docs/app/diff-examples/ShikiThemes.tsx b/apps/docs/app/diff-examples/ShikiThemes.tsx index 24f3eb546..9cd09be3a 100644 --- a/apps/docs/app/diff-examples/ShikiThemes.tsx +++ b/apps/docs/app/diff-examples/ShikiThemes.tsx @@ -16,7 +16,7 @@ import { DropdownMenuItem, DropdownMenuTrigger, } from '@/components/ui/dropdown-menu'; -import { type FileContents, preloadHighlighter } from '@pierre/diff-ui'; +import { type FileContents, preloadHighlighter } from '@pierre/precision-diffs'; import { ChevronDown } from 'lucide-react'; import Link from 'next/link'; import { useEffect, useState } from 'react'; diff --git a/apps/docs/app/diff-examples/SplitUnified.tsx b/apps/docs/app/diff-examples/SplitUnified.tsx index 83c412c58..da26defbd 100644 --- a/apps/docs/app/diff-examples/SplitUnified.tsx +++ b/apps/docs/app/diff-examples/SplitUnified.tsx @@ -3,7 +3,7 @@ import { FileDiff } from '@/components/diff-ui/FileDiff'; import { IconDiffBlended, IconDiffSplit } from '@/components/icons'; import { ButtonGroup, ButtonGroupItem } from '@/components/ui/button-group'; -import type { FileContents } from '@pierre/diff-ui'; +import type { FileContents } from '@pierre/precision-diffs'; import { useState } from 'react'; import { FeatureHeader } from './FeatureHeader'; diff --git a/apps/docs/app/page.tsx b/apps/docs/app/page.tsx index ad12a8bb0..c2846de4a 100644 --- a/apps/docs/app/page.tsx +++ b/apps/docs/app/page.tsx @@ -149,7 +149,7 @@ const Hero = () => { const copyToClipboard = async () => { try { - await navigator.clipboard.writeText('npm i @pierre/precision-diffs'); + await navigator.clipboard.writeText('bun i @pierre/precision-diffs'); setCopied(true); setTimeout(() => setCopied(false), 5000); } catch (err) { @@ -183,7 +183,7 @@ const Hero = () => { onClick={() => void copyToClipboard()} className="inline-flex items-center gap-2 px-4 py-3 rounded-md text-white bg-gray-900 hover:bg-gray-800 dark:bg-black dark:border dark:border-white/20 dark:hover:border-white/30 transition-colors font-mono text-sm" > - npm i @pierre/precision-diffs + bun i @pierre/precision-diffs {copied ? : } diff --git a/apps/docs/components/diff-ui/Code.tsx b/apps/docs/components/diff-ui/Code.tsx index a2461cc21..249ed2edf 100644 --- a/apps/docs/components/diff-ui/Code.tsx +++ b/apps/docs/components/diff-ui/Code.tsx @@ -3,7 +3,7 @@ import { CodeRenderer, type CodeRendererOptions, -} from '@pierre/diff-ui'; +} from '@pierre/precision-diffs'; import deepEqual from 'fast-deep-equal'; import { type CSSProperties, diff --git a/apps/docs/components/diff-ui/FileDiff.tsx b/apps/docs/components/diff-ui/FileDiff.tsx index 8bb404d07..c4a2abb70 100644 --- a/apps/docs/components/diff-ui/FileDiff.tsx +++ b/apps/docs/components/diff-ui/FileDiff.tsx @@ -5,7 +5,7 @@ import { type FileContents, FileDiff as FileDiffUI, type LineAnnotation, -} from '@pierre/diff-ui'; +} from '@pierre/precision-diffs'; import deepEqual from 'fast-deep-equal'; import { type CSSProperties, diff --git a/apps/docs/next.config.mjs b/apps/docs/next.config.mjs index 920043192..ea72a4b89 100644 --- a/apps/docs/next.config.mjs +++ b/apps/docs/next.config.mjs @@ -20,7 +20,7 @@ const nextConfig = { loaders: ['raw-loader'], as: '*.js', }, - '../../packages/diff-ui/src/style.css': { + '../../packages/precision-diffs/src/style.css': { loaders: ['raw-loader'], as: '*.js', }, @@ -36,7 +36,7 @@ const nextConfig = { // // For specific CSS file with ?raw query parameter // config.module.rules.push({ // resourceQuery: /raw/, - // test: /packages\/diff-ui\/src\/style\.css$/, + // test: /packages\/precision-diffs\/src\/style\.css$/, // type: 'asset/source', // }); // return config; diff --git a/apps/docs/package.json b/apps/docs/package.json index 2a23a6957..4046f3495 100644 --- a/apps/docs/package.json +++ b/apps/docs/package.json @@ -13,7 +13,7 @@ }, "dependencies": { "@icons-pack/react-simple-icons": "catalog:", - "@pierre/diff-ui": "workspace:*", + "@pierre/precision-diffs": "workspace:*", "@pierre/storage": "catalog:", "@pierre/storage-elements-next": "workspace:*", "@radix-ui/react-avatar": "catalog:", diff --git a/apps/docs/tsconfig.json b/apps/docs/tsconfig.json index d9c755d59..44d16e18f 100644 --- a/apps/docs/tsconfig.json +++ b/apps/docs/tsconfig.json @@ -11,7 +11,7 @@ "exclude": ["node_modules"], "references": [ { - "path": "../../packages/diff-ui" + "path": "../../packages/precision-diffs" } ], "compilerOptions": { diff --git a/bun.lock b/bun.lock index bff2c0c14..fe0e0f2d0 100644 --- a/bun.lock +++ b/bun.lock @@ -21,7 +21,7 @@ "name": "@pierre/js-demo", "version": "0.0.0", "dependencies": { - "@pierre/diff-ui": "workspace:*", + "@pierre/precision-diffs": "workspace:*", "react": "catalog:", "react-dom": "catalog:", "shiki": "catalog:", @@ -40,7 +40,7 @@ "version": "0.0.0", "dependencies": { "@icons-pack/react-simple-icons": "catalog:", - "@pierre/diff-ui": "workspace:*", + "@pierre/precision-diffs": "workspace:*", "@pierre/storage": "catalog:", "@pierre/storage-elements-next": "workspace:*", "@radix-ui/react-avatar": "catalog:", @@ -90,11 +90,11 @@ "typescript": "catalog:", }, }, - "packages/diff-ui": { - "name": "@pierre/diff-ui", - "version": "0.0.0", + "packages/precision-diffs": { + "name": "@pierre/precision-diffs", + "version": "0.0.1-alpha.0", "dependencies": { - "@pierre/shiki-stream": "workspace:*", + "@shikijs/core": "catalog:", "diff": "catalog:", "fast-deep-equal": "catalog:", "hast-util-to-html": "catalog:", @@ -106,17 +106,6 @@ "typescript": "catalog:", }, }, - "packages/shiki-stream": { - "name": "@pierre/shiki-stream", - "version": "0.0.0", - "dependencies": { - "@shikijs/core": "catalog:", - }, - "devDependencies": { - "@trivago/prettier-plugin-sort-imports": "catalog:", - "typescript": "catalog:", - }, - }, "packages/storage-elements": { "name": "@pierre/storage-elements", "version": "0.0.2", @@ -528,13 +517,11 @@ "@oxc-project/types": ["@oxc-project/types@0.90.0", "", {}, "sha512-fWvaufWUcLtm/OBKcNmxUkR0kQW5ZKAF0t03BXPqdzpxmnVCmSKzvUDRCOKnSagSfNzG/3ZdKpComH3GMy881g=="], - "@pierre/diff-ui": ["@pierre/diff-ui@workspace:packages/diff-ui"], - "@pierre/js-demo": ["@pierre/js-demo@workspace:apps/demo"], "@pierre/js-docs": ["@pierre/js-docs@workspace:apps/docs"], - "@pierre/shiki-stream": ["@pierre/shiki-stream@workspace:packages/shiki-stream"], + "@pierre/precision-diffs": ["@pierre/precision-diffs@workspace:packages/precision-diffs"], "@pierre/storage": ["@pierre/storage@0.0.10", "", { "dependencies": { "jose": "^5.10.0", "snakecase-keys": "^9.0.2" } }, "sha512-fDFrsnRiNTq7lpY56MGE4vRjYAHfTFLsxN18wbnxBlOk1XB1pxzgMfx5DwiqRcXs8+Gt2lmeXvlYAa1gGR4c7w=="], diff --git a/package.json b/package.json index 55d424f8c..48dbf80b3 100644 --- a/package.json +++ b/package.json @@ -7,9 +7,9 @@ "demo:dev": "bun run --elide-lines 0 --filter @pierre/js-demo dev", "demo:prod": "bun run --elide-lines 0 --filter @pierre/js-demo prod", "demo:tsc": "bun run --elide-lines 0 --filter @pierre/js-demo tsc --noEmit --pretty", - "diff-ui:build": "bun run --filter @pierre/diff-ui build", - "diff-ui:dev": "bun run --elide-lines 0 --filter @pierre/diff-ui dev", - "diff-ui:tsc": "bun run --elide-lines 0 --filter @pierre/diff-ui tsc --noEmit --pretty", + "precision-diffs:build": "bun run --filter @pierre/precision-diffs build", + "precision-diffs:dev": "bun run --elide-lines 0 --filter @pierre/precision-diffs dev", + "precision-diffs:tsc": "bun run --elide-lines 0 --filter @pierre/precision-diffs tsc --noEmit --pretty", "docs:registry:build": "bun run --filter @pierre/js-docs registry:build", "docs:build": "bun run docs:registry:build && bun run --filter @pierre/js-docs build", "docs:dev": "bun run --elide-lines 0 --filter @pierre/js-docs dev", diff --git a/packages/precision-diffs/build-css.js b/packages/precision-diffs/build-css.js new file mode 100644 index 000000000..04488865f --- /dev/null +++ b/packages/precision-diffs/build-css.js @@ -0,0 +1,62 @@ +import { copyFileSync, readFileSync, writeFileSync } from 'fs'; +import { resolve } from 'path'; + +// Read the CSS file +const css = readFileSync(resolve('src/style.css'), 'utf-8'); + +// Create a JS module that exports the CSS as a string (no auto-injection) +const cssJsContent = `// Auto-generated - do not edit +const css = ${JSON.stringify(css)}; + +export default css; +export { css }; +`; + +// Write style.css.js to dist (so it can be imported like sprite.txt.js) +writeFileSync(resolve('dist/style.css.js'), cssJsContent); + +// Also copy the CSS file for users who want to import it manually +copyFileSync(resolve('src/style.css'), resolve('dist/style.css')); + +// Read the sprite file +const sprite = readFileSync(resolve('src/sprite.txt'), 'utf-8'); + +// Create a JS module that exports the sprite as default +const spriteJsContent = `// Auto-generated - do not edit +const sprite = ${JSON.stringify(sprite)}; + +export default sprite; +`; + +// Write sprite.txt.js to dist +writeFileSync(resolve('dist/sprite.txt.js'), spriteJsContent); + +// Rewrite the FileDiff.js import to use the generated sprite file +const fileDiffPath = resolve('dist/FileDiff.js'); +let fileDiffContent = readFileSync(fileDiffPath, 'utf-8'); +fileDiffContent = fileDiffContent.replace( + /from ['"]\.\/sprite\.txt\?raw['"]/g, + 'from "./sprite.txt.js"' +); +writeFileSync(fileDiffPath, fileDiffContent); + +// Rewrite Container.js to import from style.css.js instead of style.css?raw +const containerPath = resolve('dist/custom-components/Container.js'); +let containerContent = readFileSync(containerPath, 'utf-8'); +containerContent = containerContent.replace( + /from ['"]\.\.\/style\.css\?raw['"]/g, + 'from "../style.css.js"' +); +writeFileSync(containerPath, containerContent); + +// Remove the style.css import from index.js since Container handles it +const indexPath = resolve('dist/index.js'); +let indexContent = readFileSync(indexPath, 'utf-8'); +indexContent = indexContent.replace(/import ['"]\.\/style\.css['"];?\n?/g, ''); +writeFileSync(indexPath, indexContent); + +console.log('✓ CSS inlined to dist/style.css.js and copied to dist/style.css'); +console.log('✓ Sprite inlined to dist/sprite.txt.js'); +console.log('✓ Rewritten FileDiff.js to use sprite.txt.js'); +console.log('✓ Rewritten Container.js to use style.css.js'); +console.log('✓ Removed style.css import from index.js'); diff --git a/packages/diff-ui/package.json b/packages/precision-diffs/package.json similarity index 73% rename from packages/diff-ui/package.json rename to packages/precision-diffs/package.json index 61552f485..73627b190 100644 --- a/packages/diff-ui/package.json +++ b/packages/precision-diffs/package.json @@ -1,10 +1,9 @@ { - "name": "@pierre/diff-ui", - "private": true, - "version": "0.0.0", + "name": "@pierre/precision-diffs", + "version": "0.0.1-alpha.1-1", "type": "module", "scripts": { - "build": "tsc --build", + "build": "tsc --build && node build-css.js", "dev": "tsc --build --watch", "tsc": "tsc" }, @@ -14,13 +13,16 @@ "types": "./src/index.ts" } }, + "files": [ + "src" + ], "devDependencies": { "@trivago/prettier-plugin-sort-imports": "catalog:", "@types/hast": "catalog:", "typescript": "catalog:" }, "dependencies": { - "@pierre/shiki-stream": "workspace:*", + "@shikijs/core": "catalog:", "diff": "catalog:", "fast-deep-equal": "catalog:", "hast-util-to-html": "catalog:", diff --git a/packages/diff-ui/src/CodeRenderer.ts b/packages/precision-diffs/src/CodeRenderer.ts similarity index 99% rename from packages/diff-ui/src/CodeRenderer.ts rename to packages/precision-diffs/src/CodeRenderer.ts index c8dac01af..3e5b6bfc1 100644 --- a/packages/diff-ui/src/CodeRenderer.ts +++ b/packages/precision-diffs/src/CodeRenderer.ts @@ -1,7 +1,7 @@ import { CodeToTokenTransformStream, type RecallToken, -} from '@pierre/shiki-stream'; +} from './shiki-stream'; import { getSharedHighlighter } from './SharedHighlighter'; import { queueRender } from './UniversalRenderer'; diff --git a/packages/diff-ui/src/DiffHeaderRenderer.ts b/packages/precision-diffs/src/DiffHeaderRenderer.ts similarity index 100% rename from packages/diff-ui/src/DiffHeaderRenderer.ts rename to packages/precision-diffs/src/DiffHeaderRenderer.ts diff --git a/packages/diff-ui/src/DiffHunksRenderer.ts b/packages/precision-diffs/src/DiffHunksRenderer.ts similarity index 100% rename from packages/diff-ui/src/DiffHunksRenderer.ts rename to packages/precision-diffs/src/DiffHunksRenderer.ts diff --git a/packages/diff-ui/src/FileDiff.ts b/packages/precision-diffs/src/FileDiff.ts similarity index 100% rename from packages/diff-ui/src/FileDiff.ts rename to packages/precision-diffs/src/FileDiff.ts diff --git a/packages/diff-ui/src/SharedHighlighter.ts b/packages/precision-diffs/src/SharedHighlighter.ts similarity index 100% rename from packages/diff-ui/src/SharedHighlighter.ts rename to packages/precision-diffs/src/SharedHighlighter.ts diff --git a/packages/diff-ui/src/UniversalRenderer.ts b/packages/precision-diffs/src/UniversalRenderer.ts similarity index 100% rename from packages/diff-ui/src/UniversalRenderer.ts rename to packages/precision-diffs/src/UniversalRenderer.ts diff --git a/packages/diff-ui/src/constants.ts b/packages/precision-diffs/src/constants.ts similarity index 100% rename from packages/diff-ui/src/constants.ts rename to packages/precision-diffs/src/constants.ts diff --git a/packages/diff-ui/src/custom-components/Container.ts b/packages/precision-diffs/src/custom-components/Container.ts similarity index 100% rename from packages/diff-ui/src/custom-components/Container.ts rename to packages/precision-diffs/src/custom-components/Container.ts diff --git a/packages/diff-ui/src/index.ts b/packages/precision-diffs/src/index.ts similarity index 92% rename from packages/diff-ui/src/index.ts rename to packages/precision-diffs/src/index.ts index d014c2c72..70065b756 100644 --- a/packages/diff-ui/src/index.ts +++ b/packages/precision-diffs/src/index.ts @@ -1,6 +1,6 @@ import './style.css'; -export * from '@pierre/shiki-stream'; +export * from './shiki-stream'; export * from './CodeRenderer'; export * from './DiffHeaderRenderer'; export * from './DiffHunksRenderer'; diff --git a/packages/diff-ui/src/raw-loader.d.ts b/packages/precision-diffs/src/raw-loader.d.ts similarity index 100% rename from packages/diff-ui/src/raw-loader.d.ts rename to packages/precision-diffs/src/raw-loader.d.ts diff --git a/packages/shiki-stream/src/index.ts b/packages/precision-diffs/src/shiki-stream/index.ts similarity index 100% rename from packages/shiki-stream/src/index.ts rename to packages/precision-diffs/src/shiki-stream/index.ts diff --git a/packages/shiki-stream/src/stream.ts b/packages/precision-diffs/src/shiki-stream/stream.ts similarity index 100% rename from packages/shiki-stream/src/stream.ts rename to packages/precision-diffs/src/shiki-stream/stream.ts diff --git a/packages/shiki-stream/src/tokenizer.ts b/packages/precision-diffs/src/shiki-stream/tokenizer.ts similarity index 100% rename from packages/shiki-stream/src/tokenizer.ts rename to packages/precision-diffs/src/shiki-stream/tokenizer.ts diff --git a/packages/shiki-stream/src/types.ts b/packages/precision-diffs/src/shiki-stream/types.ts similarity index 100% rename from packages/shiki-stream/src/types.ts rename to packages/precision-diffs/src/shiki-stream/types.ts diff --git a/packages/diff-ui/src/sprite.txt b/packages/precision-diffs/src/sprite.txt similarity index 100% rename from packages/diff-ui/src/sprite.txt rename to packages/precision-diffs/src/sprite.txt diff --git a/packages/diff-ui/src/style.css b/packages/precision-diffs/src/style.css similarity index 100% rename from packages/diff-ui/src/style.css rename to packages/precision-diffs/src/style.css diff --git a/packages/diff-ui/src/themes/pierre-dark.json b/packages/precision-diffs/src/themes/pierre-dark.json similarity index 100% rename from packages/diff-ui/src/themes/pierre-dark.json rename to packages/precision-diffs/src/themes/pierre-dark.json diff --git a/packages/diff-ui/src/themes/pierre-light.json b/packages/precision-diffs/src/themes/pierre-light.json similarity index 100% rename from packages/diff-ui/src/themes/pierre-light.json rename to packages/precision-diffs/src/themes/pierre-light.json diff --git a/packages/diff-ui/src/types.ts b/packages/precision-diffs/src/types.ts similarity index 100% rename from packages/diff-ui/src/types.ts rename to packages/precision-diffs/src/types.ts diff --git a/packages/diff-ui/src/utils/formatCSSVariablePrefix.ts b/packages/precision-diffs/src/utils/formatCSSVariablePrefix.ts similarity index 100% rename from packages/diff-ui/src/utils/formatCSSVariablePrefix.ts rename to packages/precision-diffs/src/utils/formatCSSVariablePrefix.ts diff --git a/packages/diff-ui/src/utils/getFiletypeFromFileName.ts b/packages/precision-diffs/src/utils/getFiletypeFromFileName.ts similarity index 100% rename from packages/diff-ui/src/utils/getFiletypeFromFileName.ts rename to packages/precision-diffs/src/utils/getFiletypeFromFileName.ts diff --git a/packages/diff-ui/src/utils/getHighlighterThemeStyles.ts b/packages/precision-diffs/src/utils/getHighlighterThemeStyles.ts similarity index 100% rename from packages/diff-ui/src/utils/getHighlighterThemeStyles.ts rename to packages/precision-diffs/src/utils/getHighlighterThemeStyles.ts diff --git a/packages/diff-ui/src/utils/hast_utils.ts b/packages/precision-diffs/src/utils/hast_utils.ts similarity index 100% rename from packages/diff-ui/src/utils/hast_utils.ts rename to packages/precision-diffs/src/utils/hast_utils.ts diff --git a/packages/diff-ui/src/utils/html_render_utils.ts b/packages/precision-diffs/src/utils/html_render_utils.ts similarity index 100% rename from packages/diff-ui/src/utils/html_render_utils.ts rename to packages/precision-diffs/src/utils/html_render_utils.ts diff --git a/packages/diff-ui/src/utils/parseDiffFromFile.ts b/packages/precision-diffs/src/utils/parseDiffFromFile.ts similarity index 100% rename from packages/diff-ui/src/utils/parseDiffFromFile.ts rename to packages/precision-diffs/src/utils/parseDiffFromFile.ts diff --git a/packages/diff-ui/src/utils/parseLineType.ts b/packages/precision-diffs/src/utils/parseLineType.ts similarity index 100% rename from packages/diff-ui/src/utils/parseLineType.ts rename to packages/precision-diffs/src/utils/parseLineType.ts diff --git a/packages/diff-ui/src/utils/parsePatchFiles.ts b/packages/precision-diffs/src/utils/parsePatchFiles.ts similarity index 100% rename from packages/diff-ui/src/utils/parsePatchFiles.ts rename to packages/precision-diffs/src/utils/parsePatchFiles.ts diff --git a/packages/diff-ui/src/vite-env.d.ts b/packages/precision-diffs/src/vite-env.d.ts similarity index 100% rename from packages/diff-ui/src/vite-env.d.ts rename to packages/precision-diffs/src/vite-env.d.ts diff --git a/packages/diff-ui/tsconfig.json b/packages/precision-diffs/tsconfig.json similarity index 81% rename from packages/diff-ui/tsconfig.json rename to packages/precision-diffs/tsconfig.json index 8ba4d6df1..b4b9155e6 100644 --- a/packages/diff-ui/tsconfig.json +++ b/packages/precision-diffs/tsconfig.json @@ -8,10 +8,5 @@ "rootDir": "src", "lib": ["ES2023", "DOM", "DOM.Iterable"], "resolveJsonModule": true - }, - "references": [ - { - "path": "../shiki-stream" - } - ] + } } diff --git a/packages/shiki-stream/package.json b/packages/shiki-stream/package.json deleted file mode 100644 index e1fd67ab7..000000000 --- a/packages/shiki-stream/package.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "name": "@pierre/shiki-stream", - "private": true, - "version": "0.0.0", - "type": "module", - "scripts": { - "build": "tsc --build", - "dev": "tsc --build --watch" - }, - "exports": { - ".": { - "import": "./src/index.ts", - "types": "./src/index.ts" - } - }, - "devDependencies": { - "@trivago/prettier-plugin-sort-imports": "catalog:", - "typescript": "catalog:" - }, - "dependencies": { - "@shikijs/core": "catalog:" - } -} diff --git a/packages/shiki-stream/tsconfig.json b/packages/shiki-stream/tsconfig.json deleted file mode 100644 index 238a28282..000000000 --- a/packages/shiki-stream/tsconfig.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "extends": "../../tsconfig.options.json", - "include": ["src/**/*"], - "compilerOptions": { - "outDir": "dist", - "emitDeclarationOnly": false, - "baseUrl": ".", - "rootDir": "src" - } -} diff --git a/tsconfig.json b/tsconfig.json index 461effe2a..e63b0c1f3 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -6,14 +6,11 @@ "path": "apps/demo" }, { - "path": "packages/diff-ui" + "path": "packages/precision-diffs" }, { "path": "apps/docs" }, - { - "path": "packages/shiki-stream" - }, { "path": "packages/storage-elements" }, diff --git a/update-themes.js b/update-themes.js index e72009484..ba6f2c9d9 100755 --- a/update-themes.js +++ b/update-themes.js @@ -11,7 +11,7 @@ const sourceDir = '/Users/mdo/work/pierre/pierre-vscode-theme/themes'; // Target directories const targetDirs = [ - '/Users/mdo/work/pierre/pierrejs/packages/diff-ui/src/themes', + '/Users/mdo/work/pierre/pierrejs/packages/precision-diffs/src/themes', '/Users/mdo/work/pierre/pierrejs/apps/docs/themes', ];