@tekstack/client-data-model
v1.0.73
Published
TekStack client-side Dataverse data model for TypeScript projects.
Maintainers
Readme
TekStack Client Data Model
TypeScript npm package containing the TekStack client-side Dataverse data model.
What this package exports
- All generated entities, enums, custom APIs, and supporting types from
dataverse-gen metadataCachefor use withdataverse-ify
Build and publish
From this folder:
npm install
npm run build
npm pack
npm login
npm publish --access publicnpm run build will:
- Sync model files from
../ClientHooks/src/dataverse-gen - Compile TypeScript to
dist/ - Emit declaration files for consumer projects
Publish to npm
Before publishing, set your final package name/version in package.json.
npm version patch
npm publish --access publicIf publishing to a private organization registry, use your normal .npmrc settings.
Consume in React/TypeScript projects
import { metadataCache, Account_Select } from "@tekstack/client-data-model";Use metadataCache with dataverse-ify as needed by your app runtime.
Regenerate Early Bound Typescript Classes:
Use
npx dataverse-auth [environment]to authenticate
E.g.npx dataverse-auth contosoorg.crm.dynamics.comUpdate the config\test.yaml host entry with your Microsoft Dataverse environment
Run
npx dataverse-gento generated the early bound typesRun
npm run-script testto run unit and integration tests.
For more information see the dataverse-ify project
Reinstalling Using Node 26
Electron is not compatible with Node v26. The fix was:
Root cause: @electron/get v2.0.3 silently fails to download the electron binary on Node.js v26 (the downloaded zip ends up as 0 bytes in the cache) Fix: Manually downloaded electron-v33.4.11-win32-x64.zip from GitHub and extracted it to node_modules\electron\dist, then created path.txt with the value electron.exe If you reinstall node_modules in the future and hit this again, the manual download workaround is the same fix. You might also consider pinning to Node.js v22 LTS for this project to avoid compatibility issues with tooling that hasn't caught up to v26.
