Skip to content

Commit 080f732

Browse files
authored
merge dev to main (#709)
2 parents 527ffb8 + d061218 commit 080f732

File tree

19 files changed

+249
-91
lines changed

19 files changed

+249
-91
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "zenstack-monorepo",
3-
"version": "1.0.0-beta.23",
3+
"version": "1.0.0-beta.24",
44
"description": "",
55
"scripts": {
66
"build": "pnpm -r build",

packages/language/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@zenstackhq/language",
3-
"version": "1.0.0-beta.23",
3+
"version": "1.0.0-beta.24",
44
"displayName": "ZenStack modeling language compiler",
55
"description": "ZenStack modeling language compiler",
66
"homepage": "https://zenstack.dev",

packages/plugins/openapi/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "@zenstackhq/openapi",
33
"displayName": "ZenStack Plugin and Runtime for OpenAPI",
4-
"version": "1.0.0-beta.23",
4+
"version": "1.0.0-beta.24",
55
"description": "ZenStack plugin and runtime supporting OpenAPI",
66
"main": "index.js",
77
"repository": {

packages/plugins/swr/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "@zenstackhq/swr",
33
"displayName": "ZenStack plugin for generating SWR hooks",
4-
"version": "1.0.0-beta.23",
4+
"version": "1.0.0-beta.24",
55
"description": "ZenStack plugin for generating SWR hooks",
66
"main": "index.js",
77
"repository": {

packages/plugins/tanstack-query/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "@zenstackhq/tanstack-query",
33
"displayName": "ZenStack plugin for generating tanstack-query hooks",
4-
"version": "1.0.0-beta.23",
4+
"version": "1.0.0-beta.24",
55
"description": "ZenStack plugin for generating tanstack-query hooks",
66
"main": "index.js",
77
"exports": {

packages/plugins/trpc/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "@zenstackhq/trpc",
33
"displayName": "ZenStack plugin for tRPC",
4-
"version": "1.0.0-beta.23",
4+
"version": "1.0.0-beta.24",
55
"description": "ZenStack plugin for tRPC",
66
"main": "index.js",
77
"repository": {

packages/runtime/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "@zenstackhq/runtime",
33
"displayName": "ZenStack Runtime Library",
4-
"version": "1.0.0-beta.23",
4+
"version": "1.0.0-beta.24",
55
"description": "Runtime of ZenStack for both client-side and server-side environments.",
66
"repository": {
77
"type": "git",

packages/schema/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"publisher": "zenstack",
44
"displayName": "ZenStack Language Tools",
55
"description": "A toolkit for building secure CRUD apps with Next.js + Typescript",
6-
"version": "1.0.0-beta.23",
6+
"version": "1.0.0-beta.24",
77
"author": {
88
"name": "ZenStack Team"
99
},

packages/schema/src/language-server/validator/attribute-application-validator.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import {
1616
isReferenceExpr,
1717
} from '@zenstackhq/language/ast';
1818
import { isFutureExpr, resolved } from '@zenstackhq/sdk';
19-
import { ValidationAcceptor, streamAllContents } from 'langium';
19+
import { ValidationAcceptor, streamAst } from 'langium';
2020
import pluralize from 'pluralize';
2121
import { AstValidator } from '../types';
2222
import { getStringLiteral, mapBuiltinTypeToExpressionType, typeAssignable } from './utils';
@@ -134,7 +134,7 @@ export default class AttributeApplicationValidator implements AstValidator<Attri
134134
this.validatePolicyKinds(kind, ['read', 'update', 'all'], attr, accept);
135135

136136
const expr = attr.args[1].value;
137-
if ([expr, ...streamAllContents(expr)].some((node) => isFutureExpr(node))) {
137+
if (streamAst(expr).some((node) => isFutureExpr(node))) {
138138
accept('error', `"future()" is not allowed in field-level policy rules`, { node: expr });
139139
}
140140
}

packages/schema/src/language-server/validator/expression-validator.ts

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,14 @@ import {
22
BinaryExpr,
33
Expression,
44
ExpressionType,
5-
isBinaryExpr,
65
isDataModel,
76
isEnum,
87
isNullExpr,
98
isThisExpr,
109
} from '@zenstackhq/language/ast';
1110
import { isDataModelFieldReference } from '@zenstackhq/sdk';
1211
import { ValidationAcceptor } from 'langium';
13-
import { isAuthInvocation } from '../../utils/ast-utils';
12+
import { isAuthInvocation, isCollectionPredicate } from '../../utils/ast-utils';
1413
import { AstValidator } from '../types';
1514

1615
/**
@@ -23,7 +22,7 @@ export default class ExpressionValidator implements AstValidator<Expression> {
2322
if (isAuthInvocation(expr)) {
2423
// check was done at link time
2524
accept('error', 'auth() cannot be resolved because no "User" model is defined', { node: expr });
26-
} else if (this.isCollectionPredicate(expr)) {
25+
} else if (isCollectionPredicate(expr)) {
2726
accept('error', 'collection predicate can only be used on an array of model type', { node: expr });
2827
} else {
2928
accept('error', 'expression cannot be resolved', {
@@ -142,8 +141,4 @@ export default class ExpressionValidator implements AstValidator<Expression> {
142141
}
143142
}
144143
}
145-
146-
private isCollectionPredicate(expr: Expression) {
147-
return isBinaryExpr(expr) && ['?', '!', '^'].includes(expr.operator);
148-
}
149144
}

0 commit comments

Comments
 (0)