pocketbase-to-zod 1.0.4 → 1.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -46,9 +46,11 @@ program
46
46
  case 'text':
47
47
  case 'editor':
48
48
  case 'url':
49
- case 'email':
50
49
  zodType = 'z.string()';
51
50
  break;
51
+ case 'email':
52
+ zodType = 'z.email()';
53
+ break;
52
54
  case 'number':
53
55
  zodType = 'z.number()';
54
56
  break;
@@ -56,7 +58,7 @@ program
56
58
  zodType = 'z.boolean()';
57
59
  break;
58
60
  case 'date':
59
- zodType = 'z.string().datetime()'; // PocketBase sends dates as ISO strings
61
+ zodType = 'z.date()'; // PocketBase sends dates as ISO strings
60
62
  break;
61
63
  case 'select':
62
64
  if (field.options?.values && Array.isArray(field.options.values) && field.options.values.length > 0) {
@@ -68,7 +70,7 @@ program
68
70
  zodType = field.options?.maxSelect === 1 ? 'z.string()' : 'z.array(z.string())';
69
71
  break;
70
72
  case 'file':
71
- zodType = field.options?.maxSelect === 1 ? 'z.string()' : 'z.array(z.string())';
73
+ zodType = field.options?.maxSelect === 1 ? 'z.url()' : 'z.array(z.url())';
72
74
  break;
73
75
  case 'json':
74
76
  zodType = 'z.unknown()';
package/index.ts CHANGED
@@ -54,9 +54,11 @@ program
54
54
  case 'text':
55
55
  case 'editor':
56
56
  case 'url':
57
+ zodType = 'z.string()';
58
+ break;
57
59
  case 'email':
58
- zodType = 'z.string()';
59
- break;
60
+ zodType = 'z.email()';
61
+ break;
60
62
  case 'number':
61
63
  zodType = 'z.number()';
62
64
  break;
@@ -64,7 +66,7 @@ program
64
66
  zodType = 'z.boolean()';
65
67
  break;
66
68
  case 'date':
67
- zodType = 'z.string().datetime()'; // PocketBase sends dates as ISO strings
69
+ zodType = 'z.date()'; // PocketBase sends dates as ISO strings
68
70
  break;
69
71
  case 'select':
70
72
  if (field.options?.values && Array.isArray(field.options.values) && field.options.values.length > 0) {
@@ -76,7 +78,7 @@ program
76
78
  zodType = field.options?.maxSelect === 1 ? 'z.string()' : 'z.array(z.string())';
77
79
  break;
78
80
  case 'file':
79
- zodType = field.options?.maxSelect === 1 ? 'z.string()' : 'z.array(z.string())';
81
+ zodType = field.options?.maxSelect === 1 ? 'z.url()' : 'z.array(z.url())';
80
82
  break;
81
83
  case 'json':
82
84
  zodType = 'z.unknown()';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pocketbase-to-zod",
3
- "version": "1.0.4",
3
+ "version": "1.0.5",
4
4
  "description": "This project is an utility to generate Zod schemas from Pocketbase instance ",
5
5
  "main": "index.js",
6
6
  "bin": {