feat(monorepo): migrate prototype code to organized package structure

Migrate all prototype code from vjs10-prototype repository into the
monorepo structure following established dependency hierarchy and
package organization patterns.

Core packages migrated:
- @vjs-10/media-store: Complete media store with nanostores integration
- @vjs-10/playback-engine: HLS.js playback engine implementation
- @vjs-10/media: Core media state owner and interfaces

HTML packages migrated:
- @vjs-10/html-icons: Web component icons with proper base classes
- @vjs-10/html-media-elements: Context provider integration
- @vjs-10/html: Main HTML UI components, skins, and utilities

React packages migrated:
- @vjs-10/react-icons: React icon components
- @vjs-10/react-media-elements: Video component with state integration
- @vjs-10/react-media-store: MediaProvider and React hooks
- @vjs-10/react: Main React UI components and skins

Changes made:
- Updated all imports to use monorepo package names (@vjs-10/*)
- Distributed dependencies to specific packages that use them
- Preserved all prototype functionality and component structure
- Created proper index files for all packages
- Fixed workspace protocol usage for npm compatibility

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Christian Pillsbury
2025-07-29 13:17:46 -07:00
co-authored by Claude
parent fc5a0e46fd
commit 4b472ec49c
61 changed files with 1967 additions and 995 deletions
+38 -4
View File
@@ -16,6 +16,8 @@
],
"devDependencies": {
"@types/node": "^20.0.0",
"@types/react": "^18.0.0",
"react": "^18.0.0",
"typescript": "^5.3.0"
},
"engines": {
@@ -2126,6 +2128,12 @@
"@jridgewell/sourcemap-codec": "^1.4.14"
}
},
"node_modules/@open-wc/context-protocol": {
"version": "0.0.9",
"resolved": "https://registry.npmjs.org/@open-wc/context-protocol/-/context-protocol-0.0.9.tgz",
"integrity": "sha512-3mMJ16BbRqFaZNR7ongBJEEvAjZFBpo5qUtc2dk/rlk3k09AVRp2Dcldu5VTB0r/tsWdfExbRLlCw/8f3cD/kQ==",
"license": "ISC"
},
"node_modules/@react-native-community/cli": {
"version": "11.4.1",
"resolved": "https://registry.npmjs.org/@react-native-community/cli/-/cli-11.4.1.tgz",
@@ -4080,6 +4088,12 @@
"node": ">=8"
}
},
"node_modules/hls.js": {
"version": "1.6.7",
"resolved": "https://registry.npmjs.org/hls.js/-/hls.js-1.6.7.tgz",
"integrity": "sha512-QW2fnwDGKGc9DwQUGLbmMOz8G48UZK7PVNJPcOUql1b8jubKx4/eMHNP5mGqr6tYlJNDG1g10Lx2U/qPzL6zwQ==",
"license": "Apache-2.0"
},
"node_modules/http-errors": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz",
@@ -5519,6 +5533,21 @@
"integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
"license": "MIT"
},
"node_modules/nanostores": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/nanostores/-/nanostores-1.0.1.tgz",
"integrity": "sha512-kNZ9xnoJYKg/AfxjrVL4SS0fKX++4awQReGqWnwTRHxeHGZ1FJFVgTqr/eMrNQdp0Tz7M7tG/TDaX8QfHDwVCw==",
"funding": [
{
"type": "github",
"url": "https://github.com/sponsors/ai"
}
],
"license": "MIT",
"engines": {
"node": "^20.0.0 || >=22.0.0"
}
},
"node_modules/negotiator": {
"version": "0.6.4",
"resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz",
@@ -7385,6 +7414,9 @@
"name": "@vjs-10/media-store",
"version": "0.1.0",
"license": "Apache-2.0",
"dependencies": {
"nanostores": "^1.0.1"
},
"devDependencies": {
"typescript": "^5.3.0"
}
@@ -7393,6 +7425,9 @@
"name": "@vjs-10/playback-engine",
"version": "0.1.0",
"license": "Apache-2.0",
"dependencies": {
"hls.js": "^1.6.7"
},
"devDependencies": {
"typescript": "^5.3.0"
}
@@ -7426,8 +7461,8 @@
"version": "0.1.0",
"license": "Apache-2.0",
"dependencies": {
"@vjs-10/media": "*",
"@vjs-10/playback-engine": "*"
"@open-wc/context-protocol": "^0.0.9",
"@vjs-10/media-store": "*"
},
"devDependencies": {
"typescript": "^5.3.0"
@@ -7564,8 +7599,7 @@
"version": "0.1.0",
"license": "Apache-2.0",
"dependencies": {
"@vjs-10/media-store": "*",
"@vjs-10/react-media-elements": "*"
"@vjs-10/media-store": "*"
},
"devDependencies": {
"@types/react": "^18.0.0",