fix: hooks generation emits Provider export for backward compatibility (#594)

This commit is contained in:
Yiming 2023-07-19 18:18:43 +08:00 committed by GitHub
parent 4621f3b505
commit ca3ebdae4e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
13 changed files with 22 additions and 13 deletions

View file

@ -1,6 +1,6 @@
{
"name": "zenstack-monorepo",
"version": "1.0.0-beta.9",
"version": "1.0.0-beta.10",
"description": "",
"scripts": {
"build": "pnpm -r build",

View file

@ -1,6 +1,6 @@
{
"name": "@zenstackhq/language",
"version": "1.0.0-beta.9",
"version": "1.0.0-beta.10",
"displayName": "ZenStack modeling language compiler",
"description": "ZenStack modeling language compiler",
"homepage": "https://zenstack.dev",

View file

@ -1,7 +1,7 @@
{
"name": "@zenstackhq/openapi",
"displayName": "ZenStack Plugin and Runtime for OpenAPI",
"version": "1.0.0-beta.9",
"version": "1.0.0-beta.10",
"description": "ZenStack plugin and runtime supporting OpenAPI",
"main": "index.js",
"repository": {

View file

@ -1,7 +1,7 @@
{
"name": "@zenstackhq/swr",
"displayName": "ZenStack plugin for generating SWR hooks",
"version": "1.0.0-beta.9",
"version": "1.0.0-beta.10",
"description": "ZenStack plugin for generating SWR hooks",
"main": "index.js",
"repository": {

View file

@ -269,6 +269,7 @@ function generateModelHooks(project: Project, outDir: string, model: DataModel,
function generateIndex(project: Project, outDir: string, models: DataModel[]) {
const sf = project.createSourceFile(path.join(outDir, 'index.ts'), undefined, { overwrite: true });
sf.addStatements(models.map((d) => `export * from './${paramCase(d.name)}';`));
sf.addStatements(`export { Provider } from '@zenstackhq/swr/runtime';`);
}
function generateQueryHook(

View file

@ -1,7 +1,7 @@
{
"name": "@zenstackhq/tanstack-query",
"displayName": "ZenStack plugin for generating tanstack-query hooks",
"version": "1.0.0-beta.9",
"version": "1.0.0-beta.10",
"description": "ZenStack plugin for generating tanstack-query hooks",
"main": "index.js",
"exports": {

View file

@ -36,7 +36,7 @@ export async function generate(model: Model, options: PluginOptions, dmmf: DMMF.
);
}
generateIndex(project, outDir, models);
generateIndex(project, outDir, models, target);
models.forEach((dataModel) => {
const mapping = dmmf.mappings.modelOperations.find((op) => op.model === dataModel.name);
@ -387,9 +387,17 @@ function generateModelHooks(
}
}
function generateIndex(project: Project, outDir: string, models: DataModel[]) {
function generateIndex(project: Project, outDir: string, models: DataModel[], target: string) {
const sf = project.createSourceFile(path.join(outDir, 'index.ts'), undefined, { overwrite: true });
sf.addStatements(models.map((d) => `export * from './${paramCase(d.name)}';`));
switch (target) {
case 'react':
sf.addStatements(`export { Provider } from '@zenstackhq/tanstack-query/runtime/react';`);
break;
case 'svelte':
sf.addStatements(`export { SvelteQueryContextKey } from '@zenstackhq/tanstack-query/runtime/svelte';`);
break;
}
}
function makeGetContext(target: TargetFramework) {

View file

@ -1,7 +1,7 @@
{
"name": "@zenstackhq/trpc",
"displayName": "ZenStack plugin for tRPC",
"version": "1.0.0-beta.9",
"version": "1.0.0-beta.10",
"description": "ZenStack plugin for tRPC",
"main": "index.js",
"repository": {

View file

@ -1,7 +1,7 @@
{
"name": "@zenstackhq/runtime",
"displayName": "ZenStack Runtime Library",
"version": "1.0.0-beta.9",
"version": "1.0.0-beta.10",
"description": "Runtime of ZenStack for both client-side and server-side environments.",
"repository": {
"type": "git",

View file

@ -3,7 +3,7 @@
"publisher": "zenstack",
"displayName": "ZenStack Language Tools",
"description": "A toolkit for building secure CRUD apps with Next.js + Typescript",
"version": "1.0.0-beta.9",
"version": "1.0.0-beta.10",
"author": {
"name": "ZenStack Team"
},

View file

@ -1,6 +1,6 @@
{
"name": "@zenstackhq/sdk",
"version": "1.0.0-beta.9",
"version": "1.0.0-beta.10",
"description": "ZenStack plugin development SDK",
"main": "index.js",
"scripts": {

View file

@ -1,6 +1,6 @@
{
"name": "@zenstackhq/server",
"version": "1.0.0-beta.9",
"version": "1.0.0-beta.10",
"displayName": "ZenStack Server-side Adapters",
"description": "ZenStack server-side adapters",
"homepage": "https://zenstack.dev",

View file

@ -1,6 +1,6 @@
{
"name": "@zenstackhq/testtools",
"version": "1.0.0-beta.9",
"version": "1.0.0-beta.10",
"description": "ZenStack Test Tools",
"main": "index.js",
"publishConfig": {