@famgia/omnify-react 0.0.1 → 0.0.2

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.
@@ -0,0 +1,429 @@
1
+ // src/schemas/i18n.ts
2
+ var defaultLocale = "ja";
3
+ var fallbackLocale = "en";
4
+ var supportedLocales = ["ja", "en"];
5
+ var validationMessages = {
6
+ "required": {
7
+ "ja": "${displayName}\u306F\u5FC5\u9808\u3067\u3059",
8
+ "en": "${displayName} is required"
9
+ },
10
+ "minLength": {
11
+ "ja": "${displayName}\u306F${min}\u6587\u5B57\u4EE5\u4E0A\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044",
12
+ "en": "${displayName} must be at least ${min} characters"
13
+ },
14
+ "maxLength": {
15
+ "ja": "${displayName}\u306F${max}\u6587\u5B57\u4EE5\u5185\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044",
16
+ "en": "${displayName} must be at most ${max} characters"
17
+ },
18
+ "min": {
19
+ "ja": "${displayName}\u306F${min}\u4EE5\u4E0A\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044",
20
+ "en": "${displayName} must be at least ${min}"
21
+ },
22
+ "max": {
23
+ "ja": "${displayName}\u306F${max}\u4EE5\u4E0B\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044",
24
+ "en": "${displayName} must be at most ${max}"
25
+ },
26
+ "email": {
27
+ "ja": "\u6709\u52B9\u306A\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044",
28
+ "en": "Please enter a valid email address"
29
+ },
30
+ "url": {
31
+ "ja": "\u6709\u52B9\u306AURL\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044",
32
+ "en": "Please enter a valid URL"
33
+ },
34
+ "pattern": {
35
+ "ja": "${displayName}\u306E\u5F62\u5F0F\u304C\u6B63\u3057\u304F\u3042\u308A\u307E\u305B\u3093",
36
+ "en": "${displayName} format is invalid"
37
+ }
38
+ };
39
+ function getMessage(key, locale, params = {}) {
40
+ const messages = validationMessages[key];
41
+ if (!messages) return key;
42
+ let message = messages[locale] ?? messages[fallbackLocale] ?? messages[defaultLocale] ?? key;
43
+ for (const [param, value] of Object.entries(params)) {
44
+ message = message.replace(new RegExp(`\\\${${param}}`, "g"), String(value));
45
+ }
46
+ return message;
47
+ }
48
+ function getMessages(locale) {
49
+ const result = {};
50
+ for (const [key, messages] of Object.entries(validationMessages)) {
51
+ result[key] = messages[locale] ?? messages[fallbackLocale] ?? messages[defaultLocale] ?? key;
52
+ }
53
+ return result;
54
+ }
55
+
56
+ // src/schemas/base/User.ts
57
+ import { z } from "zod";
58
+ var userI18n = {
59
+ /** Model display name */
60
+ label: { "en": "User" },
61
+ /** Field labels and placeholders */
62
+ fields: {
63
+ name: {
64
+ label: { "en": "Name" }
65
+ },
66
+ email: {
67
+ label: { "en": "Email" }
68
+ },
69
+ email_verified_at: {
70
+ label: { "en": "Email Verified At" }
71
+ },
72
+ password: {
73
+ label: { "en": "Password" }
74
+ },
75
+ remember_token: {
76
+ label: { "en": "Remember Token" }
77
+ },
78
+ console_user_id: {
79
+ label: { "en": "Console User ID" }
80
+ },
81
+ console_access_token: {
82
+ label: { "en": "Console Access Token" }
83
+ },
84
+ console_refresh_token: {
85
+ label: { "en": "Console Refresh Token" }
86
+ },
87
+ console_token_expires_at: {
88
+ label: { "en": "Console Token Expiry" }
89
+ },
90
+ role: {
91
+ label: { "en": "Role" }
92
+ }
93
+ }
94
+ };
95
+ var baseUserSchemas = {
96
+ name: z.string().min(1),
97
+ email: z.string().min(1),
98
+ email_verified_at: z.string().datetime({ offset: true }).optional().nullable(),
99
+ password: z.string().min(1),
100
+ remember_token: z.string().max(100).optional().nullable(),
101
+ console_user_id: z.number().int().optional().nullable(),
102
+ console_access_token: z.string().optional().nullable(),
103
+ console_refresh_token: z.string().optional().nullable(),
104
+ console_token_expires_at: z.string().datetime({ offset: true }).optional().nullable()
105
+ };
106
+ var baseUserCreateSchema = z.object({
107
+ name: baseUserSchemas.name,
108
+ email: baseUserSchemas.email,
109
+ password: baseUserSchemas.password,
110
+ remember_token: baseUserSchemas.remember_token,
111
+ console_user_id: baseUserSchemas.console_user_id,
112
+ console_access_token: baseUserSchemas.console_access_token,
113
+ console_refresh_token: baseUserSchemas.console_refresh_token,
114
+ console_token_expires_at: baseUserSchemas.console_token_expires_at
115
+ });
116
+ var baseUserUpdateSchema = baseUserCreateSchema.partial();
117
+ function getUserLabel(locale) {
118
+ return userI18n.label[locale] ?? userI18n.label["en"] ?? "User";
119
+ }
120
+ function getUserFieldLabel(field, locale) {
121
+ const fieldI18n = userI18n.fields[field];
122
+ if (!fieldI18n) return field;
123
+ return fieldI18n.label[locale] ?? fieldI18n.label["en"] ?? field;
124
+ }
125
+ function getUserFieldPlaceholder(field, locale) {
126
+ const fieldI18n = userI18n.fields[field];
127
+ if (!fieldI18n || !("placeholder" in fieldI18n)) return "";
128
+ const placeholder = fieldI18n.placeholder;
129
+ return placeholder[locale] ?? placeholder["en"] ?? "";
130
+ }
131
+
132
+ // src/schemas/User.ts
133
+ var userSchemas = { ...baseUserSchemas };
134
+ var userCreateSchema = baseUserCreateSchema;
135
+ var userUpdateSchema = baseUserUpdateSchema;
136
+
137
+ // src/schemas/base/Permission.ts
138
+ import { z as z2 } from "zod";
139
+ var permissionI18n = {
140
+ /** Model display name */
141
+ label: { "en": "Permission" },
142
+ /** Field labels and placeholders */
143
+ fields: {
144
+ name: {
145
+ label: { "en": "Permission Name" }
146
+ },
147
+ slug: {
148
+ label: { "en": "Slug" }
149
+ },
150
+ group: {
151
+ label: { "en": "Group" }
152
+ },
153
+ roles: {
154
+ label: { "en": "Roles" }
155
+ }
156
+ }
157
+ };
158
+ var basePermissionSchemas = {
159
+ name: z2.string().min(1).max(100),
160
+ slug: z2.string().min(1).max(100),
161
+ group: z2.string().max(50).optional().nullable()
162
+ };
163
+ var basePermissionCreateSchema = z2.object({
164
+ name: basePermissionSchemas.name,
165
+ slug: basePermissionSchemas.slug,
166
+ group: basePermissionSchemas.group
167
+ });
168
+ var basePermissionUpdateSchema = basePermissionCreateSchema.partial();
169
+ function getPermissionLabel(locale) {
170
+ return permissionI18n.label[locale] ?? permissionI18n.label["en"] ?? "Permission";
171
+ }
172
+ function getPermissionFieldLabel(field, locale) {
173
+ const fieldI18n = permissionI18n.fields[field];
174
+ if (!fieldI18n) return field;
175
+ return fieldI18n.label[locale] ?? fieldI18n.label["en"] ?? field;
176
+ }
177
+ function getPermissionFieldPlaceholder(field, locale) {
178
+ const fieldI18n = permissionI18n.fields[field];
179
+ if (!fieldI18n || !("placeholder" in fieldI18n)) return "";
180
+ const placeholder = fieldI18n.placeholder;
181
+ return placeholder[locale] ?? placeholder["en"] ?? "";
182
+ }
183
+
184
+ // src/schemas/Permission.ts
185
+ var permissionSchemas = { ...basePermissionSchemas };
186
+ var permissionCreateSchema = basePermissionCreateSchema;
187
+ var permissionUpdateSchema = basePermissionUpdateSchema;
188
+
189
+ // src/schemas/base/Role.ts
190
+ import { z as z3 } from "zod";
191
+ var roleI18n = {
192
+ /** Model display name */
193
+ label: { "en": "Role" },
194
+ /** Field labels and placeholders */
195
+ fields: {
196
+ name: {
197
+ label: { "en": "Role Name" }
198
+ },
199
+ slug: {
200
+ label: { "en": "Slug" }
201
+ },
202
+ description: {
203
+ label: { "en": "Description" }
204
+ },
205
+ level: {
206
+ label: { "en": "Level" }
207
+ },
208
+ permissions: {
209
+ label: { "en": "Permissions" }
210
+ }
211
+ }
212
+ };
213
+ var baseRoleSchemas = {
214
+ name: z3.string().min(1).max(100),
215
+ slug: z3.string().min(1).max(100),
216
+ description: z3.string().optional().nullable(),
217
+ level: z3.number().int()
218
+ };
219
+ var baseRoleCreateSchema = z3.object({
220
+ name: baseRoleSchemas.name,
221
+ slug: baseRoleSchemas.slug,
222
+ description: baseRoleSchemas.description,
223
+ level: baseRoleSchemas.level
224
+ });
225
+ var baseRoleUpdateSchema = baseRoleCreateSchema.partial();
226
+ function getRoleLabel(locale) {
227
+ return roleI18n.label[locale] ?? roleI18n.label["en"] ?? "Role";
228
+ }
229
+ function getRoleFieldLabel(field, locale) {
230
+ const fieldI18n = roleI18n.fields[field];
231
+ if (!fieldI18n) return field;
232
+ return fieldI18n.label[locale] ?? fieldI18n.label["en"] ?? field;
233
+ }
234
+ function getRoleFieldPlaceholder(field, locale) {
235
+ const fieldI18n = roleI18n.fields[field];
236
+ if (!fieldI18n || !("placeholder" in fieldI18n)) return "";
237
+ const placeholder = fieldI18n.placeholder;
238
+ return placeholder[locale] ?? placeholder["en"] ?? "";
239
+ }
240
+
241
+ // src/schemas/Role.ts
242
+ var roleSchemas = { ...baseRoleSchemas };
243
+ var roleCreateSchema = baseRoleCreateSchema;
244
+ var roleUpdateSchema = baseRoleUpdateSchema;
245
+
246
+ // src/schemas/base/RolePermission.ts
247
+ import { z as z4 } from "zod";
248
+ var rolePermissionI18n = {
249
+ /** Model display name */
250
+ label: { "en": "Role Permission" },
251
+ /** Field labels and placeholders */
252
+ fields: {
253
+ role: {
254
+ label: { "en": "Role" }
255
+ },
256
+ permission: {
257
+ label: { "en": "Permission" }
258
+ }
259
+ }
260
+ };
261
+ var baseRolePermissionSchemas = {};
262
+ var baseRolePermissionCreateSchema = z4.object({});
263
+ var baseRolePermissionUpdateSchema = baseRolePermissionCreateSchema.partial();
264
+ function getRolePermissionLabel(locale) {
265
+ return rolePermissionI18n.label[locale] ?? rolePermissionI18n.label["en"] ?? "RolePermission";
266
+ }
267
+ function getRolePermissionFieldLabel(field, locale) {
268
+ const fieldI18n = rolePermissionI18n.fields[field];
269
+ if (!fieldI18n) return field;
270
+ return fieldI18n.label[locale] ?? fieldI18n.label["en"] ?? field;
271
+ }
272
+ function getRolePermissionFieldPlaceholder(field, locale) {
273
+ const fieldI18n = rolePermissionI18n.fields[field];
274
+ if (!fieldI18n || !("placeholder" in fieldI18n)) return "";
275
+ const placeholder = fieldI18n.placeholder;
276
+ return placeholder[locale] ?? placeholder["en"] ?? "";
277
+ }
278
+
279
+ // src/schemas/RolePermission.ts
280
+ var rolePermissionSchemas = { ...baseRolePermissionSchemas };
281
+ var rolePermissionCreateSchema = baseRolePermissionCreateSchema;
282
+ var rolePermissionUpdateSchema = baseRolePermissionUpdateSchema;
283
+
284
+ // src/schemas/base/Team.ts
285
+ import { z as z5 } from "zod";
286
+ var teamI18n = {
287
+ /** Model display name */
288
+ label: { "en": "Team" },
289
+ /** Field labels and placeholders */
290
+ fields: {
291
+ console_team_id: {
292
+ label: { "en": "Console Team ID" }
293
+ },
294
+ console_org_id: {
295
+ label: { "en": "Console Organization ID" }
296
+ },
297
+ name: {
298
+ label: { "en": "Team Name" }
299
+ }
300
+ }
301
+ };
302
+ var baseTeamSchemas = {
303
+ console_team_id: z5.number().int(),
304
+ console_org_id: z5.number().int(),
305
+ name: z5.string().min(1).max(100)
306
+ };
307
+ var baseTeamCreateSchema = z5.object({
308
+ console_team_id: baseTeamSchemas.console_team_id,
309
+ console_org_id: baseTeamSchemas.console_org_id,
310
+ name: baseTeamSchemas.name
311
+ });
312
+ var baseTeamUpdateSchema = baseTeamCreateSchema.partial();
313
+ function getTeamLabel(locale) {
314
+ return teamI18n.label[locale] ?? teamI18n.label["en"] ?? "Team";
315
+ }
316
+ function getTeamFieldLabel(field, locale) {
317
+ const fieldI18n = teamI18n.fields[field];
318
+ if (!fieldI18n) return field;
319
+ return fieldI18n.label[locale] ?? fieldI18n.label["en"] ?? field;
320
+ }
321
+ function getTeamFieldPlaceholder(field, locale) {
322
+ const fieldI18n = teamI18n.fields[field];
323
+ if (!fieldI18n || !("placeholder" in fieldI18n)) return "";
324
+ const placeholder = fieldI18n.placeholder;
325
+ return placeholder[locale] ?? placeholder["en"] ?? "";
326
+ }
327
+
328
+ // src/schemas/Team.ts
329
+ var teamSchemas = { ...baseTeamSchemas };
330
+ var teamCreateSchema = baseTeamCreateSchema;
331
+ var teamUpdateSchema = baseTeamUpdateSchema;
332
+
333
+ // src/schemas/base/TeamPermission.ts
334
+ import { z as z6 } from "zod";
335
+ var teamPermissionI18n = {
336
+ /** Model display name */
337
+ label: { "en": "Team Permission" },
338
+ /** Field labels and placeholders */
339
+ fields: {
340
+ console_org_id: {
341
+ label: { "en": "Console Organization ID" }
342
+ },
343
+ console_team_id: {
344
+ label: { "en": "Console Team ID" }
345
+ },
346
+ permission: {
347
+ label: { "en": "Permission" }
348
+ }
349
+ }
350
+ };
351
+ var baseTeamPermissionSchemas = {
352
+ console_org_id: z6.number().int(),
353
+ console_team_id: z6.number().int()
354
+ };
355
+ var baseTeamPermissionCreateSchema = z6.object({
356
+ console_org_id: baseTeamPermissionSchemas.console_org_id,
357
+ console_team_id: baseTeamPermissionSchemas.console_team_id
358
+ });
359
+ var baseTeamPermissionUpdateSchema = baseTeamPermissionCreateSchema.partial();
360
+ function getTeamPermissionLabel(locale) {
361
+ return teamPermissionI18n.label[locale] ?? teamPermissionI18n.label["en"] ?? "TeamPermission";
362
+ }
363
+ function getTeamPermissionFieldLabel(field, locale) {
364
+ const fieldI18n = teamPermissionI18n.fields[field];
365
+ if (!fieldI18n) return field;
366
+ return fieldI18n.label[locale] ?? fieldI18n.label["en"] ?? field;
367
+ }
368
+ function getTeamPermissionFieldPlaceholder(field, locale) {
369
+ const fieldI18n = teamPermissionI18n.fields[field];
370
+ if (!fieldI18n || !("placeholder" in fieldI18n)) return "";
371
+ const placeholder = fieldI18n.placeholder;
372
+ return placeholder[locale] ?? placeholder["en"] ?? "";
373
+ }
374
+
375
+ // src/schemas/TeamPermission.ts
376
+ var teamPermissionSchemas = { ...baseTeamPermissionSchemas };
377
+ var teamPermissionCreateSchema = baseTeamPermissionCreateSchema;
378
+ var teamPermissionUpdateSchema = baseTeamPermissionUpdateSchema;
379
+ export {
380
+ defaultLocale,
381
+ fallbackLocale,
382
+ getMessage,
383
+ getMessages,
384
+ getPermissionFieldLabel,
385
+ getPermissionFieldPlaceholder,
386
+ getPermissionLabel,
387
+ getRoleFieldLabel,
388
+ getRoleFieldPlaceholder,
389
+ getRoleLabel,
390
+ getRolePermissionFieldLabel,
391
+ getRolePermissionFieldPlaceholder,
392
+ getRolePermissionLabel,
393
+ getTeamFieldLabel,
394
+ getTeamFieldPlaceholder,
395
+ getTeamLabel,
396
+ getTeamPermissionFieldLabel,
397
+ getTeamPermissionFieldPlaceholder,
398
+ getTeamPermissionLabel,
399
+ getUserFieldLabel,
400
+ getUserFieldPlaceholder,
401
+ getUserLabel,
402
+ permissionCreateSchema,
403
+ permissionI18n,
404
+ permissionSchemas,
405
+ permissionUpdateSchema,
406
+ roleCreateSchema,
407
+ roleI18n,
408
+ rolePermissionCreateSchema,
409
+ rolePermissionI18n,
410
+ rolePermissionSchemas,
411
+ rolePermissionUpdateSchema,
412
+ roleSchemas,
413
+ roleUpdateSchema,
414
+ supportedLocales,
415
+ teamCreateSchema,
416
+ teamI18n,
417
+ teamPermissionCreateSchema,
418
+ teamPermissionI18n,
419
+ teamPermissionSchemas,
420
+ teamPermissionUpdateSchema,
421
+ teamSchemas,
422
+ teamUpdateSchema,
423
+ userCreateSchema,
424
+ userI18n,
425
+ userSchemas,
426
+ userUpdateSchema,
427
+ validationMessages
428
+ };
429
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/schemas/i18n.ts","../../src/schemas/base/User.ts","../../src/schemas/User.ts","../../src/schemas/base/Permission.ts","../../src/schemas/Permission.ts","../../src/schemas/base/Role.ts","../../src/schemas/Role.ts","../../src/schemas/base/RolePermission.ts","../../src/schemas/RolePermission.ts","../../src/schemas/base/Team.ts","../../src/schemas/Team.ts","../../src/schemas/base/TeamPermission.ts","../../src/schemas/TeamPermission.ts"],"sourcesContent":["/**\n * ⚠️ DO NOT EDIT THIS FILE! ⚠️\n * このファイルを編集しないでください!\n * KHÔNG ĐƯỢC SỬA FILE NÀY!\n *\n * Auto-generated TypeScript types from Omnify schemas.\n * Any manual changes will be OVERWRITTEN on next generation.\n *\n * To modify: Edit the schema YAML file and run: npx omnify generate\n */\n\n\nimport type { LocaleMap } from './common';\n\n/**\n * Default locale for this project.\n */\nexport const defaultLocale = 'ja' as const;\n\n/**\n * Fallback locale when requested locale is not found.\n */\nexport const fallbackLocale = 'en' as const;\n\n/**\n * Supported locales in this project.\n */\nexport const supportedLocales = [\"ja\",\"en\"] as const;\n\n/**\n * Validation messages for all supported locales.\n * Use getMessage(key, locale, params) to get formatted message.\n */\nexport const validationMessages = {\n \"required\": {\n \"ja\": \"${displayName}は必須です\",\n \"en\": \"${displayName} is required\"\n },\n \"minLength\": {\n \"ja\": \"${displayName}は${min}文字以上で入力してください\",\n \"en\": \"${displayName} must be at least ${min} characters\"\n },\n \"maxLength\": {\n \"ja\": \"${displayName}は${max}文字以内で入力してください\",\n \"en\": \"${displayName} must be at most ${max} characters\"\n },\n \"min\": {\n \"ja\": \"${displayName}は${min}以上で入力してください\",\n \"en\": \"${displayName} must be at least ${min}\"\n },\n \"max\": {\n \"ja\": \"${displayName}は${max}以下で入力してください\",\n \"en\": \"${displayName} must be at most ${max}\"\n },\n \"email\": {\n \"ja\": \"有効なメールアドレスを入力してください\",\n \"en\": \"Please enter a valid email address\"\n },\n \"url\": {\n \"ja\": \"有効なURLを入力してください\",\n \"en\": \"Please enter a valid URL\"\n },\n \"pattern\": {\n \"ja\": \"${displayName}の形式が正しくありません\",\n \"en\": \"${displayName} format is invalid\"\n }\n} as const;\n\n/**\n * Get validation message for a specific key and locale.\n * Supports template placeholders: ${displayName}, ${min}, ${max}, etc.\n *\n * @param key - Message key (e.g., 'required', 'minLength')\n * @param locale - Locale code (e.g., 'ja', 'en')\n * @param params - Template parameters to replace\n * @returns Formatted message string\n *\n * @example\n * getMessage('required', 'ja', { displayName: '氏名' })\n * // => '氏名は必須です'\n */\nexport function getMessage(\n key: string,\n locale: string,\n params: Record<string, string | number> = {}\n): string {\n const messages = validationMessages[key as keyof typeof validationMessages];\n if (!messages) return key;\n\n let message = (messages as LocaleMap)[locale]\n ?? (messages as LocaleMap)[fallbackLocale]\n ?? (messages as LocaleMap)[defaultLocale]\n ?? key;\n\n // Replace template placeholders\n for (const [param, value] of Object.entries(params)) {\n message = message.replace(new RegExp(`\\\\$\\{${param}\\}`, 'g'), String(value));\n }\n\n return message;\n}\n\n/**\n * Get all validation messages for a specific locale.\n *\n * @param locale - Locale code\n * @returns Object with all messages for the locale\n */\nexport function getMessages(locale: string): Record<string, string> {\n const result: Record<string, string> = {};\n for (const [key, messages] of Object.entries(validationMessages)) {\n result[key] = (messages as LocaleMap)[locale]\n ?? (messages as LocaleMap)[fallbackLocale]\n ?? (messages as LocaleMap)[defaultLocale]\n ?? key;\n }\n return result;\n}\n","/**\n * ⚠️ DO NOT EDIT THIS FILE! ⚠️\n * このファイルを編集しないでください!\n * KHÔNG ĐƯỢC SỬA FILE NÀY!\n *\n * Auto-generated TypeScript types from Omnify schemas.\n * Any manual changes will be OVERWRITTEN on next generation.\n *\n * To modify: Edit the schema YAML file and run: npx omnify generate\n */\n\nimport { z } from 'zod';\nimport type { DateTimeString } from '../common';\nimport type { Role } from './Role';\n\n/**\n * User\n */\nexport interface User {\n /** Primary key */\n id: number;\n /** Name */\n name: string;\n /** Email */\n email: string;\n /** Email Verified At */\n email_verified_at?: DateTimeString;\n /** Password */\n password: string;\n /** Remember Token */\n remember_token?: string;\n /** Console User ID */\n console_user_id?: number;\n /** Console Access Token */\n console_access_token?: string;\n /** Console Refresh Token */\n console_refresh_token?: string;\n /** Console Token Expiry */\n console_token_expires_at?: DateTimeString;\n /** Role */\n role?: Role;\n /** Creation timestamp */\n created_at?: DateTimeString;\n /** Last update timestamp */\n updated_at?: DateTimeString;\n}\n\n// ============================================================================\n// I18n (Internationalization)\n// ============================================================================\n\n/**\n * Unified i18n object for User\n * Contains model label and all field labels/placeholders\n */\nexport const userI18n = {\n /** Model display name */\n label: {\"en\":\"User\"},\n /** Field labels and placeholders */\n fields: {\n name: {\n label: {\"en\":\"Name\"},\n },\n email: {\n label: {\"en\":\"Email\"},\n },\n email_verified_at: {\n label: {\"en\":\"Email Verified At\"},\n },\n password: {\n label: {\"en\":\"Password\"},\n },\n remember_token: {\n label: {\"en\":\"Remember Token\"},\n },\n console_user_id: {\n label: {\"en\":\"Console User ID\"},\n },\n console_access_token: {\n label: {\"en\":\"Console Access Token\"},\n },\n console_refresh_token: {\n label: {\"en\":\"Console Refresh Token\"},\n },\n console_token_expires_at: {\n label: {\"en\":\"Console Token Expiry\"},\n },\n role: {\n label: {\"en\":\"Role\"},\n },\n },\n} as const;\n\n// ============================================================================\n// Zod Schemas\n// ============================================================================\n\n/** Field schemas for User */\nexport const baseUserSchemas = {\n name: z.string().min(1),\n email: z.string().min(1),\n email_verified_at: z.string().datetime({ offset: true }).optional().nullable(),\n password: z.string().min(1),\n remember_token: z.string().max(100).optional().nullable(),\n console_user_id: z.number().int().optional().nullable(),\n console_access_token: z.string().optional().nullable(),\n console_refresh_token: z.string().optional().nullable(),\n console_token_expires_at: z.string().datetime({ offset: true }).optional().nullable(),\n} as const;\n\n/** Create schema for User (POST requests) */\nexport const baseUserCreateSchema = z.object({\n name: baseUserSchemas.name,\n email: baseUserSchemas.email,\n password: baseUserSchemas.password,\n remember_token: baseUserSchemas.remember_token,\n console_user_id: baseUserSchemas.console_user_id,\n console_access_token: baseUserSchemas.console_access_token,\n console_refresh_token: baseUserSchemas.console_refresh_token,\n console_token_expires_at: baseUserSchemas.console_token_expires_at,\n});\n\n/** Update schema for User (PUT/PATCH requests) */\nexport const baseUserUpdateSchema = baseUserCreateSchema.partial();\n\n// ============================================================================\n// Inferred Types\n// ============================================================================\n\nexport type BaseUserCreate = z.infer<typeof baseUserCreateSchema>;\nexport type BaseUserUpdate = z.infer<typeof baseUserUpdateSchema>;\n\n// ============================================================================\n// I18n Helper Functions\n// ============================================================================\n\n/** Get model label for a specific locale */\nexport function getUserLabel(locale: string): string {\n return userI18n.label[locale as keyof typeof userI18n.label] ?? userI18n.label['en'] ?? 'User';\n}\n\n/** Get field label for a specific locale */\nexport function getUserFieldLabel(field: string, locale: string): string {\n const fieldI18n = userI18n.fields[field as keyof typeof userI18n.fields];\n if (!fieldI18n) return field;\n return fieldI18n.label[locale as keyof typeof fieldI18n.label] ?? fieldI18n.label['en'] ?? field;\n}\n\n/** Get field placeholder for a specific locale */\nexport function getUserFieldPlaceholder(field: string, locale: string): string {\n const fieldI18n = userI18n.fields[field as keyof typeof userI18n.fields];\n if (!fieldI18n || !('placeholder' in fieldI18n)) return '';\n const placeholder = fieldI18n.placeholder as Record<string, string>;\n return placeholder[locale] ?? placeholder['en'] ?? '';\n}\n","/**\n * User Model\n *\n * This file extends the auto-generated base interface.\n * You can add custom methods, computed properties, or override types/schemas here.\n * This file will NOT be overwritten by the generator.\n */\n\nimport { z } from 'zod';\nimport type { User as UserBase } from './base/User';\nimport {\n baseUserSchemas,\n baseUserCreateSchema,\n baseUserUpdateSchema,\n userI18n,\n getUserLabel,\n getUserFieldLabel,\n getUserFieldPlaceholder,\n} from './base/User';\n\n// ============================================================================\n// Types (extend or re-export)\n// ============================================================================\n\nexport interface User extends UserBase {\n // Add custom properties here\n}\n\n// ============================================================================\n// Schemas (extend or re-export)\n// ============================================================================\n\nexport const userSchemas = { ...baseUserSchemas };\nexport const userCreateSchema = baseUserCreateSchema;\nexport const userUpdateSchema = baseUserUpdateSchema;\n\n// ============================================================================\n// Types\n// ============================================================================\n\nexport type UserCreate = z.infer<typeof userCreateSchema>;\nexport type UserUpdate = z.infer<typeof userUpdateSchema>;\n\n// Re-export i18n and helpers\nexport {\n userI18n,\n getUserLabel,\n getUserFieldLabel,\n getUserFieldPlaceholder,\n};\n\n// Re-export base type for internal use\nexport type { UserBase };\n","/**\n * ⚠️ DO NOT EDIT THIS FILE! ⚠️\n * このファイルを編集しないでください!\n * KHÔNG ĐƯỢC SỬA FILE NÀY!\n *\n * Auto-generated TypeScript types from Omnify schemas.\n * Any manual changes will be OVERWRITTEN on next generation.\n *\n * To modify: Edit the schema YAML file and run: npx omnify generate\n */\n\nimport { z } from 'zod';\nimport type { DateTimeString } from '../common';\nimport type { Role } from './Role';\n\n/**\n * Permission\n */\nexport interface Permission {\n /** Primary key */\n id: number;\n /** Permission Name */\n name: string;\n /** Slug */\n slug: string;\n /** Group */\n group?: string;\n /** Roles */\n roles: Role[];\n /** Creation timestamp */\n created_at?: DateTimeString;\n /** Last update timestamp */\n updated_at?: DateTimeString;\n}\n\n// ============================================================================\n// I18n (Internationalization)\n// ============================================================================\n\n/**\n * Unified i18n object for Permission\n * Contains model label and all field labels/placeholders\n */\nexport const permissionI18n = {\n /** Model display name */\n label: {\"en\":\"Permission\"},\n /** Field labels and placeholders */\n fields: {\n name: {\n label: {\"en\":\"Permission Name\"},\n },\n slug: {\n label: {\"en\":\"Slug\"},\n },\n group: {\n label: {\"en\":\"Group\"},\n },\n roles: {\n label: {\"en\":\"Roles\"},\n },\n },\n} as const;\n\n// ============================================================================\n// Zod Schemas\n// ============================================================================\n\n/** Field schemas for Permission */\nexport const basePermissionSchemas = {\n name: z.string().min(1).max(100),\n slug: z.string().min(1).max(100),\n group: z.string().max(50).optional().nullable(),\n} as const;\n\n/** Create schema for Permission (POST requests) */\nexport const basePermissionCreateSchema = z.object({\n name: basePermissionSchemas.name,\n slug: basePermissionSchemas.slug,\n group: basePermissionSchemas.group,\n});\n\n/** Update schema for Permission (PUT/PATCH requests) */\nexport const basePermissionUpdateSchema = basePermissionCreateSchema.partial();\n\n// ============================================================================\n// Inferred Types\n// ============================================================================\n\nexport type BasePermissionCreate = z.infer<typeof basePermissionCreateSchema>;\nexport type BasePermissionUpdate = z.infer<typeof basePermissionUpdateSchema>;\n\n// ============================================================================\n// I18n Helper Functions\n// ============================================================================\n\n/** Get model label for a specific locale */\nexport function getPermissionLabel(locale: string): string {\n return permissionI18n.label[locale as keyof typeof permissionI18n.label] ?? permissionI18n.label['en'] ?? 'Permission';\n}\n\n/** Get field label for a specific locale */\nexport function getPermissionFieldLabel(field: string, locale: string): string {\n const fieldI18n = permissionI18n.fields[field as keyof typeof permissionI18n.fields];\n if (!fieldI18n) return field;\n return fieldI18n.label[locale as keyof typeof fieldI18n.label] ?? fieldI18n.label['en'] ?? field;\n}\n\n/** Get field placeholder for a specific locale */\nexport function getPermissionFieldPlaceholder(field: string, locale: string): string {\n const fieldI18n = permissionI18n.fields[field as keyof typeof permissionI18n.fields];\n if (!fieldI18n || !('placeholder' in fieldI18n)) return '';\n const placeholder = fieldI18n.placeholder as Record<string, string>;\n return placeholder[locale] ?? placeholder['en'] ?? '';\n}\n","/**\n * Permission Model\n *\n * This file extends the auto-generated base interface.\n * You can add custom methods, computed properties, or override types/schemas here.\n * This file will NOT be overwritten by the generator.\n */\n\nimport { z } from 'zod';\nimport type { Permission as PermissionBase } from './base/Permission';\nimport {\n basePermissionSchemas,\n basePermissionCreateSchema,\n basePermissionUpdateSchema,\n permissionI18n,\n getPermissionLabel,\n getPermissionFieldLabel,\n getPermissionFieldPlaceholder,\n} from './base/Permission';\n\n// ============================================================================\n// Types (extend or re-export)\n// ============================================================================\n\nexport interface Permission extends PermissionBase {\n // Add custom properties here\n}\n\n// ============================================================================\n// Schemas (extend or re-export)\n// ============================================================================\n\nexport const permissionSchemas = { ...basePermissionSchemas };\nexport const permissionCreateSchema = basePermissionCreateSchema;\nexport const permissionUpdateSchema = basePermissionUpdateSchema;\n\n// ============================================================================\n// Types\n// ============================================================================\n\nexport type PermissionCreate = z.infer<typeof permissionCreateSchema>;\nexport type PermissionUpdate = z.infer<typeof permissionUpdateSchema>;\n\n// Re-export i18n and helpers\nexport {\n permissionI18n,\n getPermissionLabel,\n getPermissionFieldLabel,\n getPermissionFieldPlaceholder,\n};\n\n// Re-export base type for internal use\nexport type { PermissionBase };\n","/**\n * ⚠️ DO NOT EDIT THIS FILE! ⚠️\n * このファイルを編集しないでください!\n * KHÔNG ĐƯỢC SỬA FILE NÀY!\n *\n * Auto-generated TypeScript types from Omnify schemas.\n * Any manual changes will be OVERWRITTEN on next generation.\n *\n * To modify: Edit the schema YAML file and run: npx omnify generate\n */\n\nimport { z } from 'zod';\nimport type { DateTimeString } from '../common';\nimport type { Permission } from './Permission';\n\n/**\n * Role\n */\nexport interface Role {\n /** Primary key */\n id: number;\n /** Role Name */\n name: string;\n /** Slug */\n slug: string;\n /** Description */\n description?: string;\n /** Level */\n level: number;\n /** Permissions */\n permissions: Permission[];\n /** Creation timestamp */\n created_at?: DateTimeString;\n /** Last update timestamp */\n updated_at?: DateTimeString;\n}\n\n// ============================================================================\n// I18n (Internationalization)\n// ============================================================================\n\n/**\n * Unified i18n object for Role\n * Contains model label and all field labels/placeholders\n */\nexport const roleI18n = {\n /** Model display name */\n label: {\"en\":\"Role\"},\n /** Field labels and placeholders */\n fields: {\n name: {\n label: {\"en\":\"Role Name\"},\n },\n slug: {\n label: {\"en\":\"Slug\"},\n },\n description: {\n label: {\"en\":\"Description\"},\n },\n level: {\n label: {\"en\":\"Level\"},\n },\n permissions: {\n label: {\"en\":\"Permissions\"},\n },\n },\n} as const;\n\n// ============================================================================\n// Zod Schemas\n// ============================================================================\n\n/** Field schemas for Role */\nexport const baseRoleSchemas = {\n name: z.string().min(1).max(100),\n slug: z.string().min(1).max(100),\n description: z.string().optional().nullable(),\n level: z.number().int(),\n} as const;\n\n/** Create schema for Role (POST requests) */\nexport const baseRoleCreateSchema = z.object({\n name: baseRoleSchemas.name,\n slug: baseRoleSchemas.slug,\n description: baseRoleSchemas.description,\n level: baseRoleSchemas.level,\n});\n\n/** Update schema for Role (PUT/PATCH requests) */\nexport const baseRoleUpdateSchema = baseRoleCreateSchema.partial();\n\n// ============================================================================\n// Inferred Types\n// ============================================================================\n\nexport type BaseRoleCreate = z.infer<typeof baseRoleCreateSchema>;\nexport type BaseRoleUpdate = z.infer<typeof baseRoleUpdateSchema>;\n\n// ============================================================================\n// I18n Helper Functions\n// ============================================================================\n\n/** Get model label for a specific locale */\nexport function getRoleLabel(locale: string): string {\n return roleI18n.label[locale as keyof typeof roleI18n.label] ?? roleI18n.label['en'] ?? 'Role';\n}\n\n/** Get field label for a specific locale */\nexport function getRoleFieldLabel(field: string, locale: string): string {\n const fieldI18n = roleI18n.fields[field as keyof typeof roleI18n.fields];\n if (!fieldI18n) return field;\n return fieldI18n.label[locale as keyof typeof fieldI18n.label] ?? fieldI18n.label['en'] ?? field;\n}\n\n/** Get field placeholder for a specific locale */\nexport function getRoleFieldPlaceholder(field: string, locale: string): string {\n const fieldI18n = roleI18n.fields[field as keyof typeof roleI18n.fields];\n if (!fieldI18n || !('placeholder' in fieldI18n)) return '';\n const placeholder = fieldI18n.placeholder as Record<string, string>;\n return placeholder[locale] ?? placeholder['en'] ?? '';\n}\n","/**\n * Role Model\n *\n * This file extends the auto-generated base interface.\n * You can add custom methods, computed properties, or override types/schemas here.\n * This file will NOT be overwritten by the generator.\n */\n\nimport { z } from 'zod';\nimport type { Role as RoleBase } from './base/Role';\nimport {\n baseRoleSchemas,\n baseRoleCreateSchema,\n baseRoleUpdateSchema,\n roleI18n,\n getRoleLabel,\n getRoleFieldLabel,\n getRoleFieldPlaceholder,\n} from './base/Role';\n\n// ============================================================================\n// Types (extend or re-export)\n// ============================================================================\n\nexport interface Role extends RoleBase {\n // Add custom properties here\n}\n\n// ============================================================================\n// Schemas (extend or re-export)\n// ============================================================================\n\nexport const roleSchemas = { ...baseRoleSchemas };\nexport const roleCreateSchema = baseRoleCreateSchema;\nexport const roleUpdateSchema = baseRoleUpdateSchema;\n\n// ============================================================================\n// Types\n// ============================================================================\n\nexport type RoleCreate = z.infer<typeof roleCreateSchema>;\nexport type RoleUpdate = z.infer<typeof roleUpdateSchema>;\n\n// Re-export i18n and helpers\nexport {\n roleI18n,\n getRoleLabel,\n getRoleFieldLabel,\n getRoleFieldPlaceholder,\n};\n\n// Re-export base type for internal use\nexport type { RoleBase };\n","/**\n * ⚠️ DO NOT EDIT THIS FILE! ⚠️\n * このファイルを編集しないでください!\n * KHÔNG ĐƯỢC SỬA FILE NÀY!\n *\n * Auto-generated TypeScript types from Omnify schemas.\n * Any manual changes will be OVERWRITTEN on next generation.\n *\n * To modify: Edit the schema YAML file and run: npx omnify generate\n */\n\nimport { z } from 'zod';\nimport type { DateTimeString } from '../common';\nimport type { Permission } from './Permission';\nimport type { Role } from './Role';\n\n/**\n * Role Permission\n */\nexport interface RolePermission {\n /** Primary key */\n id: number;\n /** Role */\n role: Role;\n /** Permission */\n permission: Permission;\n /** Creation timestamp */\n created_at?: DateTimeString;\n /** Last update timestamp */\n updated_at?: DateTimeString;\n}\n\n// ============================================================================\n// I18n (Internationalization)\n// ============================================================================\n\n/**\n * Unified i18n object for RolePermission\n * Contains model label and all field labels/placeholders\n */\nexport const rolePermissionI18n = {\n /** Model display name */\n label: {\"en\":\"Role Permission\"},\n /** Field labels and placeholders */\n fields: {\n role: {\n label: {\"en\":\"Role\"},\n },\n permission: {\n label: {\"en\":\"Permission\"},\n },\n },\n} as const;\n\n// ============================================================================\n// Zod Schemas\n// ============================================================================\n\n/** Field schemas for RolePermission */\nexport const baseRolePermissionSchemas = {\n} as const;\n\n/** Create schema for RolePermission (POST requests) */\nexport const baseRolePermissionCreateSchema = z.object({\n});\n\n/** Update schema for RolePermission (PUT/PATCH requests) */\nexport const baseRolePermissionUpdateSchema = baseRolePermissionCreateSchema.partial();\n\n// ============================================================================\n// Inferred Types\n// ============================================================================\n\nexport type BaseRolePermissionCreate = z.infer<typeof baseRolePermissionCreateSchema>;\nexport type BaseRolePermissionUpdate = z.infer<typeof baseRolePermissionUpdateSchema>;\n\n// ============================================================================\n// I18n Helper Functions\n// ============================================================================\n\n/** Get model label for a specific locale */\nexport function getRolePermissionLabel(locale: string): string {\n return rolePermissionI18n.label[locale as keyof typeof rolePermissionI18n.label] ?? rolePermissionI18n.label['en'] ?? 'RolePermission';\n}\n\n/** Get field label for a specific locale */\nexport function getRolePermissionFieldLabel(field: string, locale: string): string {\n const fieldI18n = rolePermissionI18n.fields[field as keyof typeof rolePermissionI18n.fields];\n if (!fieldI18n) return field;\n return fieldI18n.label[locale as keyof typeof fieldI18n.label] ?? fieldI18n.label['en'] ?? field;\n}\n\n/** Get field placeholder for a specific locale */\nexport function getRolePermissionFieldPlaceholder(field: string, locale: string): string {\n const fieldI18n = rolePermissionI18n.fields[field as keyof typeof rolePermissionI18n.fields];\n if (!fieldI18n || !('placeholder' in fieldI18n)) return '';\n const placeholder = fieldI18n.placeholder as Record<string, string>;\n return placeholder[locale] ?? placeholder['en'] ?? '';\n}\n","/**\n * RolePermission Model\n *\n * This file extends the auto-generated base interface.\n * You can add custom methods, computed properties, or override types/schemas here.\n * This file will NOT be overwritten by the generator.\n */\n\nimport { z } from 'zod';\nimport type { RolePermission as RolePermissionBase } from './base/RolePermission';\nimport {\n baseRolePermissionSchemas,\n baseRolePermissionCreateSchema,\n baseRolePermissionUpdateSchema,\n rolePermissionI18n,\n getRolePermissionLabel,\n getRolePermissionFieldLabel,\n getRolePermissionFieldPlaceholder,\n} from './base/RolePermission';\n\n// ============================================================================\n// Types (extend or re-export)\n// ============================================================================\n\nexport interface RolePermission extends RolePermissionBase {\n // Add custom properties here\n}\n\n// ============================================================================\n// Schemas (extend or re-export)\n// ============================================================================\n\nexport const rolePermissionSchemas = { ...baseRolePermissionSchemas };\nexport const rolePermissionCreateSchema = baseRolePermissionCreateSchema;\nexport const rolePermissionUpdateSchema = baseRolePermissionUpdateSchema;\n\n// ============================================================================\n// Types\n// ============================================================================\n\nexport type RolePermissionCreate = z.infer<typeof rolePermissionCreateSchema>;\nexport type RolePermissionUpdate = z.infer<typeof rolePermissionUpdateSchema>;\n\n// Re-export i18n and helpers\nexport {\n rolePermissionI18n,\n getRolePermissionLabel,\n getRolePermissionFieldLabel,\n getRolePermissionFieldPlaceholder,\n};\n\n// Re-export base type for internal use\nexport type { RolePermissionBase };\n","/**\n * ⚠️ DO NOT EDIT THIS FILE! ⚠️\n * このファイルを編集しないでください!\n * KHÔNG ĐƯỢC SỬA FILE NÀY!\n *\n * Auto-generated TypeScript types from Omnify schemas.\n * Any manual changes will be OVERWRITTEN on next generation.\n *\n * To modify: Edit the schema YAML file and run: npx omnify generate\n */\n\nimport { z } from 'zod';\nimport type { DateTimeString } from '../common';\n\n/**\n * Team\n */\nexport interface Team {\n /** Primary key */\n id: number;\n /** Console Team ID */\n console_team_id: number;\n /** Console Organization ID */\n console_org_id: number;\n /** Team Name */\n name: string;\n /** Creation timestamp */\n created_at?: DateTimeString;\n /** Last update timestamp */\n updated_at?: DateTimeString;\n /** Soft delete timestamp */\n deleted_at?: DateTimeString;\n}\n\n// ============================================================================\n// I18n (Internationalization)\n// ============================================================================\n\n/**\n * Unified i18n object for Team\n * Contains model label and all field labels/placeholders\n */\nexport const teamI18n = {\n /** Model display name */\n label: {\"en\":\"Team\"},\n /** Field labels and placeholders */\n fields: {\n console_team_id: {\n label: {\"en\":\"Console Team ID\"},\n },\n console_org_id: {\n label: {\"en\":\"Console Organization ID\"},\n },\n name: {\n label: {\"en\":\"Team Name\"},\n },\n },\n} as const;\n\n// ============================================================================\n// Zod Schemas\n// ============================================================================\n\n/** Field schemas for Team */\nexport const baseTeamSchemas = {\n console_team_id: z.number().int(),\n console_org_id: z.number().int(),\n name: z.string().min(1).max(100),\n} as const;\n\n/** Create schema for Team (POST requests) */\nexport const baseTeamCreateSchema = z.object({\n console_team_id: baseTeamSchemas.console_team_id,\n console_org_id: baseTeamSchemas.console_org_id,\n name: baseTeamSchemas.name,\n});\n\n/** Update schema for Team (PUT/PATCH requests) */\nexport const baseTeamUpdateSchema = baseTeamCreateSchema.partial();\n\n// ============================================================================\n// Inferred Types\n// ============================================================================\n\nexport type BaseTeamCreate = z.infer<typeof baseTeamCreateSchema>;\nexport type BaseTeamUpdate = z.infer<typeof baseTeamUpdateSchema>;\n\n// ============================================================================\n// I18n Helper Functions\n// ============================================================================\n\n/** Get model label for a specific locale */\nexport function getTeamLabel(locale: string): string {\n return teamI18n.label[locale as keyof typeof teamI18n.label] ?? teamI18n.label['en'] ?? 'Team';\n}\n\n/** Get field label for a specific locale */\nexport function getTeamFieldLabel(field: string, locale: string): string {\n const fieldI18n = teamI18n.fields[field as keyof typeof teamI18n.fields];\n if (!fieldI18n) return field;\n return fieldI18n.label[locale as keyof typeof fieldI18n.label] ?? fieldI18n.label['en'] ?? field;\n}\n\n/** Get field placeholder for a specific locale */\nexport function getTeamFieldPlaceholder(field: string, locale: string): string {\n const fieldI18n = teamI18n.fields[field as keyof typeof teamI18n.fields];\n if (!fieldI18n || !('placeholder' in fieldI18n)) return '';\n const placeholder = fieldI18n.placeholder as Record<string, string>;\n return placeholder[locale] ?? placeholder['en'] ?? '';\n}\n","/**\n * Team Model\n *\n * This file extends the auto-generated base interface.\n * You can add custom methods, computed properties, or override types/schemas here.\n * This file will NOT be overwritten by the generator.\n */\n\nimport { z } from 'zod';\nimport type { Team as TeamBase } from './base/Team';\nimport {\n baseTeamSchemas,\n baseTeamCreateSchema,\n baseTeamUpdateSchema,\n teamI18n,\n getTeamLabel,\n getTeamFieldLabel,\n getTeamFieldPlaceholder,\n} from './base/Team';\n\n// ============================================================================\n// Types (extend or re-export)\n// ============================================================================\n\nexport interface Team extends TeamBase {\n // Add custom properties here\n}\n\n// ============================================================================\n// Schemas (extend or re-export)\n// ============================================================================\n\nexport const teamSchemas = { ...baseTeamSchemas };\nexport const teamCreateSchema = baseTeamCreateSchema;\nexport const teamUpdateSchema = baseTeamUpdateSchema;\n\n// ============================================================================\n// Types\n// ============================================================================\n\nexport type TeamCreate = z.infer<typeof teamCreateSchema>;\nexport type TeamUpdate = z.infer<typeof teamUpdateSchema>;\n\n// Re-export i18n and helpers\nexport {\n teamI18n,\n getTeamLabel,\n getTeamFieldLabel,\n getTeamFieldPlaceholder,\n};\n\n// Re-export base type for internal use\nexport type { TeamBase };\n","/**\n * ⚠️ DO NOT EDIT THIS FILE! ⚠️\n * このファイルを編集しないでください!\n * KHÔNG ĐƯỢC SỬA FILE NÀY!\n *\n * Auto-generated TypeScript types from Omnify schemas.\n * Any manual changes will be OVERWRITTEN on next generation.\n *\n * To modify: Edit the schema YAML file and run: npx omnify generate\n */\n\nimport { z } from 'zod';\nimport type { DateTimeString } from '../common';\nimport type { Permission } from './Permission';\n\n/**\n * Team Permission\n */\nexport interface TeamPermission {\n /** Primary key */\n id: number;\n /** Console Organization ID */\n console_org_id: number;\n /** Console Team ID */\n console_team_id: number;\n /** Permission */\n permission: Permission;\n /** Creation timestamp */\n created_at?: DateTimeString;\n /** Last update timestamp */\n updated_at?: DateTimeString;\n /** Soft delete timestamp */\n deleted_at?: DateTimeString;\n}\n\n// ============================================================================\n// I18n (Internationalization)\n// ============================================================================\n\n/**\n * Unified i18n object for TeamPermission\n * Contains model label and all field labels/placeholders\n */\nexport const teamPermissionI18n = {\n /** Model display name */\n label: {\"en\":\"Team Permission\"},\n /** Field labels and placeholders */\n fields: {\n console_org_id: {\n label: {\"en\":\"Console Organization ID\"},\n },\n console_team_id: {\n label: {\"en\":\"Console Team ID\"},\n },\n permission: {\n label: {\"en\":\"Permission\"},\n },\n },\n} as const;\n\n// ============================================================================\n// Zod Schemas\n// ============================================================================\n\n/** Field schemas for TeamPermission */\nexport const baseTeamPermissionSchemas = {\n console_org_id: z.number().int(),\n console_team_id: z.number().int(),\n} as const;\n\n/** Create schema for TeamPermission (POST requests) */\nexport const baseTeamPermissionCreateSchema = z.object({\n console_org_id: baseTeamPermissionSchemas.console_org_id,\n console_team_id: baseTeamPermissionSchemas.console_team_id,\n});\n\n/** Update schema for TeamPermission (PUT/PATCH requests) */\nexport const baseTeamPermissionUpdateSchema = baseTeamPermissionCreateSchema.partial();\n\n// ============================================================================\n// Inferred Types\n// ============================================================================\n\nexport type BaseTeamPermissionCreate = z.infer<typeof baseTeamPermissionCreateSchema>;\nexport type BaseTeamPermissionUpdate = z.infer<typeof baseTeamPermissionUpdateSchema>;\n\n// ============================================================================\n// I18n Helper Functions\n// ============================================================================\n\n/** Get model label for a specific locale */\nexport function getTeamPermissionLabel(locale: string): string {\n return teamPermissionI18n.label[locale as keyof typeof teamPermissionI18n.label] ?? teamPermissionI18n.label['en'] ?? 'TeamPermission';\n}\n\n/** Get field label for a specific locale */\nexport function getTeamPermissionFieldLabel(field: string, locale: string): string {\n const fieldI18n = teamPermissionI18n.fields[field as keyof typeof teamPermissionI18n.fields];\n if (!fieldI18n) return field;\n return fieldI18n.label[locale as keyof typeof fieldI18n.label] ?? fieldI18n.label['en'] ?? field;\n}\n\n/** Get field placeholder for a specific locale */\nexport function getTeamPermissionFieldPlaceholder(field: string, locale: string): string {\n const fieldI18n = teamPermissionI18n.fields[field as keyof typeof teamPermissionI18n.fields];\n if (!fieldI18n || !('placeholder' in fieldI18n)) return '';\n const placeholder = fieldI18n.placeholder as Record<string, string>;\n return placeholder[locale] ?? placeholder['en'] ?? '';\n}\n","/**\n * TeamPermission Model\n *\n * This file extends the auto-generated base interface.\n * You can add custom methods, computed properties, or override types/schemas here.\n * This file will NOT be overwritten by the generator.\n */\n\nimport { z } from 'zod';\nimport type { TeamPermission as TeamPermissionBase } from './base/TeamPermission';\nimport {\n baseTeamPermissionSchemas,\n baseTeamPermissionCreateSchema,\n baseTeamPermissionUpdateSchema,\n teamPermissionI18n,\n getTeamPermissionLabel,\n getTeamPermissionFieldLabel,\n getTeamPermissionFieldPlaceholder,\n} from './base/TeamPermission';\n\n// ============================================================================\n// Types (extend or re-export)\n// ============================================================================\n\nexport interface TeamPermission extends TeamPermissionBase {\n // Add custom properties here\n}\n\n// ============================================================================\n// Schemas (extend or re-export)\n// ============================================================================\n\nexport const teamPermissionSchemas = { ...baseTeamPermissionSchemas };\nexport const teamPermissionCreateSchema = baseTeamPermissionCreateSchema;\nexport const teamPermissionUpdateSchema = baseTeamPermissionUpdateSchema;\n\n// ============================================================================\n// Types\n// ============================================================================\n\nexport type TeamPermissionCreate = z.infer<typeof teamPermissionCreateSchema>;\nexport type TeamPermissionUpdate = z.infer<typeof teamPermissionUpdateSchema>;\n\n// Re-export i18n and helpers\nexport {\n teamPermissionI18n,\n getTeamPermissionLabel,\n getTeamPermissionFieldLabel,\n getTeamPermissionFieldPlaceholder,\n};\n\n// Re-export base type for internal use\nexport type { TeamPermissionBase };\n"],"mappings":"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","names":["z","z","z","z","z"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@famgia/omnify-react",
3
- "version": "0.0.1",
3
+ "version": "0.0.2",
4
4
  "description": "React runtime components, hooks, and utilities for Omnify schemas",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
@@ -46,6 +46,26 @@
46
46
  "types": "./dist/lib/index.d.cts",
47
47
  "default": "./dist/lib/index.cjs"
48
48
  }
49
+ },
50
+ "./schemas": {
51
+ "import": {
52
+ "types": "./dist/schemas/index.d.ts",
53
+ "default": "./dist/schemas/index.js"
54
+ },
55
+ "require": {
56
+ "types": "./dist/schemas/index.d.cts",
57
+ "default": "./dist/schemas/index.cjs"
58
+ }
59
+ },
60
+ "./schemas/*": {
61
+ "import": {
62
+ "types": "./dist/schemas/*.d.ts",
63
+ "default": "./dist/schemas/*.js"
64
+ },
65
+ "require": {
66
+ "types": "./dist/schemas/*.d.cts",
67
+ "default": "./dist/schemas/*.cjs"
68
+ }
49
69
  }
50
70
  },
51
71
  "files": [
@@ -53,6 +73,16 @@
53
73
  "scripts",
54
74
  "README.md"
55
75
  ],
76
+ "scripts": {
77
+ "build:schemas": "tsx scripts/build-schemas.ts",
78
+ "build:lib": "tsup",
79
+ "build": "pnpm build:schemas && pnpm build:lib",
80
+ "clean": "rm -rf dist src/schemas",
81
+ "typecheck": "tsc --noEmit",
82
+ "test": "vitest run",
83
+ "test:watch": "vitest",
84
+ "postinstall": "node scripts/postinstall.cjs"
85
+ },
56
86
  "keywords": [
57
87
  "omnify",
58
88
  "react",
@@ -89,22 +119,17 @@
89
119
  },
90
120
  "devDependencies": {
91
121
  "@ant-design/icons": "^6.0.0",
122
+ "@famgia/omnify-core": "workspace:*",
123
+ "@famgia/omnify-typescript": "workspace:*",
92
124
  "@types/react": "^19.0.0",
93
125
  "@types/react-dom": "^19.0.0",
94
126
  "antd": "^6.1.4",
95
127
  "react": "^19.0.0",
96
128
  "react-dom": "^19.0.0",
97
129
  "tsup": "^8.5.1",
130
+ "tsx": "^4.21.0",
98
131
  "typescript": "^5.8.3",
99
132
  "vitest": "^3.2.4",
100
133
  "zod": "^4.3.5"
101
- },
102
- "scripts": {
103
- "build": "tsup",
104
- "clean": "rm -rf dist",
105
- "typecheck": "tsc --noEmit",
106
- "test": "vitest run",
107
- "test:watch": "vitest",
108
- "postinstall": "node scripts/postinstall.cjs"
109
134
  }
110
- }
135
+ }