Skip to content

Commit deb691e

Browse files
authored
Merge pull request #62 from objectstack-ai/copilot/add-test-coverage-for-zod-schemas
2 parents 2f585c6 + 76a0b8b commit deb691e

9 files changed

Lines changed: 825 additions & 28 deletions

File tree

apps/docs/next.config.mjs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,20 @@ const config = {
1818
},
1919
],
2020
},
21+
experimental: {
22+
turbo: {
23+
resolveAlias: {
24+
'fumadocs-ui/components/callout': 'fumadocs-ui/dist/components/callout.js',
25+
},
26+
},
27+
},
2128
webpack: (config, { isServer }) => {
2229
// Resolve the fumadocs virtual collection import to the local .source directory
2330
config.resolve = config.resolve || {};
2431
config.resolve.alias = {
2532
...(config.resolve.alias || {}),
2633
'fumadocs-mdx:collections': path.resolve(__dirname, '.source'),
34+
'fumadocs-ui/components/callout$': path.resolve(__dirname, '../../node_modules/fumadocs-ui/dist/components/callout.js'),
2735
};
2836
return config;
2937
},

apps/docs/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
"description": "ObjectStack Protocol Documentation Site",
66
"scripts": {
77
"site:dev": "next dev",
8-
"build": "next build",
8+
"build": "NEXT_PRIVATE_BUILD_WORKER=1 next build",
99
"site:start": "next start",
1010
"site:lint": "next lint"
1111
},

content/docs/guides/field-types.cn.mdx

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ title: 字段类型参考
33
description: ObjectStack 所有字段类型的完整指南,包含示例和配置选项
44
---
55

6-
import { Callout } from 'fumadocs-ui/components/callout';
76

87
# 字段类型参考
98

@@ -66,9 +65,9 @@ email: Field.email({
6665
})
6766
```
6867

69-
<Callout type="info">
68+
> ℹ️ **Info:**
7069
自动验证邮箱格式:`user@domain.com`
71-
</Callout>
70+
7271

7372
---
7473

@@ -107,9 +106,9 @@ api_key: Field.password({
107106
})
108107
```
109108

110-
<Callout type="warn">
109+
> ⚠️ **Warning:**
111110
密码字段在 UI 中自动掩码,如果 `encryption: true` 则加密存储
112-
</Callout>
111+
113112

114113
---
115114

@@ -137,9 +136,9 @@ html_content: Field.html({
137136
})
138137
```
139138

140-
<Callout type="warn">
139+
> ⚠️ **Warning:**
141140
渲染前务必净化 HTML 内容,防止 XSS 攻击
142-
</Callout>
141+
143142

144143
---
145144

@@ -370,11 +369,11 @@ account: Field.masterDetail('account', {
370369
})
371370
```
372371

373-
<Callout type="info">
372+
> ℹ️ **Info:**
374373
**主从关系 vs 查找:**
375374
- **主从关系:** 紧密耦合,级联删除,子记录继承安全性
376375
- **查找:** 松散耦合,删除时置空,独立安全性
377-
</Callout>
376+
378377

379378
---
380379

@@ -451,9 +450,9 @@ days_open: Field.formula({
451450
})
452451
```
453452

454-
<Callout type="info">
453+
> ℹ️ **Info:**
455454
公式字段自动计算且只读。可用函数请参见 [公式函数](/docs/references/data/formulas)
456-
</Callout>
455+
457456

458457
---
459458

content/docs/guides/field-types.mdx

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ title: Field Types Reference
33
description: Complete guide to all ObjectStack field types with examples and configuration options
44
---
55

6-
import { Callout } from 'fumadocs-ui/components/callout';
76

87
# Field Types Reference
98

@@ -66,9 +65,9 @@ email: Field.email({
6665
})
6766
```
6867

69-
<Callout type="info">
68+
> ℹ️ **Info:**
7069
Automatically validates email format: `user@domain.com`
71-
</Callout>
70+
7271

7372
---
7473

@@ -107,9 +106,9 @@ api_key: Field.password({
107106
})
108107
```
109108

110-
<Callout type="warn">
109+
> ⚠️ **Warning:**
111110
Password fields are automatically masked in UI and encrypted if `encryption: true`
112-
</Callout>
111+
113112

114113
---
115114

@@ -137,9 +136,9 @@ html_content: Field.html({
137136
})
138137
```
139138

140-
<Callout type="warn">
139+
> ⚠️ **Warning:**
141140
Always sanitize HTML content before rendering to prevent XSS attacks
142-
</Callout>
141+
143142

144143
---
145144

@@ -370,11 +369,11 @@ account: Field.masterDetail('account', {
370369
})
371370
```
372371

373-
<Callout type="info">
372+
> ℹ️ **Info:**
374373
**Master-Detail vs Lookup:**
375374
- **Master-Detail:** Tight coupling, cascade deletes, child inherits security
376375
- **Lookup:** Loose coupling, set null on delete, independent security
377-
</Callout>
376+
378377

379378
---
380379

@@ -451,9 +450,9 @@ days_open: Field.formula({
451450
})
452451
```
453452

454-
<Callout type="info">
453+
> ℹ️ **Info:**
455454
Formula fields are automatically calculated and readonly. See [Formula Functions](/docs/references/data/formulas) for available functions.
456-
</Callout>
455+
457456

458457
---
459458

content/docs/guides/view-configuration.mdx

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ title: View Configuration
33
description: Complete guide to configuring Grid, Kanban, Calendar, Gantt views and forms in ObjectStack
44
---
55

6-
import { Callout } from 'fumadocs-ui/components/callout';
76

87
# View Configuration Guide
98

content/docs/guides/workflows-validation.mdx

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ title: Validation Rules & Workflows
33
description: Complete guide to validation rules and workflow automation in ObjectStack
44
---
55

6-
import { Callout } from 'fumadocs-ui/components/callout';
76

87
# Validation Rules & Workflows
98

@@ -73,9 +72,9 @@ export const Opportunity = ObjectSchema.create({
7372
});
7473
```
7574

76-
<Callout type="info">
75+
> ℹ️ **Info:**
7776
**Important:** The `condition` is inverted logic - it defines when validation **FAILS**. If the condition evaluates to `TRUE`, the validation error is shown.
78-
</Callout>
77+
7978

8079
### Expression Examples
8180

content/docs/index.cn.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ import { Book, Compass, FileText, Layers } from 'lucide-react';
2323
icon={<Compass />}
2424
title="概念"
2525
href="/docs/concepts/manifesto"
26-
description="理解"意图优于实现"和"本地优先"架构的理念。"
26+
description="理解意图优于实现」和「本地优先架构的理念。"
2727
/>
2828
<Card
2929
icon={<Layers />}

0 commit comments

Comments
 (0)