* upgrade tauri-plugin-shellx
* feat(shell): add killPid method to shell API with new permission
* fix: extension new window
* feat(shell): enhance process management and logging in extensions
- Add debug logging for extension process events
- Implement process tracking in UI worker
- Update shell API to support custom process recording
- Modify extension template to demonstrate process spawning
- Refactor shell command handling with improved error handling
* Add killPid extension API to @kksh/api
* chore(deps): update tauri-plugin-shellx-api to version 2.0.15
* pnpm lock
* chore(deps): update dependencies and lock file
- Upgrade ESLint to version 9.21.0
- Update @types/bun to version 1.2.3
- Bump various development dependencies
- Reorganize package.json dependencies in ui package
* chore(deps): update SvelteKit template dependencies
- Add @eslint/js version 9.21.0
- Update package.json dependency order
- Sync pnpm-lock.yaml with package.json changes
* chore: add eslint to desktop
* chore(deps): remove local tauri-plugin-shellx and use published version 2.0.15
* bump desktop to 0.1.28
* feat: add helper API for installation guides and update UI components
- Implement helperAPI with methods to navigate to installation guides for Deno, FFmpeg, and Homebrew
- Update extension and help page components to use new helper API
- Modify command filtering in builtin commands
- Adjust page navigation in help pages to use goHome instead of goBack
- Remove unused imports and clean up components
* chore: bump @kksh/api to 0.1.2 and update dependent packages
* refactor(api): rename ui subpackage name
* refactor(api): update import paths for template UI schemas
* chore: update dependencies and bump package versions
* chore(api): bump package version to 0.1.1
* refactor(api): rename IUiIframe to IUiCustom and related types
* format
* refactor: rename WorkerExtension to TemplateUiCommand, HeadlessWorkerExtension to HeadlessCommand
* ci: update npm publish workflow to include refactor branch
* ci: add push trigger for JSR publish workflow and bump API package version
* ci: add pnpm setup to npm publish workflow
* chore: add repository field to package.json for @kksh/api
dev and prod environment could have the same identifier.
If a dev ext is installed, user gets a warning prompt when installing from store, saying there is an existing extension.
The dev extension will be removed from DB.
In this commit we filter out dev extension
* feat: add a headless extension template
* feat: add headless template support for create-kunkun package
* chore: bump create-kunkun version to 0.1.38
* feat: add kv store API for extensions
* feat: add kv api to @kksh/api package
* bump: @kksh/api to 0.0.47
* feat: add IKV type export to UI module
* feat: add delete api for KV API
* feat: implement a file streamer for file share
Only server with hardcoded file path
* bump valibot version
* feat: add server-info gRPC module to serve server info
* feat: add ssl cert and public key to peers state
When peer is online, KK always have know its cert and pub key for future secure communication
* feat: add grpc ts package
* Enable "/refresh-worker-extension" rest API, grpc version isn't ready yet
* update pnpm lock
* ci: fix CI by moving protobuf install order
* ci: fix
* upgrade api due to valibot incompatibility
* fix: use fs instead of bun shell to be compatible with windows
* skip grpc pkg build on windows
* feat: local network file transfer prototype working
* fix: grpc build.ts
* download next to 14
* ci: add ci env try to fix next
* fix: hideRefreshBtn and a few other btns' hide API in iframe ext page
* feat: disable NODE_TLS_REJECT_UNAUTHORIZED for extension HMR refresh
* fix: manifest json schema with objectWithRest to allow any other fields in package.json
* chore: update valibot and related dependencies to version 1.0.0-beta.9 in pnpm-lock.yaml
* ci: add protobuf compiler installation to manifest-schema-upload workflow
* refactor: move grpc code from jarvis to a separate grpc crate
for easier testing
* feat(file-transfer): POC multi file + directory file transfer
* feat(file-transfer): replace file transfer recursive download in ts with rust
* feat(file-transfer): implement on_progress event for file transfer
* feat(file-transfer): report progress every 1MB instead of 100 iterations
* feat(file-transfer): add progress bar
* feat(file-transfer): UI
* feat(file-transfer): add file transfer bucket info preview
Show total size and number of files
* feat(file-transfer): improve UX
Show bucket info during confirm; improve progress bar UI, prevent inconsistent width
* feat(grpc): skip build in Cloudflare Pages due to missing protoc
* refactor: with cargo fix, unused imports removed
* ci: debug cloudflare pages env var
* fix(grpc): update environment variable access for Cloudflare Pages build check
* fix(grpc): add error handling for protoc command in build script
* chore: update kkrpc version to 0.0.13, remove kkrpc submodule, and enhance grpc build script logging
- Updated kkrpc dependency version from 0.0.12 to 0.0.13 in package.json.
- Removed the kkrpc submodule from the project.
- Enhanced logging in the grpc build script to include additional Cloudflare Pages environment variables for better debugging.
* fix(api): typescript error, remove base.json from tsconfig
* chore: update pnpm lock
* fix(api): update TypeScript configuration to extend base.json and clean up unused options
* refactor(api): update TypeScript configuration to extend path-alias.json and enhance compiler options
* fix(api): restore KunkunManifestPermission in PermissionUnion and update valibot import in schema tests
* fix: missing trait error
* fix: js require replaced with import
* test: fix a unit test with a more robust method
---------
Co-authored-by: Huakun Shen <huaukun.shen@huakunshen.com>
* chore: add extension templates
* feat: add create-kunkun and cli package
* fix: cli and create-kunkun package location
* fix: cli package test
* ci: run test for CI pipeline only on Linux
The most important E2E test is run with docker, Linux anyways, no need to run on Mac and Windows