@makeco/stripe-kit 0.1.0
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/LICENSE.md +21 -0
- package/README.md +201 -0
- package/dist/cli-prompts/action.d.ts +5 -0
- package/dist/cli-prompts/action.d.ts.map +1 -0
- package/dist/cli-prompts/action.js +36 -0
- package/dist/cli-prompts/action.js.map +1 -0
- package/dist/cli-prompts/adapter.d.ts +9 -0
- package/dist/cli-prompts/adapter.d.ts.map +1 -0
- package/dist/cli-prompts/adapter.js +53 -0
- package/dist/cli-prompts/adapter.js.map +1 -0
- package/dist/cli-prompts/confirmation.d.ts +6 -0
- package/dist/cli-prompts/confirmation.d.ts.map +1 -0
- package/dist/cli-prompts/confirmation.js +27 -0
- package/dist/cli-prompts/confirmation.js.map +1 -0
- package/dist/cli-prompts/environment.d.ts +5 -0
- package/dist/cli-prompts/environment.d.ts.map +1 -0
- package/dist/cli-prompts/environment.js +43 -0
- package/dist/cli-prompts/environment.js.map +1 -0
- package/dist/cli-prompts/index.d.ts +5 -0
- package/dist/cli-prompts/index.d.ts.map +1 -0
- package/dist/cli-prompts/index.js +5 -0
- package/dist/cli-prompts/index.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +33 -0
- package/dist/cli.js.map +1 -0
- package/dist/commands/archive/archive.action.d.ts +5 -0
- package/dist/commands/archive/archive.action.d.ts.map +1 -0
- package/dist/commands/archive/archive.action.js +73 -0
- package/dist/commands/archive/archive.action.js.map +1 -0
- package/dist/commands/archive/archive.command.d.ts +3 -0
- package/dist/commands/archive/archive.command.d.ts.map +1 -0
- package/dist/commands/archive/archive.command.js +23 -0
- package/dist/commands/archive/archive.command.js.map +1 -0
- package/dist/commands/archive/archive.preflight.d.ts +13 -0
- package/dist/commands/archive/archive.preflight.d.ts.map +1 -0
- package/dist/commands/archive/archive.preflight.js +27 -0
- package/dist/commands/archive/archive.preflight.js.map +1 -0
- package/dist/commands/archive/index.d.ts +2 -0
- package/dist/commands/archive/index.d.ts.map +1 -0
- package/dist/commands/archive/index.js +2 -0
- package/dist/commands/archive/index.js.map +1 -0
- package/dist/commands/config/config.command.d.ts +3 -0
- package/dist/commands/config/config.command.d.ts.map +1 -0
- package/dist/commands/config/config.command.js +33 -0
- package/dist/commands/config/config.command.js.map +1 -0
- package/dist/commands/config/index.d.ts +2 -0
- package/dist/commands/config/index.d.ts.map +1 -0
- package/dist/commands/config/index.js +2 -0
- package/dist/commands/config/index.js.map +1 -0
- package/dist/commands/create/create.action.d.ts +5 -0
- package/dist/commands/create/create.action.d.ts.map +1 -0
- package/dist/commands/create/create.action.js +53 -0
- package/dist/commands/create/create.action.js.map +1 -0
- package/dist/commands/create/create.command.d.ts +3 -0
- package/dist/commands/create/create.command.d.ts.map +1 -0
- package/dist/commands/create/create.command.js +21 -0
- package/dist/commands/create/create.command.js.map +1 -0
- package/dist/commands/create/create.preflight.d.ts +13 -0
- package/dist/commands/create/create.preflight.d.ts.map +1 -0
- package/dist/commands/create/create.preflight.js +24 -0
- package/dist/commands/create/create.preflight.js.map +1 -0
- package/dist/commands/create/index.d.ts +2 -0
- package/dist/commands/create/index.d.ts.map +1 -0
- package/dist/commands/create/index.js +2 -0
- package/dist/commands/create/index.js.map +1 -0
- package/dist/commands/db/db.command.d.ts +3 -0
- package/dist/commands/db/db.command.d.ts.map +1 -0
- package/dist/commands/db/db.command.js +13 -0
- package/dist/commands/db/db.command.js.map +1 -0
- package/dist/commands/db/index.d.ts +4 -0
- package/dist/commands/db/index.d.ts.map +1 -0
- package/dist/commands/db/index.js +4 -0
- package/dist/commands/db/index.js.map +1 -0
- package/dist/commands/db/purge/index.d.ts +2 -0
- package/dist/commands/db/purge/index.d.ts.map +1 -0
- package/dist/commands/db/purge/index.js +2 -0
- package/dist/commands/db/purge/index.js.map +1 -0
- package/dist/commands/db/purge/purge.action.d.ts +3 -0
- package/dist/commands/db/purge/purge.action.d.ts.map +1 -0
- package/dist/commands/db/purge/purge.action.js +17 -0
- package/dist/commands/db/purge/purge.action.js.map +1 -0
- package/dist/commands/db/purge/purge.command.d.ts +3 -0
- package/dist/commands/db/purge/purge.command.d.ts.map +1 -0
- package/dist/commands/db/purge/purge.command.js +22 -0
- package/dist/commands/db/purge/purge.command.js.map +1 -0
- package/dist/commands/db/purge/purge.preflight.d.ts +12 -0
- package/dist/commands/db/purge/purge.preflight.d.ts.map +1 -0
- package/dist/commands/db/purge/purge.preflight.js +27 -0
- package/dist/commands/db/purge/purge.preflight.js.map +1 -0
- package/dist/commands/db/sync/index.d.ts +2 -0
- package/dist/commands/db/sync/index.d.ts.map +1 -0
- package/dist/commands/db/sync/index.js +2 -0
- package/dist/commands/db/sync/index.js.map +1 -0
- package/dist/commands/db/sync/sync.action.d.ts +3 -0
- package/dist/commands/db/sync/sync.action.d.ts.map +1 -0
- package/dist/commands/db/sync/sync.action.js +24 -0
- package/dist/commands/db/sync/sync.action.js.map +1 -0
- package/dist/commands/db/sync/sync.command.d.ts +3 -0
- package/dist/commands/db/sync/sync.command.d.ts.map +1 -0
- package/dist/commands/db/sync/sync.command.js +22 -0
- package/dist/commands/db/sync/sync.command.js.map +1 -0
- package/dist/commands/db/sync/sync.preflight.d.ts +12 -0
- package/dist/commands/db/sync/sync.preflight.d.ts.map +1 -0
- package/dist/commands/db/sync/sync.preflight.js +33 -0
- package/dist/commands/db/sync/sync.preflight.js.map +1 -0
- package/dist/commands/index.d.ts +8 -0
- package/dist/commands/index.d.ts.map +1 -0
- package/dist/commands/index.js +8 -0
- package/dist/commands/index.js.map +1 -0
- package/dist/commands/list/index.d.ts +4 -0
- package/dist/commands/list/index.d.ts.map +1 -0
- package/dist/commands/list/index.js +4 -0
- package/dist/commands/list/index.js.map +1 -0
- package/dist/commands/list/list.command.d.ts +3 -0
- package/dist/commands/list/list.command.d.ts.map +1 -0
- package/dist/commands/list/list.command.js +13 -0
- package/dist/commands/list/list.command.js.map +1 -0
- package/dist/commands/list/prices/index.d.ts +2 -0
- package/dist/commands/list/prices/index.d.ts.map +1 -0
- package/dist/commands/list/prices/index.js +2 -0
- package/dist/commands/list/prices/index.js.map +1 -0
- package/dist/commands/list/prices/prices.action.d.ts +5 -0
- package/dist/commands/list/prices/prices.action.d.ts.map +1 -0
- package/dist/commands/list/prices/prices.action.js +40 -0
- package/dist/commands/list/prices/prices.action.js.map +1 -0
- package/dist/commands/list/prices/prices.command.d.ts +3 -0
- package/dist/commands/list/prices/prices.command.d.ts.map +1 -0
- package/dist/commands/list/prices/prices.command.js +21 -0
- package/dist/commands/list/prices/prices.command.js.map +1 -0
- package/dist/commands/list/prices/prices.preflight.d.ts +13 -0
- package/dist/commands/list/prices/prices.preflight.d.ts.map +1 -0
- package/dist/commands/list/prices/prices.preflight.js +19 -0
- package/dist/commands/list/prices/prices.preflight.js.map +1 -0
- package/dist/commands/list/products/index.d.ts +2 -0
- package/dist/commands/list/products/index.d.ts.map +1 -0
- package/dist/commands/list/products/index.js +2 -0
- package/dist/commands/list/products/index.js.map +1 -0
- package/dist/commands/list/products/products.action.d.ts +5 -0
- package/dist/commands/list/products/products.action.d.ts.map +1 -0
- package/dist/commands/list/products/products.action.js +32 -0
- package/dist/commands/list/products/products.action.js.map +1 -0
- package/dist/commands/list/products/products.command.d.ts +3 -0
- package/dist/commands/list/products/products.command.d.ts.map +1 -0
- package/dist/commands/list/products/products.command.js +21 -0
- package/dist/commands/list/products/products.command.js.map +1 -0
- package/dist/commands/list/products/products.preflight.d.ts +13 -0
- package/dist/commands/list/products/products.preflight.d.ts.map +1 -0
- package/dist/commands/list/products/products.preflight.js +19 -0
- package/dist/commands/list/products/products.preflight.js.map +1 -0
- package/dist/commands/update/index.d.ts +2 -0
- package/dist/commands/update/index.d.ts.map +1 -0
- package/dist/commands/update/index.js +2 -0
- package/dist/commands/update/index.js.map +1 -0
- package/dist/commands/update/update.action.d.ts +3 -0
- package/dist/commands/update/update.action.d.ts.map +1 -0
- package/dist/commands/update/update.action.js +84 -0
- package/dist/commands/update/update.action.js.map +1 -0
- package/dist/commands/update/update.command.d.ts +3 -0
- package/dist/commands/update/update.command.d.ts.map +1 -0
- package/dist/commands/update/update.command.js +21 -0
- package/dist/commands/update/update.command.js.map +1 -0
- package/dist/commands/update/update.preflight.d.ts +12 -0
- package/dist/commands/update/update.preflight.d.ts.map +1 -0
- package/dist/commands/update/update.preflight.js +36 -0
- package/dist/commands/update/update.preflight.js.map +1 -0
- package/dist/commands/urls/index.d.ts +2 -0
- package/dist/commands/urls/index.d.ts.map +1 -0
- package/dist/commands/urls/index.js +2 -0
- package/dist/commands/urls/index.js.map +1 -0
- package/dist/commands/urls/urls.action.d.ts +4 -0
- package/dist/commands/urls/urls.action.d.ts.map +1 -0
- package/dist/commands/urls/urls.action.js +65 -0
- package/dist/commands/urls/urls.action.js.map +1 -0
- package/dist/commands/urls/urls.command.d.ts +6 -0
- package/dist/commands/urls/urls.command.d.ts.map +1 -0
- package/dist/commands/urls/urls.command.js +19 -0
- package/dist/commands/urls/urls.command.js.map +1 -0
- package/dist/definitions/action.constants.d.ts +14 -0
- package/dist/definitions/action.constants.d.ts.map +1 -0
- package/dist/definitions/action.constants.js +22 -0
- package/dist/definitions/action.constants.js.map +1 -0
- package/dist/definitions/config.schemas.d.ts +278 -0
- package/dist/definitions/config.schemas.d.ts.map +1 -0
- package/dist/definitions/config.schemas.js +30 -0
- package/dist/definitions/config.schemas.js.map +1 -0
- package/dist/definitions/context.types.d.ts +18 -0
- package/dist/definitions/context.types.d.ts.map +1 -0
- package/dist/definitions/context.types.js +2 -0
- package/dist/definitions/context.types.js.map +1 -0
- package/dist/definitions/database-adapter.schemas.d.ts +20 -0
- package/dist/definitions/database-adapter.schemas.d.ts.map +1 -0
- package/dist/definitions/database-adapter.schemas.js +18 -0
- package/dist/definitions/database-adapter.schemas.js.map +1 -0
- package/dist/definitions/env.constants.d.ts +9 -0
- package/dist/definitions/env.constants.d.ts.map +1 -0
- package/dist/definitions/env.constants.js +8 -0
- package/dist/definitions/env.constants.js.map +1 -0
- package/dist/definitions/index.d.ts +9 -0
- package/dist/definitions/index.d.ts.map +1 -0
- package/dist/definitions/index.js +9 -0
- package/dist/definitions/index.js.map +1 -0
- package/dist/definitions/stripe-price.schemas.d.ts +132 -0
- package/dist/definitions/stripe-price.schemas.d.ts.map +1 -0
- package/dist/definitions/stripe-price.schemas.js +50 -0
- package/dist/definitions/stripe-price.schemas.js.map +1 -0
- package/dist/definitions/stripe-product.schemas.d.ts +87 -0
- package/dist/definitions/stripe-product.schemas.d.ts.map +1 -0
- package/dist/definitions/stripe-product.schemas.js +42 -0
- package/dist/definitions/stripe-product.schemas.js.map +1 -0
- package/dist/definitions/utility.types.d.ts +4 -0
- package/dist/definitions/utility.types.d.ts.map +1 -0
- package/dist/definitions/utility.types.js +2 -0
- package/dist/definitions/utility.types.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -0
- package/dist/utils/create-context.d.ts +6 -0
- package/dist/utils/create-context.d.ts.map +1 -0
- package/dist/utils/create-context.js +21 -0
- package/dist/utils/create-context.js.map +1 -0
- package/dist/utils/create-logger.d.ts +3 -0
- package/dist/utils/create-logger.d.ts.map +1 -0
- package/dist/utils/create-logger.js +38 -0
- package/dist/utils/create-logger.js.map +1 -0
- package/dist/utils/create-mappers.d.ts +3 -0
- package/dist/utils/create-mappers.d.ts.map +1 -0
- package/dist/utils/create-mappers.js +98 -0
- package/dist/utils/create-mappers.js.map +1 -0
- package/dist/utils/define-config.d.ts +3 -0
- package/dist/utils/define-config.d.ts.map +1 -0
- package/dist/utils/define-config.js +6 -0
- package/dist/utils/define-config.js.map +1 -0
- package/dist/utils/find-env-directories.d.ts +2 -0
- package/dist/utils/find-env-directories.d.ts.map +1 -0
- package/dist/utils/find-env-directories.js +84 -0
- package/dist/utils/find-env-directories.js.map +1 -0
- package/dist/utils/index.d.ts +12 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +12 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/load-config.d.ts +6 -0
- package/dist/utils/load-config.d.ts.map +1 -0
- package/dist/utils/load-config.js +84 -0
- package/dist/utils/load-config.js.map +1 -0
- package/dist/utils/load-env.d.ts +3 -0
- package/dist/utils/load-env.d.ts.map +1 -0
- package/dist/utils/load-env.js +54 -0
- package/dist/utils/load-env.js.map +1 -0
- package/dist/utils/stripe-client.d.ts +3 -0
- package/dist/utils/stripe-client.d.ts.map +1 -0
- package/dist/utils/stripe-client.js +10 -0
- package/dist/utils/stripe-client.js.map +1 -0
- package/dist/utils/stripe-repository.d.ts +16 -0
- package/dist/utils/stripe-repository.d.ts.map +1 -0
- package/dist/utils/stripe-repository.js +73 -0
- package/dist/utils/stripe-repository.js.map +1 -0
- package/dist/utils/user-preferences.d.ts +10 -0
- package/dist/utils/user-preferences.d.ts.map +1 -0
- package/dist/utils/user-preferences.js +40 -0
- package/dist/utils/user-preferences.js.map +1 -0
- package/package.json +84 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"define-config.js","sourceRoot":"","sources":["../../src/utils/define-config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAO7C,MAAM,UAAU,YAAY,CAAC,MAAc;IAEzC,MAAM,eAAe,GAAG,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACnD,OAAO,eAAe,CAAC;AACzB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"find-env-directories.d.ts","sourceRoot":"","sources":["../../src/utils/find-env-directories.ts"],"names":[],"mappings":"AA6GA,wBAAgB,kBAAkB,CAAC,GAAG,GAAE,MAAsB,GAAG,MAAM,EAAE,CAwBxE"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { execSync } from 'node:child_process';
|
|
2
|
+
import fs from 'node:fs';
|
|
3
|
+
import path from 'node:path';
|
|
4
|
+
const WORKSPACE_INDICATORS = [
|
|
5
|
+
'pnpm-workspace.yaml',
|
|
6
|
+
'lerna.json',
|
|
7
|
+
'nx.json',
|
|
8
|
+
'turbo.json',
|
|
9
|
+
'rush.json',
|
|
10
|
+
];
|
|
11
|
+
function hasWorkspaceIndicators(dir) {
|
|
12
|
+
return WORKSPACE_INDICATORS.some((indicator) => fs.existsSync(path.join(dir, indicator)));
|
|
13
|
+
}
|
|
14
|
+
function hasMonorepoStructure(dir) {
|
|
15
|
+
const packageJsonPath = path.join(dir, 'package.json');
|
|
16
|
+
if (!fs.existsSync(packageJsonPath)) {
|
|
17
|
+
return false;
|
|
18
|
+
}
|
|
19
|
+
const commonDirs = ['packages', 'apps'];
|
|
20
|
+
for (const dirName of commonDirs) {
|
|
21
|
+
const dirPath = path.join(dir, dirName);
|
|
22
|
+
if (fs.existsSync(dirPath) &&
|
|
23
|
+
fs.statSync(dirPath).isDirectory() &&
|
|
24
|
+
hasPackageJsonInSubdirs(dirPath)) {
|
|
25
|
+
return true;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
return false;
|
|
29
|
+
}
|
|
30
|
+
function hasPackageJsonInSubdirs(dir) {
|
|
31
|
+
const subdirs = fs.readdirSync(dir);
|
|
32
|
+
return subdirs.some((subdir) => {
|
|
33
|
+
const subdirPath = path.join(dir, subdir);
|
|
34
|
+
const subPackageJson = path.join(subdirPath, 'package.json');
|
|
35
|
+
return fs.existsSync(subPackageJson);
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
function detectWorkspaceRoot(startDir) {
|
|
39
|
+
let currentDir = startDir;
|
|
40
|
+
const maxDepth = 10;
|
|
41
|
+
let depth = 0;
|
|
42
|
+
while (depth < maxDepth) {
|
|
43
|
+
if (hasWorkspaceIndicators(currentDir) ||
|
|
44
|
+
hasMonorepoStructure(currentDir)) {
|
|
45
|
+
return currentDir;
|
|
46
|
+
}
|
|
47
|
+
const parentDir = path.dirname(currentDir);
|
|
48
|
+
if (parentDir === currentDir) {
|
|
49
|
+
break;
|
|
50
|
+
}
|
|
51
|
+
currentDir = parentDir;
|
|
52
|
+
depth++;
|
|
53
|
+
}
|
|
54
|
+
return null;
|
|
55
|
+
}
|
|
56
|
+
function getGitRoot() {
|
|
57
|
+
try {
|
|
58
|
+
const gitRoot = execSync('git rev-parse --show-toplevel', {
|
|
59
|
+
encoding: 'utf8',
|
|
60
|
+
stdio: 'pipe',
|
|
61
|
+
}).trim();
|
|
62
|
+
return gitRoot;
|
|
63
|
+
}
|
|
64
|
+
catch {
|
|
65
|
+
return null;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
export function findEnvDirectories(cwd = process.cwd()) {
|
|
69
|
+
const directories = [];
|
|
70
|
+
directories.push(cwd);
|
|
71
|
+
const workspaceRoot = detectWorkspaceRoot(cwd);
|
|
72
|
+
if (workspaceRoot && workspaceRoot !== cwd) {
|
|
73
|
+
directories.push(workspaceRoot);
|
|
74
|
+
}
|
|
75
|
+
const gitRoot = getGitRoot();
|
|
76
|
+
if (gitRoot &&
|
|
77
|
+
fs.existsSync(gitRoot) &&
|
|
78
|
+
gitRoot !== cwd &&
|
|
79
|
+
gitRoot !== workspaceRoot) {
|
|
80
|
+
directories.push(gitRoot);
|
|
81
|
+
}
|
|
82
|
+
return directories;
|
|
83
|
+
}
|
|
84
|
+
//# sourceMappingURL=find-env-directories.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"find-env-directories.js","sourceRoot":"","sources":["../../src/utils/find-env-directories.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export * from '../definitions/index.js';
|
|
2
|
+
export * from './create-context.js';
|
|
3
|
+
export * from './create-logger.js';
|
|
4
|
+
export * from './create-mappers.js';
|
|
5
|
+
export * from './define-config.js';
|
|
6
|
+
export * from './find-env-directories.js';
|
|
7
|
+
export * from './load-config.js';
|
|
8
|
+
export * from './load-env.js';
|
|
9
|
+
export * from './stripe-client.js';
|
|
10
|
+
export * from './stripe-repository.js';
|
|
11
|
+
export * from './user-preferences.js';
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export * from '../definitions/index.js';
|
|
2
|
+
export * from './create-context.js';
|
|
3
|
+
export * from './create-logger.js';
|
|
4
|
+
export * from './create-mappers.js';
|
|
5
|
+
export * from './define-config.js';
|
|
6
|
+
export * from './find-env-directories.js';
|
|
7
|
+
export * from './load-config.js';
|
|
8
|
+
export * from './load-env.js';
|
|
9
|
+
export * from './stripe-client.js';
|
|
10
|
+
export * from './stripe-repository.js';
|
|
11
|
+
export * from './user-preferences.js';
|
|
12
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"load-config.d.ts","sourceRoot":"","sources":["../../src/utils/load-config.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAiC5C,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,IAAI,CAgBpD;AAKD,wBAAsB,UAAU,CAAC,KAAK,EAAE;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GAAG,OAAO,CAAC,MAAM,CAAC,CA2DlB"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import fs from 'node:fs';
|
|
2
|
+
import { createRequire } from 'node:module';
|
|
3
|
+
import path from 'node:path';
|
|
4
|
+
import { z } from 'zod';
|
|
5
|
+
import { configSchema } from '../definitions/index.js';
|
|
6
|
+
const safeRegister = async () => {
|
|
7
|
+
const { register } = await import('esbuild-register/dist/node');
|
|
8
|
+
let res;
|
|
9
|
+
try {
|
|
10
|
+
res = register({
|
|
11
|
+
format: 'cjs',
|
|
12
|
+
loader: 'ts',
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
catch {
|
|
16
|
+
res = {
|
|
17
|
+
unregister: () => {
|
|
18
|
+
},
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
return res;
|
|
22
|
+
};
|
|
23
|
+
export function discoverStripeConfig() {
|
|
24
|
+
const configPatterns = [
|
|
25
|
+
'stripe.config.ts',
|
|
26
|
+
'stripe.config.js',
|
|
27
|
+
'stripe.config.mjs',
|
|
28
|
+
'stripe.config.cjs',
|
|
29
|
+
];
|
|
30
|
+
const cwd = process.cwd();
|
|
31
|
+
for (const pattern of configPatterns) {
|
|
32
|
+
const configPath = path.join(cwd, pattern);
|
|
33
|
+
if (fs.existsSync(configPath)) {
|
|
34
|
+
return configPath;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return null;
|
|
38
|
+
}
|
|
39
|
+
export async function loadConfig(input) {
|
|
40
|
+
const { configPath } = input;
|
|
41
|
+
let resolvedConfigPath;
|
|
42
|
+
if (configPath) {
|
|
43
|
+
resolvedConfigPath = path.resolve(configPath);
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
const discoveredConfig = discoverStripeConfig();
|
|
47
|
+
if (!discoveredConfig) {
|
|
48
|
+
console.error('❌ Error: No stripe.config.ts file found.');
|
|
49
|
+
console.error('Expected files: stripe.config.ts, stripe.config.js, stripe.config.mjs, or stripe.config.cjs');
|
|
50
|
+
console.error('Or specify a config file with --config flag');
|
|
51
|
+
console.error('');
|
|
52
|
+
console.error('Example stripe.config.ts:');
|
|
53
|
+
console.error(`import { defineConfig } from 'stripe-kit';`);
|
|
54
|
+
console.error('export default defineConfig({');
|
|
55
|
+
console.error(' plans: [...],');
|
|
56
|
+
console.error(' adapters: {...},');
|
|
57
|
+
console.error(' envFiles: {...}');
|
|
58
|
+
console.error('});');
|
|
59
|
+
process.exit(1);
|
|
60
|
+
}
|
|
61
|
+
resolvedConfigPath = discoveredConfig;
|
|
62
|
+
}
|
|
63
|
+
if (!fs.existsSync(resolvedConfigPath)) {
|
|
64
|
+
throw new Error(`Stripe config file not found at: ${resolvedConfigPath}`);
|
|
65
|
+
}
|
|
66
|
+
try {
|
|
67
|
+
const absolutePath = path.resolve(resolvedConfigPath);
|
|
68
|
+
const { unregister } = await safeRegister();
|
|
69
|
+
const require = createRequire(import.meta.url);
|
|
70
|
+
const required = require(absolutePath);
|
|
71
|
+
const config = required.default ?? required;
|
|
72
|
+
unregister();
|
|
73
|
+
const validatedConfig = configSchema.parse(config);
|
|
74
|
+
return validatedConfig;
|
|
75
|
+
}
|
|
76
|
+
catch (error) {
|
|
77
|
+
if (error instanceof z.ZodError) {
|
|
78
|
+
const errorMessages = error.issues.map((err) => `${err.path.join('.')}: ${err.message}`);
|
|
79
|
+
throw new Error(`Invalid stripe config file:\n${errorMessages.join('\n')}`);
|
|
80
|
+
}
|
|
81
|
+
throw new Error(`Failed to load stripe config file: ${error}`);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
//# sourceMappingURL=load-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"load-config.js","sourceRoot":"","sources":["../../src/utils/load-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"load-env.d.ts","sourceRoot":"","sources":["../../src/utils/load-env.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AA8BrD,wBAAgB,eAAe,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI,CA+CzD"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import fs from 'node:fs';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import chalk from 'chalk';
|
|
4
|
+
import dotenv from 'dotenv';
|
|
5
|
+
import { findEnvDirectories } from './find-env-directories.js';
|
|
6
|
+
function getEnvFilePatterns(env) {
|
|
7
|
+
const patterns = {
|
|
8
|
+
dev: [
|
|
9
|
+
'.env.dev.local',
|
|
10
|
+
'.env.development.local',
|
|
11
|
+
'.env.dev',
|
|
12
|
+
'.env.development',
|
|
13
|
+
],
|
|
14
|
+
test: ['.env.test.local', '.env.test'],
|
|
15
|
+
staging: ['.env.staging.local', '.env.staging'],
|
|
16
|
+
prod: [
|
|
17
|
+
'.env.prod.local',
|
|
18
|
+
'.env.production.local',
|
|
19
|
+
'.env.prod',
|
|
20
|
+
'.env.production',
|
|
21
|
+
],
|
|
22
|
+
};
|
|
23
|
+
return patterns[env] || [`.env.${env}.local`, `.env.${env}`];
|
|
24
|
+
}
|
|
25
|
+
export function loadEnvironment(env) {
|
|
26
|
+
const searchDirectories = findEnvDirectories();
|
|
27
|
+
const envPatterns = getEnvFilePatterns(env);
|
|
28
|
+
const loadedFiles = [];
|
|
29
|
+
const searchedDirs = [];
|
|
30
|
+
for (const directory of searchDirectories) {
|
|
31
|
+
searchedDirs.push(path.relative(process.cwd(), directory) || '.');
|
|
32
|
+
for (const pattern of envPatterns) {
|
|
33
|
+
const envPath = path.join(directory, pattern);
|
|
34
|
+
if (fs.existsSync(envPath)) {
|
|
35
|
+
const relativePath = path.relative(process.cwd(), envPath);
|
|
36
|
+
console.log(chalk.blue(`Loading environment from: ${chalk.bold(relativePath)}`));
|
|
37
|
+
dotenv.config({ path: envPath, override: false });
|
|
38
|
+
loadedFiles.push(relativePath);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
if (loadedFiles.length > 0) {
|
|
42
|
+
break;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
if (loadedFiles.length === 0) {
|
|
46
|
+
console.warn(chalk.yellow(`⚠️ No environment files found for environment: ${env}`));
|
|
47
|
+
console.log(chalk.gray(`Searched in: ${searchedDirs.join(', ')}`));
|
|
48
|
+
console.log(chalk.gray(`Expected files: ${envPatterns.join(', ')}`));
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
console.log(chalk.green(`✅ Loaded ${loadedFiles.length} environment file(s) for: ${env}`));
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=load-env.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"load-env.js","sourceRoot":"","sources":["../../src/utils/load-env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAK5D,SAAS,kBAAkB,CAAC,GAAW;IACrC,MAAM,QAAQ,GAA6B;QACzC,GAAG,EAAE;YACH,gBAAgB;YAChB,wBAAwB;YACxB,UAAU;YACV,kBAAkB;SACnB;QACD,IAAI,EAAE,CAAC,iBAAiB,EAAE,WAAW,CAAC;QACtC,OAAO,EAAE,CAAC,oBAAoB,EAAE,cAAc,CAAC;QAC/C,IAAI,EAAE;YACJ,iBAAiB;YACjB,uBAAuB;YACvB,WAAW;YACX,iBAAiB;SAClB;KACF,CAAC;IAEF,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,GAAG,QAAQ,EAAE,QAAQ,GAAG,EAAE,CAAC,CAAC;AAC/D,CAAC;AAKD,MAAM,UAAU,eAAe,CAAC,GAAmB;IAEjD,MAAM,iBAAiB,GAAG,kBAAkB,EAAE,CAAC;IAG/C,MAAM,WAAW,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;IAE5C,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,MAAM,YAAY,GAAa,EAAE,CAAC;IAGlC,KAAK,MAAM,SAAS,IAAI,iBAAiB,EAAE,CAAC;QAC1C,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,IAAI,GAAG,CAAC,CAAC;QAElE,KAAK,MAAM,OAAO,IAAI,WAAW,EAAE,CAAC;YAClC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAE9C,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,CAAC;gBAC3D,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CAAC,6BAA6B,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CACpE,CAAC;gBAEF,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;gBAClD,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACjC,CAAC;QACH,CAAC;QAGD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM;QACR,CAAC;IACH,CAAC;IAED,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,IAAI,CACV,KAAK,CAAC,MAAM,CAAC,mDAAmD,GAAG,EAAE,CAAC,CACvE,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACnE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,mBAAmB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,KAAK,CACT,YAAY,WAAW,CAAC,MAAM,6BAA6B,GAAG,EAAE,CACjE,CACF,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stripe-client.d.ts","sourceRoot":"","sources":["../../src/utils/stripe-client.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GACtC,MAAM,CAQR"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import Stripe from 'stripe';
|
|
2
|
+
export function createStripeClient(env) {
|
|
3
|
+
if (!env.STRIPE_SECRET_KEY) {
|
|
4
|
+
throw new Error('STRIPE_SECRET_KEY is required');
|
|
5
|
+
}
|
|
6
|
+
return new Stripe(env.STRIPE_SECRET_KEY, {
|
|
7
|
+
apiVersion: '2025-07-30.basil',
|
|
8
|
+
});
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=stripe-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stripe-client.js","sourceRoot":"","sources":["../../src/utils/stripe-client.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,MAAM,UAAU,kBAAkB,CAChC,GAAuC;IAEvC,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,iBAAiB,EAAE;QACvC,UAAU,EAAE,kBAAkB;KAC/B,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type Stripe from 'stripe';
|
|
2
|
+
import type { Context } from '../definitions/index.js';
|
|
3
|
+
export declare function findStripeProduct(ctx: Context, input: {
|
|
4
|
+
internalProductId: string;
|
|
5
|
+
}): Promise<Stripe.Product | null>;
|
|
6
|
+
export declare function findStripePrice(ctx: Context, input: {
|
|
7
|
+
internalPriceId: string;
|
|
8
|
+
stripeProductId: string;
|
|
9
|
+
}): Promise<Stripe.Price | null>;
|
|
10
|
+
export declare function listStripeProducts(ctx: Context, options?: {
|
|
11
|
+
showAll?: boolean;
|
|
12
|
+
}): Promise<Stripe.Product[]>;
|
|
13
|
+
export declare function listStripePrices(ctx: Context, options?: {
|
|
14
|
+
showAll?: boolean;
|
|
15
|
+
}): Promise<Stripe.Price[]>;
|
|
16
|
+
//# sourceMappingURL=stripe-repository.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stripe-repository.d.ts","sourceRoot":"","sources":["../../src/utils/stripe-repository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAEjC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAO7C,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE;IAAE,iBAAiB,EAAE,MAAM,CAAA;CAAE,GACnC,OAAO,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,CAWhC;AAGD,wBAAsB,eAAe,CACnC,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE;IAAE,eAAe,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,CAAA;CAAE,GAC1D,OAAO,CAAC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,CAW9B;AAOD,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,OAAO,EACZ,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,GAClC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAqC3B;AAGD,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,OAAO,EACZ,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,GAClC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAqCzB"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
export async function findStripeProduct(ctx, input) {
|
|
2
|
+
const { internalProductId } = input;
|
|
3
|
+
const { metadata } = ctx.config;
|
|
4
|
+
const searchResult = await ctx.stripeClient.products.search({
|
|
5
|
+
query: `metadata['${metadata.productIdField}']:'${internalProductId}' AND metadata['${metadata.managedByField}']:'${metadata.managedByValue}' AND active:'true'`,
|
|
6
|
+
limit: 1,
|
|
7
|
+
});
|
|
8
|
+
const product = searchResult.data.length > 0 ? searchResult.data[0] : null;
|
|
9
|
+
return product ? product : null;
|
|
10
|
+
}
|
|
11
|
+
export async function findStripePrice(ctx, input) {
|
|
12
|
+
const { internalPriceId, stripeProductId } = input;
|
|
13
|
+
const { metadata } = ctx.config;
|
|
14
|
+
const searchResult = await ctx.stripeClient.prices.search({
|
|
15
|
+
query: `product:'${stripeProductId}' AND metadata['${metadata.priceIdField}']:'${internalPriceId}' AND metadata['${metadata.managedByField}']:'${metadata.managedByValue}' AND active:'true'`,
|
|
16
|
+
limit: 1,
|
|
17
|
+
});
|
|
18
|
+
const price = searchResult.data.length > 0 && searchResult.data[0];
|
|
19
|
+
return price ? price : null;
|
|
20
|
+
}
|
|
21
|
+
export async function listStripeProducts(ctx, options = {}) {
|
|
22
|
+
const { showAll = false } = options;
|
|
23
|
+
ctx.logger.info(`Fetching ${showAll ? 'all' : 'managed'} products from Stripe...`);
|
|
24
|
+
let hasMore = true;
|
|
25
|
+
let startingAfter;
|
|
26
|
+
let allStripeProducts = [];
|
|
27
|
+
while (hasMore) {
|
|
28
|
+
const response = await ctx.stripeClient.products.list({
|
|
29
|
+
limit: 100,
|
|
30
|
+
starting_after: startingAfter,
|
|
31
|
+
});
|
|
32
|
+
let productsToInclude;
|
|
33
|
+
if (showAll) {
|
|
34
|
+
productsToInclude = response.data;
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
productsToInclude = response.data.filter((product) => product.metadata?.[ctx.config.metadata.productIdField] &&
|
|
38
|
+
product.metadata?.[ctx.config.metadata.managedByField] ===
|
|
39
|
+
ctx.config.metadata.managedByValue);
|
|
40
|
+
}
|
|
41
|
+
allStripeProducts = [...allStripeProducts, ...productsToInclude];
|
|
42
|
+
hasMore = response.has_more;
|
|
43
|
+
startingAfter = response.data.at(-1)?.id;
|
|
44
|
+
}
|
|
45
|
+
return allStripeProducts;
|
|
46
|
+
}
|
|
47
|
+
export async function listStripePrices(ctx, options = {}) {
|
|
48
|
+
const { showAll = false } = options;
|
|
49
|
+
ctx.logger.info(`Fetching ${showAll ? 'all' : 'managed'} prices from Stripe...`);
|
|
50
|
+
let hasMore = true;
|
|
51
|
+
let startingAfter;
|
|
52
|
+
let allStripePrices = [];
|
|
53
|
+
while (hasMore) {
|
|
54
|
+
const response = await ctx.stripeClient.prices.list({
|
|
55
|
+
limit: 100,
|
|
56
|
+
starting_after: startingAfter,
|
|
57
|
+
});
|
|
58
|
+
let pricesToInclude;
|
|
59
|
+
if (showAll) {
|
|
60
|
+
pricesToInclude = response.data;
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
pricesToInclude = response.data.filter((price) => price.metadata?.[ctx.config.metadata.priceIdField] &&
|
|
64
|
+
price.metadata?.[ctx.config.metadata.managedByField] ===
|
|
65
|
+
ctx.config.metadata.managedByValue);
|
|
66
|
+
}
|
|
67
|
+
allStripePrices = [...allStripePrices, ...pricesToInclude];
|
|
68
|
+
hasMore = response.has_more;
|
|
69
|
+
startingAfter = response.data.at(-1)?.id;
|
|
70
|
+
}
|
|
71
|
+
return allStripePrices;
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=stripe-repository.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stripe-repository.js","sourceRoot":"","sources":["../../src/utils/stripe-repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { EnvironmentKey } from '../definitions/index.js';
|
|
2
|
+
export interface UserPreferences {
|
|
3
|
+
defaultEnvironment?: EnvironmentKey;
|
|
4
|
+
defaultAdapter?: string;
|
|
5
|
+
}
|
|
6
|
+
export declare function loadUserPreferences(): UserPreferences;
|
|
7
|
+
export declare function saveUserPreference<K extends keyof UserPreferences>(key: K, value: UserPreferences[K]): void;
|
|
8
|
+
export declare function getLastUsedEnvironment(): EnvironmentKey | undefined;
|
|
9
|
+
export declare function getLastUsedAdapter(): string | undefined;
|
|
10
|
+
//# sourceMappingURL=user-preferences.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-preferences.d.ts","sourceRoot":"","sources":["../../src/utils/user-preferences.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,MAAM,WAAW,eAAe;IAC9B,kBAAkB,CAAC,EAAE,cAAc,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAWD,wBAAgB,mBAAmB,IAAI,eAAe,CAYrD;AAID,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,MAAM,eAAe,EAChE,GAAG,EAAE,CAAC,EACN,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,GACxB,IAAI,CAmBN;AAID,wBAAgB,sBAAsB,IAAI,cAAc,GAAG,SAAS,CAGnE;AAID,wBAAgB,kBAAkB,IAAI,MAAM,GAAG,SAAS,CAGvD"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
|
|
2
|
+
import { homedir } from 'node:os';
|
|
3
|
+
import { join } from 'node:path';
|
|
4
|
+
const CONFIG_DIR = join(homedir(), '.config', '@makeco', 'stripe-kit');
|
|
5
|
+
const CONFIG_FILE = join(CONFIG_DIR, 'config.json');
|
|
6
|
+
export function loadUserPreferences() {
|
|
7
|
+
try {
|
|
8
|
+
if (!existsSync(CONFIG_FILE)) {
|
|
9
|
+
return {};
|
|
10
|
+
}
|
|
11
|
+
const content = readFileSync(CONFIG_FILE, 'utf-8');
|
|
12
|
+
return JSON.parse(content);
|
|
13
|
+
}
|
|
14
|
+
catch {
|
|
15
|
+
console.warn('Warning: Could not load user preferences, using defaults');
|
|
16
|
+
return {};
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
export function saveUserPreference(key, value) {
|
|
20
|
+
try {
|
|
21
|
+
if (!existsSync(CONFIG_DIR)) {
|
|
22
|
+
mkdirSync(CONFIG_DIR, { recursive: true });
|
|
23
|
+
}
|
|
24
|
+
const preferences = loadUserPreferences();
|
|
25
|
+
preferences[key] = value;
|
|
26
|
+
writeFileSync(CONFIG_FILE, JSON.stringify(preferences, null, 2));
|
|
27
|
+
}
|
|
28
|
+
catch {
|
|
29
|
+
console.warn(`Warning: Could not save user preference ${key}`);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
export function getLastUsedEnvironment() {
|
|
33
|
+
const preferences = loadUserPreferences();
|
|
34
|
+
return preferences.defaultEnvironment;
|
|
35
|
+
}
|
|
36
|
+
export function getLastUsedAdapter() {
|
|
37
|
+
const preferences = loadUserPreferences();
|
|
38
|
+
return preferences.defaultAdapter;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=user-preferences.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-preferences.js","sourceRoot":"","sources":["../../src/utils/user-preferences.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AASjC,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;AACvE,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;AAQpD,MAAM,UAAU,mBAAmB;IACjC,IAAI,CAAC;QACH,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAC7B,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACnD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAoB,CAAC;IAChD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;QACzE,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAID,MAAM,UAAU,kBAAkB,CAChC,GAAM,EACN,KAAyB;IAEzB,IAAI,CAAC;QAEH,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC5B,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7C,CAAC;QAGD,MAAM,WAAW,GAAG,mBAAmB,EAAE,CAAC;QAG1C,WAAW,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QAGzB,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACnE,CAAC;IAAC,MAAM,CAAC;QAEP,OAAO,CAAC,IAAI,CAAC,2CAA2C,GAAG,EAAE,CAAC,CAAC;IACjE,CAAC;AACH,CAAC;AAID,MAAM,UAAU,sBAAsB;IACpC,MAAM,WAAW,GAAG,mBAAmB,EAAE,CAAC;IAC1C,OAAO,WAAW,CAAC,kBAAkB,CAAC;AACxC,CAAC;AAID,MAAM,UAAU,kBAAkB;IAChC,MAAM,WAAW,GAAG,mBAAmB,EAAE,CAAC;IAC1C,OAAO,WAAW,CAAC,cAAc,CAAC;AACpC,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@makeco/stripe-kit",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"author": "makeco",
|
|
5
|
+
"repository": {
|
|
6
|
+
"type": "git",
|
|
7
|
+
"url": "https://github.com/makeco-labs/stripe-kit.git"
|
|
8
|
+
},
|
|
9
|
+
"main": "./dist/index.js",
|
|
10
|
+
"module": "./dist/index.js",
|
|
11
|
+
"types": "./dist/index.d.ts",
|
|
12
|
+
"bin": {
|
|
13
|
+
"stripe-kit": "./dist/cli.js"
|
|
14
|
+
},
|
|
15
|
+
"exports": {
|
|
16
|
+
".": {
|
|
17
|
+
"types": "./dist/index.d.ts",
|
|
18
|
+
"import": "./dist/index.js",
|
|
19
|
+
"require": "./dist/index.js"
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
"bugs": {
|
|
23
|
+
"url": "https://github.com/makeco-labs/stripe-kit/issues"
|
|
24
|
+
},
|
|
25
|
+
"description": "An unofficial CLI tool for creating, archiving, updating Stripe products and prices and syncing them to your database.",
|
|
26
|
+
"files": [
|
|
27
|
+
"dist",
|
|
28
|
+
"README.md",
|
|
29
|
+
"LICENSE",
|
|
30
|
+
"package.json"
|
|
31
|
+
],
|
|
32
|
+
"homepage": "https://github.com/makeco-labs/stripe-kit",
|
|
33
|
+
"keywords": [
|
|
34
|
+
"stripe",
|
|
35
|
+
"billing",
|
|
36
|
+
"subscription",
|
|
37
|
+
"cli",
|
|
38
|
+
"payments",
|
|
39
|
+
"typescript",
|
|
40
|
+
"saas"
|
|
41
|
+
],
|
|
42
|
+
"license": "MIT",
|
|
43
|
+
"private": false,
|
|
44
|
+
"publishConfig": {
|
|
45
|
+
"access": "public"
|
|
46
|
+
},
|
|
47
|
+
"scripts": {
|
|
48
|
+
"clean": "rm -rf dist",
|
|
49
|
+
"typecheck": "tsc --noEmit -p tsconfig.json",
|
|
50
|
+
"build": "bun clean && tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json --resolve-full-paths && chmod +x dist/cli.js",
|
|
51
|
+
"dev": "tsc -p tsconfig.build.json --watch",
|
|
52
|
+
"dev:typecheck": "bun typecheck --watch --preserveWatchOutput",
|
|
53
|
+
"lint": "npx ultracite@latest lint",
|
|
54
|
+
"format": "bunx ultracite@latest format",
|
|
55
|
+
"test": "vitest",
|
|
56
|
+
"ci": "bun lint && bun typecheck && bun format && bun run build",
|
|
57
|
+
"git": "bun ci && git add . && git commit -m",
|
|
58
|
+
"postgit": "git push --all"
|
|
59
|
+
},
|
|
60
|
+
"devDependencies": {
|
|
61
|
+
"@types/better-sqlite3": "^7.6.13",
|
|
62
|
+
"@types/node": "^20.0.0",
|
|
63
|
+
"@types/prompts": "^2.4.9",
|
|
64
|
+
"better-sqlite3": "^12.2.0",
|
|
65
|
+
"eslint": "^9.29.0",
|
|
66
|
+
"tsc-alias": "^1.8.16",
|
|
67
|
+
"typescript": "^5.8.3",
|
|
68
|
+
"ultracite": "^5.1.2",
|
|
69
|
+
"vitest": "^3.2.4"
|
|
70
|
+
},
|
|
71
|
+
"type": "module",
|
|
72
|
+
"dependencies": {
|
|
73
|
+
"chalk": "^5.2.0",
|
|
74
|
+
"commander": "^12.1.0",
|
|
75
|
+
"dotenv": "^16.0.3",
|
|
76
|
+
"esbuild-register": "^3.6.0",
|
|
77
|
+
"prompts": "^2.4.2",
|
|
78
|
+
"stripe": "^18.4.0",
|
|
79
|
+
"zod": "^4.0.14"
|
|
80
|
+
},
|
|
81
|
+
"peerDependencies": {
|
|
82
|
+
"drizzle-orm": "^0.44.4"
|
|
83
|
+
}
|
|
84
|
+
}
|