Implementation:Microsoft Semantic kernel CloudEvents PackageLock
| Knowledge Sources | |
|---|---|
| Domains | npm, CloudEvents, React, Dependency_Management |
| Last Updated | 2026-02-11 00:00 GMT |
Overview
Concrete npm dependency lock file for the CloudEvents Process demo React client, provided by the ProcessWithCloudEvents sample.
Description
package-lock.json is an auto-generated npm lockfile (lockfileVersion 3) for the processwithcloudevents-client package (version 0.0.0). At 6413 lines, this is a large machine-generated file that pins exact versions and integrity hashes for all direct and transitive npm dependencies. The project's direct dependencies include @fluentui-contrib/react-chat, @fluentui/react-components (Fluent UI v9), @protobuf-ts/grpcweb-transport and related protobuf-ts runtime libraries for gRPC communication, react and react-dom (v18), react-markdown for rendering markdown content, and uuid for generating unique identifiers. Development dependencies include ESLint with React plugins, TypeScript type definitions, Vite with the React plugin, and the protobuf-ts code generation plugin.
Usage
This file is consumed automatically by npm when running npm install or npm ci within the CloudEvents client project directory. It ensures deterministic builds by locking all dependency versions. Developers should not manually edit this file; it is regenerated by npm when dependencies are added, removed, or updated in package.json.
Code Reference
Source Location
- Repository: Microsoft_Semantic_kernel
- File: dotnet/samples/Demos/ProcessWithCloudEvents/ProcessWithCloudEvents.Client/package-lock.json
- Lines: 1-6413
Signature
{
"name": "processwithcloudevents-client",
"version": "0.0.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "processwithcloudevents-client",
"version": "0.0.0",
"dependencies": {
"@fluentui-contrib/react-chat": "^0.1.10",
"@fluentui/react-components": "^9.61.6",
"@protobuf-ts/grpcweb-transport": "^2.9.6",
"@protobuf-ts/runtime": "^2.9.6",
"@protobuf-ts/runtime-rpc": "^2.9.6",
"react": "^18.3.1",
"react-dom": "^18.3.1",
"react-markdown": "^10.1.0",
"uuid": "^11.1.0"
},
"devDependencies": {
"@eslint/js": "^9.21.0",
"@protobuf-ts/plugin": "^2.9.6",
"@types/react": "^19.2.7",
"@types/react-dom": "^19.2.3",
"@vitejs/plugin-react": "^4.3.4",
"eslint": "^9.21.0",
"eslint-plugin-react-hooks": "^5.1.0",
"eslint-plugin-react-refresh": "^0.4.19",
"globals": "^15.15.0"
}
}
}
}
Import
# This file is consumed automatically by npm; no manual import is needed.
# To install all locked dependencies:
cd dotnet/samples/Demos/ProcessWithCloudEvents/ProcessWithCloudEvents.Client
npm ci
I/O Contract
Inputs
| Name | Type | Required | Description |
|---|---|---|---|
| package.json | JSON file | yes | The project manifest that declares direct dependencies and devDependencies |
| npm registry | network | yes | The npm registry from which packages are resolved and integrity hashes verified |
Outputs
| Name | Type | Description |
|---|---|---|
| node_modules/ | directory | Installed dependency tree matching the exact versions locked in this file |
| Deterministic build | guarantee | Ensures all developers and CI systems install identical dependency versions |
Usage Examples
Installing Dependencies from the Lock File
# Navigate to the CloudEvents client project
cd dotnet/samples/Demos/ProcessWithCloudEvents/ProcessWithCloudEvents.Client
# Install exact locked versions (preferred for CI)
npm ci
# Or install with potential lock file updates
npm install
Updating a Dependency
# Update a specific dependency (regenerates package-lock.json)
npm update @fluentui/react-components
# Add a new dependency
npm install some-new-package
Related Pages
- Environment:Microsoft_Semantic_kernel_DotNet_SDK_Environment
- Microsoft_Semantic_kernel_CloudEvents_App -- Root React component that uses these dependencies
- Microsoft_Semantic_kernel_CloudEvents_GenerateDocumentsChat -- Chat component that depends on Fluent UI and react-markdown
- Microsoft_Semantic_kernel_CloudEvents_Grpc_DocumentGeneration -- gRPC types generated using @protobuf-ts dependencies