@proofkit/cli 2.0.0-beta.21 → 2.0.0-beta.23

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.
Files changed (114) hide show
  1. package/CHANGELOG.md +46 -0
  2. package/dist/add-DrcID6d6.js +57 -0
  3. package/dist/add-DrcID6d6.js.map +1 -0
  4. package/dist/addPackageDependency-BGZl7xc5.js +4 -0
  5. package/dist/addPackageDependency-BGZl7xc5.js.map +1 -0
  6. package/dist/consts-BZnOMxpW.js +10 -0
  7. package/dist/consts-BZnOMxpW.js.map +1 -0
  8. package/dist/deploy-D25sPO7K.js +34 -0
  9. package/dist/deploy-D25sPO7K.js.map +1 -0
  10. package/dist/fmdapi-BO4QL0F8.js +2 -0
  11. package/dist/fmdapi-BO4QL0F8.js.map +1 -0
  12. package/dist/fmdapi-DyRYZWzI.js +3 -0
  13. package/dist/fmdapi-DyRYZWzI.js.map +1 -0
  14. package/dist/getUserPkgManager-Cph_6l1P.js +2 -0
  15. package/dist/getUserPkgManager-Cph_6l1P.js.map +1 -0
  16. package/dist/globalOptions-CkqEi9uC.js +2 -0
  17. package/dist/globalOptions-CkqEi9uC.js.map +1 -0
  18. package/dist/index-DALPpGd1.d.ts +366 -0
  19. package/dist/index-DALPpGd1.d.ts.map +1 -0
  20. package/dist/index.js +10 -157
  21. package/dist/index.js.map +1 -1
  22. package/dist/logger-DCEXcH26.js +2 -0
  23. package/dist/logger-DCEXcH26.js.map +1 -0
  24. package/dist/parseSettings-DJ2m9sgJ.js +2 -0
  25. package/dist/parseSettings-DJ2m9sgJ.js.map +1 -0
  26. package/dist/proofkit-webviewer-73IB1OBU.js +2 -0
  27. package/dist/proofkit-webviewer-73IB1OBU.js.map +1 -0
  28. package/dist/remove-BOCU6In3.js +2 -0
  29. package/dist/remove-BOCU6In3.js.map +1 -0
  30. package/dist/state-BVEcvFT3.js +41 -0
  31. package/dist/state-BVEcvFT3.js.map +1 -0
  32. package/dist/typegen-DyXaif5O.js +2 -0
  33. package/dist/typegen-DyXaif5O.js.map +1 -0
  34. package/dist/update-FX71y5b3.js +7 -0
  35. package/dist/update-FX71y5b3.js.map +1 -0
  36. package/dist/utils-DymV7zmv.js +3 -0
  37. package/dist/utils-DymV7zmv.js.map +1 -0
  38. package/package.json +18 -8
  39. package/template/fm-addon/ProofKitWV/de.xml +517 -20
  40. package/template/fm-addon/ProofKitWV/en.xml +517 -20
  41. package/template/fm-addon/ProofKitWV/es.xml +517 -20
  42. package/template/fm-addon/ProofKitWV/fr.xml +517 -20
  43. package/template/fm-addon/ProofKitWV/icon.png +0 -0
  44. package/template/fm-addon/ProofKitWV/icon@2x.png +0 -0
  45. package/template/fm-addon/ProofKitWV/info.json +9 -6
  46. package/template/fm-addon/ProofKitWV/info_de.json +12 -5
  47. package/template/fm-addon/ProofKitWV/info_en.json +16 -5
  48. package/template/fm-addon/ProofKitWV/info_es.json +12 -5
  49. package/template/fm-addon/ProofKitWV/info_fr.json +12 -5
  50. package/template/fm-addon/ProofKitWV/info_it.json +12 -5
  51. package/template/fm-addon/ProofKitWV/info_ja.json +12 -5
  52. package/template/fm-addon/ProofKitWV/info_ko.json +12 -5
  53. package/template/fm-addon/ProofKitWV/info_nl.json +12 -5
  54. package/template/fm-addon/ProofKitWV/info_pt.json +12 -5
  55. package/template/fm-addon/ProofKitWV/info_sv.json +12 -5
  56. package/template/fm-addon/ProofKitWV/info_zh.json +12 -5
  57. package/template/fm-addon/ProofKitWV/it.xml +517 -20
  58. package/template/fm-addon/ProofKitWV/ja.xml +517 -20
  59. package/template/fm-addon/ProofKitWV/ko.xml +517 -20
  60. package/template/fm-addon/ProofKitWV/nl.xml +517 -20
  61. package/template/fm-addon/ProofKitWV/preview.png +0 -0
  62. package/template/fm-addon/ProofKitWV/pt.xml +517 -20
  63. package/template/fm-addon/ProofKitWV/records_de.xml +0 -0
  64. package/template/fm-addon/ProofKitWV/records_en.xml +0 -0
  65. package/template/fm-addon/ProofKitWV/records_es.xml +0 -0
  66. package/template/fm-addon/ProofKitWV/records_fr.xml +0 -0
  67. package/template/fm-addon/ProofKitWV/records_it.xml +0 -0
  68. package/template/fm-addon/ProofKitWV/records_ja.xml +0 -0
  69. package/template/fm-addon/ProofKitWV/records_ko.xml +0 -0
  70. package/template/fm-addon/ProofKitWV/records_nl.xml +0 -0
  71. package/template/fm-addon/ProofKitWV/records_pt.xml +0 -0
  72. package/template/fm-addon/ProofKitWV/records_sv.xml +0 -0
  73. package/template/fm-addon/ProofKitWV/records_zh.xml +0 -0
  74. package/template/fm-addon/ProofKitWV/sv.xml +517 -20
  75. package/template/fm-addon/ProofKitWV/template.xml +0 -0
  76. package/template/fm-addon/ProofKitWV/zh.xml +517 -20
  77. package/template/nextjs-mantine/AGENTS.md +1 -0
  78. package/template/nextjs-mantine/package.json +2 -3
  79. package/template/nextjs-shadcn/AGENTS.md +1 -0
  80. package/template/nextjs-shadcn/package.json +3 -4
  81. package/template/vite-wv/.claude/launch.json +18 -0
  82. package/template/vite-wv/AGENTS.md +1 -0
  83. package/template/vite-wv/_gitignore +1 -0
  84. package/template/vite-wv/components.json +6 -6
  85. package/template/vite-wv/index.html +2 -2
  86. package/template/vite-wv/package.json +20 -37
  87. package/template/vite-wv/proofkit-typegen.config.jsonc +18 -0
  88. package/template/vite-wv/proofkit.json +4 -1
  89. package/template/vite-wv/scripts/filemaker.js +96 -0
  90. package/template/vite-wv/scripts/launch-fm.js +19 -0
  91. package/template/vite-wv/scripts/upload.js +17 -14
  92. package/template/vite-wv/src/App.tsx +84 -0
  93. package/template/vite-wv/src/index.css +96 -0
  94. package/template/vite-wv/src/lib/utils.ts +6 -0
  95. package/template/vite-wv/src/main.tsx +14 -35
  96. package/template/vite-wv/src/router.tsx +57 -0
  97. package/template/vite-wv/src/routes/query-demo.tsx +37 -0
  98. package/template/vite-wv/tsconfig.json +3 -1
  99. package/template/vite-wv/vite.config.ts +5 -5
  100. package/dist/index-JtcdNmdz.d.ts +0 -1
  101. package/template/vite-wv/pnpm-lock.yaml +0 -2294
  102. package/template/vite-wv/postcss.config.cjs +0 -15
  103. package/template/vite-wv/scripts/launch-fm.sh +0 -3
  104. package/template/vite-wv/src/components/AppLogo.tsx +0 -5
  105. package/template/vite-wv/src/components/full-screen-loader.tsx +0 -9
  106. package/template/vite-wv/src/config/env.ts +0 -16
  107. package/template/vite-wv/src/config/theme/globals.css +0 -125
  108. package/template/vite-wv/src/config/theme/mantine-theme.ts +0 -22
  109. package/template/vite-wv/src/routeTree.gen.ts +0 -111
  110. package/template/vite-wv/src/routes/__root.tsx +0 -21
  111. package/template/vite-wv/src/routes/index.tsx +0 -51
  112. package/template/vite-wv/src/routes/secondary.tsx +0 -26
  113. package/template/vite-wv/src/utils/notification-helpers.ts +0 -32
  114. package/template/vite-wv/src/utils/styles.ts +0 -6
@@ -0,0 +1,366 @@
1
+ import * as _effect_cli_ValidationError0 from "@effect/cli/ValidationError";
2
+ import { Context, Effect } from "effect";
3
+ import * as _effect_cli_CliApp0 from "@effect/cli/CliApp";
4
+
5
+ //#region src/utils/packageManager.d.ts
6
+ type PackageManager = "npm" | "pnpm" | "yarn" | "bun";
7
+ //#endregion
8
+ //#region src/core/types.d.ts
9
+ type AppType = "browser" | "webviewer";
10
+ type UIType = "shadcn" | "mantine";
11
+ type DataSourceType = "filemaker" | "none";
12
+ type OverwriteMode = "overwrite" | "clear";
13
+ interface CliFlags {
14
+ noGit: boolean;
15
+ noInstall: boolean;
16
+ force: boolean;
17
+ default: boolean;
18
+ importAlias: string;
19
+ debug?: boolean;
20
+ server?: string;
21
+ adminApiKey?: string;
22
+ fileName?: string;
23
+ layoutName?: string;
24
+ schemaName?: string;
25
+ dataApiKey?: string;
26
+ auth?: "none";
27
+ dataSource?: DataSourceType;
28
+ ui?: UIType;
29
+ CI: boolean;
30
+ nonInteractive?: boolean;
31
+ appType?: AppType;
32
+ }
33
+ interface FileMakerEnvNames {
34
+ database: string;
35
+ server: string;
36
+ apiKey: string;
37
+ }
38
+ interface HostedFileMakerInputs {
39
+ mode: "hosted-otto";
40
+ dataSourceName: string;
41
+ envNames: FileMakerEnvNames;
42
+ server: string;
43
+ fileName: string;
44
+ dataApiKey: string;
45
+ layoutName?: string;
46
+ schemaName?: string;
47
+ adminApiKey?: string;
48
+ fmsVersion?: string;
49
+ ottoVersion?: string | null;
50
+ }
51
+ interface LocalFmMcpInputs {
52
+ mode: "local-fm-mcp";
53
+ dataSourceName: string;
54
+ envNames: FileMakerEnvNames;
55
+ fmMcpBaseUrl: string;
56
+ fileName: string;
57
+ layoutName?: string;
58
+ schemaName?: string;
59
+ }
60
+ type FileMakerInputs = HostedFileMakerInputs | LocalFmMcpInputs;
61
+ interface InitRequest {
62
+ projectName: string;
63
+ scopedAppName: string;
64
+ appDir: string;
65
+ appType: AppType;
66
+ ui: UIType;
67
+ dataSource: DataSourceType;
68
+ packageManager: PackageManager;
69
+ noInstall: boolean;
70
+ noGit: boolean;
71
+ force: boolean;
72
+ cwd: string;
73
+ importAlias: string;
74
+ nonInteractive: boolean;
75
+ debug: boolean;
76
+ skipFileMakerSetup: boolean;
77
+ fileMaker?: FileMakerInputs;
78
+ hasExplicitFileMakerInputs: boolean;
79
+ }
80
+ interface ProofKitSettings {
81
+ ui: UIType;
82
+ appType: AppType;
83
+ envFile?: string;
84
+ dataSources: Array<{
85
+ type: "fm";
86
+ name: string;
87
+ envNames: {
88
+ database: string;
89
+ server: string;
90
+ apiKey: string;
91
+ };
92
+ }>;
93
+ replacedMainPage: boolean;
94
+ registryTemplates: string[];
95
+ }
96
+ interface InitPlan {
97
+ request: InitRequest;
98
+ targetDir: string;
99
+ templateDir: string;
100
+ overwriteMode?: OverwriteMode;
101
+ packageManagerCommand: string;
102
+ packageJson: {
103
+ name: string;
104
+ packageManager?: string;
105
+ proofkitMetadata: {
106
+ initVersion: string;
107
+ scaffoldPackage: "@proofkit/cli";
108
+ };
109
+ dependencies: Record<string, string>;
110
+ devDependencies: Record<string, string>;
111
+ };
112
+ settings: ProofKitSettings;
113
+ envFile: {
114
+ path: string;
115
+ content: string;
116
+ };
117
+ writes: Array<{
118
+ path: string;
119
+ content: string;
120
+ }>;
121
+ commands: Array<{
122
+ type: "install";
123
+ } | {
124
+ type: "codegen";
125
+ } | {
126
+ type: "git-init";
127
+ }>;
128
+ tasks: {
129
+ bootstrapFileMaker: boolean;
130
+ checkWebViewerAddon: boolean;
131
+ runInstall: boolean;
132
+ runInitialCodegen: boolean;
133
+ initializeGit: boolean;
134
+ };
135
+ nextSteps: string[];
136
+ }
137
+ //#endregion
138
+ //#region src/core/context.d.ts
139
+ interface CliContextValue {
140
+ cwd: string;
141
+ debug: boolean;
142
+ nonInteractive: boolean;
143
+ packageManager: PackageManager;
144
+ resolvedProjectConfig?: {
145
+ appType?: AppType;
146
+ ui?: UIType;
147
+ projectDir?: string;
148
+ };
149
+ }
150
+ interface PromptService {
151
+ readonly text: (options: {
152
+ message: string;
153
+ defaultValue?: string;
154
+ validate?: (value: string) => string | undefined;
155
+ }) => Promise<string>;
156
+ readonly password: (options: {
157
+ message: string;
158
+ validate?: (value: string) => string | undefined;
159
+ }) => Promise<string>;
160
+ readonly select: <T extends string>(options: {
161
+ message: string;
162
+ options: Array<{
163
+ value: T;
164
+ label: string;
165
+ hint?: string;
166
+ disabled?: boolean | string;
167
+ }>;
168
+ }) => Promise<T>;
169
+ readonly searchSelect: <T extends string>(options: {
170
+ message: string;
171
+ emptyMessage?: string;
172
+ options: Array<{
173
+ value: T;
174
+ label: string;
175
+ hint?: string;
176
+ keywords?: string[];
177
+ disabled?: boolean | string;
178
+ }>;
179
+ }) => Promise<T>;
180
+ readonly multiSearchSelect: <T extends string>(options: {
181
+ message: string;
182
+ options: Array<{
183
+ value: T;
184
+ label: string;
185
+ hint?: string;
186
+ keywords?: string[];
187
+ disabled?: boolean | string;
188
+ }>;
189
+ required?: boolean;
190
+ }) => Promise<T[]>;
191
+ readonly confirm: (options: {
192
+ message: string;
193
+ initialValue?: boolean;
194
+ }) => Promise<boolean>;
195
+ }
196
+ declare const PromptService: Context.Tag<PromptService, PromptService>;
197
+ interface ConsoleService {
198
+ readonly info: (message: string) => void;
199
+ readonly warn: (message: string) => void;
200
+ readonly error: (message: string) => void;
201
+ readonly success: (message: string) => void;
202
+ readonly note: (message: string, title?: string) => void;
203
+ }
204
+ declare const ConsoleService: Context.Tag<ConsoleService, ConsoleService>;
205
+ interface FileSystemService {
206
+ readonly exists: (path: string) => Promise<boolean>;
207
+ readonly readdir: (path: string) => Promise<string[]>;
208
+ readonly emptyDir: (path: string) => Promise<void>;
209
+ readonly copyDir: (from: string, to: string, options?: {
210
+ overwrite?: boolean;
211
+ }) => Promise<void>;
212
+ readonly rename: (from: string, to: string) => Promise<void>;
213
+ readonly remove: (path: string) => Promise<void>;
214
+ readonly readJson: <T>(path: string) => Promise<T>;
215
+ readonly writeJson: (path: string, value: unknown) => Promise<void>;
216
+ readonly writeFile: (path: string, content: string) => Promise<void>;
217
+ readonly readFile: (path: string) => Promise<string>;
218
+ }
219
+ declare const FileSystemService: Context.Tag<FileSystemService, FileSystemService>;
220
+ interface TemplateService {
221
+ readonly getTemplateDir: (appType: AppType, ui: UIType) => string;
222
+ }
223
+ declare const TemplateService: Context.Tag<TemplateService, TemplateService>;
224
+ interface PackageManagerService {
225
+ readonly getVersion: (packageManager: PackageManager, cwd: string) => Promise<string | undefined>;
226
+ }
227
+ declare const PackageManagerService: Context.Tag<PackageManagerService, PackageManagerService>;
228
+ interface ProcessService {
229
+ readonly run: (command: string, args: string[], options: {
230
+ cwd: string;
231
+ stdout?: "pipe" | "inherit" | "ignore";
232
+ stderr?: "pipe" | "inherit" | "ignore";
233
+ }) => Promise<{
234
+ stdout: string;
235
+ stderr: string;
236
+ }>;
237
+ }
238
+ declare const ProcessService: Context.Tag<ProcessService, ProcessService>;
239
+ interface GitService {
240
+ readonly initialize: (projectDir: string) => Promise<void>;
241
+ }
242
+ declare const GitService: Context.Tag<GitService, GitService>;
243
+ interface SettingsService {
244
+ readonly writeSettings: (projectDir: string, settings: ProofKitSettings) => Promise<void>;
245
+ readonly appendEnvVars: (projectDir: string, vars: Record<string, string>) => Promise<void>;
246
+ readonly ensureTypegenConfig: (projectDir: string, options: {
247
+ appType: AppType;
248
+ fileMaker?: FileMakerInputs;
249
+ }) => Promise<void>;
250
+ }
251
+ declare const SettingsService: Context.Tag<SettingsService, SettingsService>;
252
+ interface FmMcpStatus {
253
+ baseUrl: string;
254
+ healthy: boolean;
255
+ connectedFiles: string[];
256
+ }
257
+ interface FileMakerServerVersions {
258
+ fmsVersion: string;
259
+ ottoVersion: string | null;
260
+ }
261
+ interface OttoFileInfo {
262
+ filename: string;
263
+ status: string;
264
+ }
265
+ interface OttoApiKeyInfo {
266
+ key: string;
267
+ user: string;
268
+ database: string;
269
+ label: string;
270
+ }
271
+ interface FileMakerBootstrapArtifacts {
272
+ settings: ProofKitSettings;
273
+ envVars: Record<string, string>;
274
+ envSchemaEntries: Array<{
275
+ name: string;
276
+ zodSchema: string;
277
+ defaultValue: string;
278
+ }>;
279
+ typegenConfig: {
280
+ mode: FileMakerInputs["mode"];
281
+ dataSourceName: string;
282
+ envNames?: FileMakerEnvNames;
283
+ fmMcpBaseUrl?: string;
284
+ connectedFileName?: string;
285
+ layoutName?: string;
286
+ schemaName?: string;
287
+ appType: AppType;
288
+ };
289
+ }
290
+ interface FileMakerService {
291
+ readonly detectLocalFmMcp: (baseUrl?: string) => Promise<FmMcpStatus>;
292
+ readonly validateHostedServerUrl: (serverUrl: string, ottoPort?: number | null) => Promise<{
293
+ normalizedUrl: string;
294
+ versions: FileMakerServerVersions;
295
+ }>;
296
+ readonly getOttoFMSToken: (options: {
297
+ url: URL;
298
+ }) => Promise<{
299
+ token: string;
300
+ }>;
301
+ readonly listFiles: (options: {
302
+ url: URL;
303
+ token: string;
304
+ }) => Promise<OttoFileInfo[]>;
305
+ readonly listAPIKeys: (options: {
306
+ url: URL;
307
+ token: string;
308
+ }) => Promise<OttoApiKeyInfo[]>;
309
+ readonly createDataAPIKeyWithCredentials: (options: {
310
+ url: URL;
311
+ filename: string;
312
+ username: string;
313
+ password: string;
314
+ }) => Promise<{
315
+ apiKey: string;
316
+ }>;
317
+ readonly deployDemoFile: (options: {
318
+ url: URL;
319
+ token: string;
320
+ operation: "install" | "replace";
321
+ }) => Promise<{
322
+ apiKey: string;
323
+ filename: string;
324
+ }>;
325
+ readonly listLayouts: (options: {
326
+ dataApiKey: string;
327
+ fmFile: string;
328
+ server: string;
329
+ }) => Promise<string[]>;
330
+ readonly createFileMakerBootstrapArtifacts: (settings: ProofKitSettings, inputs: FileMakerInputs, appType: AppType) => Promise<FileMakerBootstrapArtifacts>;
331
+ readonly bootstrap: (projectDir: string, settings: ProofKitSettings, inputs: FileMakerInputs, appType: AppType) => Promise<ProofKitSettings>;
332
+ }
333
+ declare const FileMakerService: Context.Tag<FileMakerService, FileMakerService>;
334
+ interface CodegenService {
335
+ readonly runInitial: (projectDir: string, packageManager: PackageManager) => Promise<void>;
336
+ }
337
+ declare const CodegenService: Context.Tag<CodegenService, CodegenService>;
338
+ //#endregion
339
+ //#region src/index.d.ts
340
+ declare const runInit: (name?: string, rawFlags?: Partial<CliFlags>) => Effect.Effect<{
341
+ request: {
342
+ projectName: string;
343
+ scopedAppName: string;
344
+ appDir: string;
345
+ appType: AppType;
346
+ ui: UIType;
347
+ dataSource: DataSourceType;
348
+ packageManager: PackageManager;
349
+ noInstall: boolean;
350
+ noGit: boolean;
351
+ force: boolean;
352
+ cwd: string;
353
+ importAlias: string;
354
+ nonInteractive: boolean;
355
+ debug: boolean;
356
+ fileMaker: FileMakerInputs | undefined;
357
+ skipFileMakerSetup: boolean;
358
+ hasExplicitFileMakerInputs: boolean;
359
+ };
360
+ plan: InitPlan;
361
+ }, Error, PromptService | CliContextValue | FileMakerService | TemplateService | PackageManagerService | FileSystemService | ConsoleService | SettingsService | ProcessService | GitService | CodegenService>;
362
+ declare const runDefaultCommand: (rawFlags?: Partial<CliFlags>) => Effect.Effect<void, Error, PromptService | CliContextValue | FileMakerService | TemplateService | PackageManagerService | FileSystemService | ConsoleService | SettingsService | ProcessService | GitService | CodegenService>;
363
+ declare const cli: (args: ReadonlyArray<string>) => Effect.Effect<void, Error | _effect_cli_ValidationError0.ValidationError, _effect_cli_CliApp0.CliApp.Environment>;
364
+ //#endregion
365
+ export { cli, runDefaultCommand, runInit };
366
+ //# sourceMappingURL=index-DALPpGd1.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-DALPpGd1.d.ts","names":[],"sources":["../packages/cli/src/utils/packageManager.ts","../packages/cli/src/core/types.ts","../packages/cli/src/core/context.ts","../packages/cli/src/index.ts"],"sourcesContent":[],"mappings":"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"}