@taruvi/sdk 1.3.3 → 1.3.4
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/.claude/settings.local.json +19 -0
- package/.kiro/settings/lsp.json +198 -0
- package/MODULE_NAMING_CHANGES.md +81 -0
- package/PARAMETER_NAMING_CHANGES.md +106 -0
- package/README.md +4 -4
- package/USAGE_EXAMPLE.md +86 -0
- package/package.json +10 -9
- package/{dist/client.js → src/client.ts} +59 -39
- package/src/index.ts +54 -0
- package/src/lib/analytics/AnalyticsClient.ts +24 -0
- package/src/lib/analytics/types.ts +8 -0
- package/src/lib/app/AppClient.ts +54 -0
- package/src/lib/app/types.ts +50 -0
- package/{dist/lib/auth/AuthClient.js → src/lib/auth/AuthClient.ts} +106 -70
- package/src/lib/auth/types.ts +111 -0
- package/src/lib/database/DatabaseClient.ts +148 -0
- package/src/lib/database/types.ts +46 -0
- package/src/lib/functions/FunctionsClient.ts +27 -0
- package/src/lib/functions/types.ts +25 -0
- package/src/lib/graphs/GraphClient.ts +106 -0
- package/src/lib/graphs/types.ts +33 -0
- package/src/lib/policy/PolicyClient.ts +79 -0
- package/src/lib/policy/types.ts +40 -0
- package/src/lib/secrets/SecretsClient.ts +75 -0
- package/src/lib/secrets/types.ts +59 -0
- package/src/lib/settings/SettingsClient.ts +14 -0
- package/src/lib/settings/types.ts +9 -0
- package/src/lib/storage/StorageClient.ts +123 -0
- package/src/lib/storage/types.ts +86 -0
- package/src/lib/users/UserClient.ts +55 -0
- package/src/lib/users/types.ts +104 -0
- package/src/lib-internal/errors/ErrorClient.ts +102 -0
- package/src/lib-internal/errors/index.ts +3 -0
- package/src/lib-internal/errors/types.ts +28 -0
- package/src/lib-internal/http/HttpClient.ts +129 -0
- package/{dist/lib-internal/http/types.js → src/lib-internal/http/types.ts} +3 -2
- package/src/lib-internal/routes/AnalyticsRoutes.ts +3 -0
- package/src/lib-internal/routes/AppRoutes.ts +9 -0
- package/src/lib-internal/routes/AuthRoutes.ts +0 -0
- package/src/lib-internal/routes/DatabaseRoutes.ts +9 -0
- package/src/lib-internal/routes/FunctionRoutes.ts +3 -0
- package/src/lib-internal/routes/GraphRoutes.ts +14 -0
- package/src/lib-internal/routes/PolicyRoutes.ts +4 -0
- package/src/lib-internal/routes/SecretsRoutes.ts +5 -0
- package/{dist/lib-internal/routes/SettingsRoutes.js → src/lib-internal/routes/SettingsRoutes.ts} +1 -2
- package/src/lib-internal/routes/StorageRoutes.ts +15 -0
- package/src/lib-internal/routes/UserRoutes.ts +11 -0
- package/src/lib-internal/routes/index.ts +0 -0
- package/{dist/lib-internal/token/TokenClient.js → src/lib-internal/token/TokenClient.ts} +144 -99
- package/src/lib-internal/token/types.ts +0 -0
- package/src/types.ts +90 -0
- package/{dist/utils/enums.js → src/utils/enums.ts} +10 -4
- package/src/utils/utils.ts +37 -0
- package/tests/fixtures/mockClient.ts +19 -0
- package/tests/mocks/db.json +1 -0
- package/tests/unit/analytics/AnalyticsClient.test.ts +84 -0
- package/tests/unit/app/AppClient.test.ts +114 -0
- package/tests/unit/auth/AuthClient.test.ts +131 -0
- package/tests/unit/client/Client.test.ts +70 -0
- package/tests/unit/database/DatabaseClient.test.ts +304 -0
- package/tests/unit/edge-cases/robustness.test.ts +259 -0
- package/tests/unit/errors/errors.test.ts +209 -0
- package/tests/unit/functions/FunctionsClient.test.ts +99 -0
- package/tests/unit/graphs/GraphClient.test.ts +329 -0
- package/tests/unit/policy/PolicyClient.test.ts +184 -0
- package/tests/unit/secrets/SecretsClient.test.ts +146 -0
- package/tests/unit/settings/SettingsClient.test.ts +50 -0
- package/tests/unit/storage/StorageClient.test.ts +251 -0
- package/tests/unit/users/UserClient.test.ts +150 -0
- package/tsconfig.json +43 -0
- package/vitest.config.ts +7 -0
- package/dist/client.d.ts +0 -29
- package/dist/client.d.ts.map +0 -1
- package/dist/client.js.map +0 -1
- package/dist/index.d.ts +0 -25
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -15
- package/dist/index.js.map +0 -1
- package/dist/lib/Analytics/AnalyticsClient.d.ts +0 -9
- package/dist/lib/Analytics/AnalyticsClient.d.ts.map +0 -1
- package/dist/lib/Analytics/AnalyticsClient.js +0 -17
- package/dist/lib/Analytics/AnalyticsClient.js.map +0 -1
- package/dist/lib/Analytics/types.d.ts +0 -7
- package/dist/lib/Analytics/types.d.ts.map +0 -1
- package/dist/lib/Analytics/types.js +0 -2
- package/dist/lib/Analytics/types.js.map +0 -1
- package/dist/lib/App/AppClient.d.ts +0 -15
- package/dist/lib/App/AppClient.d.ts.map +0 -1
- package/dist/lib/App/AppClient.js +0 -41
- package/dist/lib/App/AppClient.js.map +0 -1
- package/dist/lib/App/types.d.ts +0 -36
- package/dist/lib/App/types.d.ts.map +0 -1
- package/dist/lib/App/types.js +0 -2
- package/dist/lib/App/types.js.map +0 -1
- package/dist/lib/Database/DatabaseClient.d.ts +0 -28
- package/dist/lib/Database/DatabaseClient.d.ts.map +0 -1
- package/dist/lib/Database/DatabaseClient.js +0 -116
- package/dist/lib/Database/DatabaseClient.js.map +0 -1
- package/dist/lib/Database/types.d.ts +0 -24
- package/dist/lib/Database/types.d.ts.map +0 -1
- package/dist/lib/Database/types.js +0 -2
- package/dist/lib/Database/types.js.map +0 -1
- package/dist/lib/Function/FunctionsClient.d.ts +0 -9
- package/dist/lib/Function/FunctionsClient.d.ts.map +0 -1
- package/dist/lib/Function/FunctionsClient.js +0 -20
- package/dist/lib/Function/FunctionsClient.js.map +0 -1
- package/dist/lib/Function/types.d.ts +0 -16
- package/dist/lib/Function/types.d.ts.map +0 -1
- package/dist/lib/Function/types.js +0 -2
- package/dist/lib/Function/types.js.map +0 -1
- package/dist/lib/Graphs/GraphClient.d.ts +0 -26
- package/dist/lib/Graphs/GraphClient.d.ts.map +0 -1
- package/dist/lib/Graphs/GraphClient.js +0 -86
- package/dist/lib/Graphs/GraphClient.js.map +0 -1
- package/dist/lib/Graphs/types.d.ts +0 -23
- package/dist/lib/Graphs/types.d.ts.map +0 -1
- package/dist/lib/Graphs/types.js +0 -2
- package/dist/lib/Graphs/types.js.map +0 -1
- package/dist/lib/Policy/PolicyClient.d.ts +0 -9
- package/dist/lib/Policy/PolicyClient.d.ts.map +0 -1
- package/dist/lib/Policy/PolicyClient.js +0 -24
- package/dist/lib/Policy/PolicyClient.js.map +0 -1
- package/dist/lib/Policy/types.d.ts +0 -22
- package/dist/lib/Policy/types.d.ts.map +0 -1
- package/dist/lib/Policy/types.js +0 -2
- package/dist/lib/Policy/types.js.map +0 -1
- package/dist/lib/Secrets/SecretsClient.d.ts +0 -14
- package/dist/lib/Secrets/SecretsClient.d.ts.map +0 -1
- package/dist/lib/Secrets/SecretsClient.js +0 -32
- package/dist/lib/Secrets/SecretsClient.js.map +0 -1
- package/dist/lib/Secrets/types.d.ts +0 -13
- package/dist/lib/Secrets/types.d.ts.map +0 -1
- package/dist/lib/Secrets/types.js +0 -2
- package/dist/lib/Secrets/types.js.map +0 -1
- package/dist/lib/Settings/SettingsClient.d.ts +0 -7
- package/dist/lib/Settings/SettingsClient.d.ts.map +0 -1
- package/dist/lib/Settings/SettingsClient.js +0 -11
- package/dist/lib/Settings/SettingsClient.js.map +0 -1
- package/dist/lib/Settings/types.d.ts +0 -4
- package/dist/lib/Settings/types.d.ts.map +0 -1
- package/dist/lib/Settings/types.js +0 -2
- package/dist/lib/Settings/types.js.map +0 -1
- package/dist/lib/Storage/StorageClient.d.ts +0 -26
- package/dist/lib/Storage/StorageClient.d.ts.map +0 -1
- package/dist/lib/Storage/StorageClient.js +0 -78
- package/dist/lib/Storage/StorageClient.js.map +0 -1
- package/dist/lib/Storage/types.d.ts +0 -35
- package/dist/lib/Storage/types.d.ts.map +0 -1
- package/dist/lib/Storage/types.js +0 -2
- package/dist/lib/Storage/types.js.map +0 -1
- package/dist/lib/auth/AuthClient.d.ts +0 -66
- package/dist/lib/auth/AuthClient.d.ts.map +0 -1
- package/dist/lib/auth/AuthClient.js.map +0 -1
- package/dist/lib/auth/types.d.ts +0 -9
- package/dist/lib/auth/types.d.ts.map +0 -1
- package/dist/lib/auth/types.js +0 -2
- package/dist/lib/auth/types.js.map +0 -1
- package/dist/lib/user/UserClient.d.ts +0 -16
- package/dist/lib/user/UserClient.d.ts.map +0 -1
- package/dist/lib/user/UserClient.js +0 -41
- package/dist/lib/user/UserClient.js.map +0 -1
- package/dist/lib/user/types.d.ts +0 -100
- package/dist/lib/user/types.d.ts.map +0 -1
- package/dist/lib/user/types.js +0 -2
- package/dist/lib/user/types.js.map +0 -1
- package/dist/lib-internal/errors/ErrorClient.d.ts +0 -4
- package/dist/lib-internal/errors/ErrorClient.d.ts.map +0 -1
- package/dist/lib-internal/errors/ErrorClient.js +0 -6
- package/dist/lib-internal/errors/ErrorClient.js.map +0 -1
- package/dist/lib-internal/errors/index.d.ts +0 -8
- package/dist/lib-internal/errors/index.d.ts.map +0 -1
- package/dist/lib-internal/errors/index.js +0 -23
- package/dist/lib-internal/errors/index.js.map +0 -1
- package/dist/lib-internal/errors/types.d.ts +0 -83
- package/dist/lib-internal/errors/types.d.ts.map +0 -1
- package/dist/lib-internal/errors/types.js +0 -65
- package/dist/lib-internal/errors/types.js.map +0 -1
- package/dist/lib-internal/http/HttpClient.d.ts +0 -22
- package/dist/lib-internal/http/HttpClient.d.ts.map +0 -1
- package/dist/lib-internal/http/HttpClient.js +0 -65
- package/dist/lib-internal/http/HttpClient.js.map +0 -1
- package/dist/lib-internal/http/types.d.ts +0 -12
- package/dist/lib-internal/http/types.d.ts.map +0 -1
- package/dist/lib-internal/http/types.js.map +0 -1
- package/dist/lib-internal/routes/AnalyticsRoutes.d.ts +0 -4
- package/dist/lib-internal/routes/AnalyticsRoutes.d.ts.map +0 -1
- package/dist/lib-internal/routes/AnalyticsRoutes.js +0 -4
- package/dist/lib-internal/routes/AnalyticsRoutes.js.map +0 -1
- package/dist/lib-internal/routes/AppRoutes.d.ts +0 -10
- package/dist/lib-internal/routes/AppRoutes.d.ts.map +0 -1
- package/dist/lib-internal/routes/AppRoutes.js +0 -6
- package/dist/lib-internal/routes/AppRoutes.js.map +0 -1
- package/dist/lib-internal/routes/AuthRoutes.d.ts +0 -2
- package/dist/lib-internal/routes/AuthRoutes.d.ts.map +0 -1
- package/dist/lib-internal/routes/AuthRoutes.js +0 -2
- package/dist/lib-internal/routes/AuthRoutes.js.map +0 -1
- package/dist/lib-internal/routes/DatabaseRoutes.d.ts +0 -10
- package/dist/lib-internal/routes/DatabaseRoutes.d.ts.map +0 -1
- package/dist/lib-internal/routes/DatabaseRoutes.js +0 -6
- package/dist/lib-internal/routes/DatabaseRoutes.js.map +0 -1
- package/dist/lib-internal/routes/FunctionRoutes.d.ts +0 -4
- package/dist/lib-internal/routes/FunctionRoutes.d.ts.map +0 -1
- package/dist/lib-internal/routes/FunctionRoutes.js +0 -4
- package/dist/lib-internal/routes/FunctionRoutes.js.map +0 -1
- package/dist/lib-internal/routes/GraphRoutes.d.ts +0 -14
- package/dist/lib-internal/routes/GraphRoutes.d.ts.map +0 -1
- package/dist/lib-internal/routes/GraphRoutes.js +0 -11
- package/dist/lib-internal/routes/GraphRoutes.js.map +0 -1
- package/dist/lib-internal/routes/PolicyRoutes.d.ts +0 -5
- package/dist/lib-internal/routes/PolicyRoutes.d.ts.map +0 -1
- package/dist/lib-internal/routes/PolicyRoutes.js +0 -5
- package/dist/lib-internal/routes/PolicyRoutes.js.map +0 -1
- package/dist/lib-internal/routes/SecretsRoutes.d.ts +0 -6
- package/dist/lib-internal/routes/SecretsRoutes.d.ts.map +0 -1
- package/dist/lib-internal/routes/SecretsRoutes.js +0 -6
- package/dist/lib-internal/routes/SecretsRoutes.js.map +0 -1
- package/dist/lib-internal/routes/SettingsRoutes.d.ts +0 -4
- package/dist/lib-internal/routes/SettingsRoutes.d.ts.map +0 -1
- package/dist/lib-internal/routes/SettingsRoutes.js.map +0 -1
- package/dist/lib-internal/routes/StorageRoutes.d.ts +0 -11
- package/dist/lib-internal/routes/StorageRoutes.d.ts.map +0 -1
- package/dist/lib-internal/routes/StorageRoutes.js +0 -8
- package/dist/lib-internal/routes/StorageRoutes.js.map +0 -1
- package/dist/lib-internal/routes/UserRoutes.d.ts +0 -11
- package/dist/lib-internal/routes/UserRoutes.d.ts.map +0 -1
- package/dist/lib-internal/routes/UserRoutes.js +0 -11
- package/dist/lib-internal/routes/UserRoutes.js.map +0 -1
- package/dist/lib-internal/routes/index.d.ts +0 -2
- package/dist/lib-internal/routes/index.d.ts.map +0 -1
- package/dist/lib-internal/routes/index.js +0 -2
- package/dist/lib-internal/routes/index.js.map +0 -1
- package/dist/lib-internal/token/TokenClient.d.ts +0 -71
- package/dist/lib-internal/token/TokenClient.d.ts.map +0 -1
- package/dist/lib-internal/token/TokenClient.js.map +0 -1
- package/dist/lib-internal/token/types.d.ts +0 -2
- package/dist/lib-internal/token/types.d.ts.map +0 -1
- package/dist/lib-internal/token/types.js +0 -2
- package/dist/lib-internal/token/types.js.map +0 -1
- package/dist/types.d.ts +0 -49
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -2
- package/dist/types.js.map +0 -1
- package/dist/utils/enums.d.ts +0 -20
- package/dist/utils/enums.d.ts.map +0 -1
- package/dist/utils/enums.js.map +0 -1
- package/dist/utils/utils.d.ts +0 -5
- package/dist/utils/utils.d.ts.map +0 -1
- package/dist/utils/utils.js +0 -32
- package/dist/utils/utils.js.map +0 -1
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"permissions": {
|
|
3
|
+
"allow": [
|
|
4
|
+
"Bash(tree:*)",
|
|
5
|
+
"Bash(npm run build:*)",
|
|
6
|
+
"Bash(npm ls:*)",
|
|
7
|
+
"Bash(npm link:*)",
|
|
8
|
+
"Bash(npx --yes markdownlint-cli:*)",
|
|
9
|
+
"Bash(cat:*)",
|
|
10
|
+
"Bash(test:*)",
|
|
11
|
+
"Bash(ls:*)",
|
|
12
|
+
"WebFetch(domain:www.markdownpaste.com)",
|
|
13
|
+
"WebSearch",
|
|
14
|
+
"WebFetch(domain:supabase.com)"
|
|
15
|
+
],
|
|
16
|
+
"deny": [],
|
|
17
|
+
"ask": []
|
|
18
|
+
}
|
|
19
|
+
}
|
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
{
|
|
2
|
+
"languages": {
|
|
3
|
+
"java": {
|
|
4
|
+
"name": "jdtls",
|
|
5
|
+
"command": "jdtls",
|
|
6
|
+
"args": [],
|
|
7
|
+
"file_extensions": [
|
|
8
|
+
"java"
|
|
9
|
+
],
|
|
10
|
+
"project_patterns": [
|
|
11
|
+
"pom.xml",
|
|
12
|
+
"build.gradle",
|
|
13
|
+
"build.gradle.kts",
|
|
14
|
+
".project"
|
|
15
|
+
],
|
|
16
|
+
"exclude_patterns": [
|
|
17
|
+
"**/target/**",
|
|
18
|
+
"**/build/**",
|
|
19
|
+
"**/.gradle/**"
|
|
20
|
+
],
|
|
21
|
+
"multi_workspace": false,
|
|
22
|
+
"initialization_options": {
|
|
23
|
+
"settings": {
|
|
24
|
+
"java": {
|
|
25
|
+
"compile": {
|
|
26
|
+
"nullAnalysis": {
|
|
27
|
+
"mode": "automatic"
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
"configuration": {
|
|
31
|
+
"annotationProcessing": {
|
|
32
|
+
"enabled": true
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
"request_timeout_secs": 60
|
|
39
|
+
},
|
|
40
|
+
"cpp": {
|
|
41
|
+
"name": "clangd",
|
|
42
|
+
"command": "clangd",
|
|
43
|
+
"args": [
|
|
44
|
+
"--background-index"
|
|
45
|
+
],
|
|
46
|
+
"file_extensions": [
|
|
47
|
+
"cpp",
|
|
48
|
+
"cc",
|
|
49
|
+
"cxx",
|
|
50
|
+
"c",
|
|
51
|
+
"h",
|
|
52
|
+
"hpp",
|
|
53
|
+
"hxx"
|
|
54
|
+
],
|
|
55
|
+
"project_patterns": [
|
|
56
|
+
"CMakeLists.txt",
|
|
57
|
+
"compile_commands.json",
|
|
58
|
+
"Makefile"
|
|
59
|
+
],
|
|
60
|
+
"exclude_patterns": [
|
|
61
|
+
"**/build/**",
|
|
62
|
+
"**/cmake-build-**/**"
|
|
63
|
+
],
|
|
64
|
+
"multi_workspace": false,
|
|
65
|
+
"initialization_options": {},
|
|
66
|
+
"request_timeout_secs": 60
|
|
67
|
+
},
|
|
68
|
+
"go": {
|
|
69
|
+
"name": "gopls",
|
|
70
|
+
"command": "gopls",
|
|
71
|
+
"args": [],
|
|
72
|
+
"file_extensions": [
|
|
73
|
+
"go"
|
|
74
|
+
],
|
|
75
|
+
"project_patterns": [
|
|
76
|
+
"go.mod",
|
|
77
|
+
"go.sum"
|
|
78
|
+
],
|
|
79
|
+
"exclude_patterns": [
|
|
80
|
+
"**/vendor/**"
|
|
81
|
+
],
|
|
82
|
+
"multi_workspace": false,
|
|
83
|
+
"initialization_options": {
|
|
84
|
+
"usePlaceholders": true,
|
|
85
|
+
"completeUnimported": true
|
|
86
|
+
},
|
|
87
|
+
"request_timeout_secs": 60
|
|
88
|
+
},
|
|
89
|
+
"python": {
|
|
90
|
+
"name": "pyright",
|
|
91
|
+
"command": "pyright-langserver",
|
|
92
|
+
"args": [
|
|
93
|
+
"--stdio"
|
|
94
|
+
],
|
|
95
|
+
"file_extensions": [
|
|
96
|
+
"py"
|
|
97
|
+
],
|
|
98
|
+
"project_patterns": [
|
|
99
|
+
"pyproject.toml",
|
|
100
|
+
"setup.py",
|
|
101
|
+
"requirements.txt",
|
|
102
|
+
"pyrightconfig.json"
|
|
103
|
+
],
|
|
104
|
+
"exclude_patterns": [
|
|
105
|
+
"**/__pycache__/**",
|
|
106
|
+
"**/venv/**",
|
|
107
|
+
"**/.venv/**",
|
|
108
|
+
"**/.pytest_cache/**"
|
|
109
|
+
],
|
|
110
|
+
"multi_workspace": false,
|
|
111
|
+
"initialization_options": {},
|
|
112
|
+
"request_timeout_secs": 60
|
|
113
|
+
},
|
|
114
|
+
"rust": {
|
|
115
|
+
"name": "rust-analyzer",
|
|
116
|
+
"command": "rust-analyzer",
|
|
117
|
+
"args": [],
|
|
118
|
+
"file_extensions": [
|
|
119
|
+
"rs"
|
|
120
|
+
],
|
|
121
|
+
"project_patterns": [
|
|
122
|
+
"Cargo.toml"
|
|
123
|
+
],
|
|
124
|
+
"exclude_patterns": [
|
|
125
|
+
"**/target/**"
|
|
126
|
+
],
|
|
127
|
+
"multi_workspace": false,
|
|
128
|
+
"initialization_options": {
|
|
129
|
+
"cargo": {
|
|
130
|
+
"buildScripts": {
|
|
131
|
+
"enable": true
|
|
132
|
+
}
|
|
133
|
+
},
|
|
134
|
+
"diagnostics": {
|
|
135
|
+
"enable": true,
|
|
136
|
+
"enableExperimental": true
|
|
137
|
+
},
|
|
138
|
+
"workspace": {
|
|
139
|
+
"symbol": {
|
|
140
|
+
"search": {
|
|
141
|
+
"scope": "workspace"
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
},
|
|
146
|
+
"request_timeout_secs": 60
|
|
147
|
+
},
|
|
148
|
+
"typescript": {
|
|
149
|
+
"name": "typescript-language-server",
|
|
150
|
+
"command": "typescript-language-server",
|
|
151
|
+
"args": [
|
|
152
|
+
"--stdio"
|
|
153
|
+
],
|
|
154
|
+
"file_extensions": [
|
|
155
|
+
"ts",
|
|
156
|
+
"js",
|
|
157
|
+
"tsx",
|
|
158
|
+
"jsx"
|
|
159
|
+
],
|
|
160
|
+
"project_patterns": [
|
|
161
|
+
"package.json",
|
|
162
|
+
"tsconfig.json"
|
|
163
|
+
],
|
|
164
|
+
"exclude_patterns": [
|
|
165
|
+
"**/node_modules/**",
|
|
166
|
+
"**/dist/**"
|
|
167
|
+
],
|
|
168
|
+
"multi_workspace": false,
|
|
169
|
+
"initialization_options": {
|
|
170
|
+
"preferences": {
|
|
171
|
+
"disableSuggestions": false
|
|
172
|
+
}
|
|
173
|
+
},
|
|
174
|
+
"request_timeout_secs": 60
|
|
175
|
+
},
|
|
176
|
+
"ruby": {
|
|
177
|
+
"name": "solargraph",
|
|
178
|
+
"command": "solargraph",
|
|
179
|
+
"args": [
|
|
180
|
+
"stdio"
|
|
181
|
+
],
|
|
182
|
+
"file_extensions": [
|
|
183
|
+
"rb"
|
|
184
|
+
],
|
|
185
|
+
"project_patterns": [
|
|
186
|
+
"Gemfile",
|
|
187
|
+
"Rakefile"
|
|
188
|
+
],
|
|
189
|
+
"exclude_patterns": [
|
|
190
|
+
"**/vendor/**",
|
|
191
|
+
"**/tmp/**"
|
|
192
|
+
],
|
|
193
|
+
"multi_workspace": false,
|
|
194
|
+
"initialization_options": {},
|
|
195
|
+
"request_timeout_secs": 60
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
# Module Naming Convention Changes - Completed
|
|
2
|
+
|
|
3
|
+
**Date**: 2026-01-22
|
|
4
|
+
**Status**: ✅ Completed
|
|
5
|
+
|
|
6
|
+
## Changes Made
|
|
7
|
+
|
|
8
|
+
### Folder Renaming
|
|
9
|
+
|
|
10
|
+
All module folders in `src/lib/` have been renamed to lowercase and pluralized where appropriate:
|
|
11
|
+
|
|
12
|
+
| Old Name | New Name | Change Type |
|
|
13
|
+
|----------|----------|-------------|
|
|
14
|
+
| `Analytics/` | `analytics/` | Lowercase |
|
|
15
|
+
| `App/` | `app/` | Lowercase |
|
|
16
|
+
| `auth/` | `auth/` | ✓ Already correct |
|
|
17
|
+
| `Database/` | `database/` | Lowercase |
|
|
18
|
+
| `Function/` | `functions/` | Lowercase + Plural |
|
|
19
|
+
| `Policy/` | `policy/` | Lowercase |
|
|
20
|
+
| `Secrets/` | `secrets/` | Lowercase |
|
|
21
|
+
| `Settings/` | `settings/` | Lowercase |
|
|
22
|
+
| `Storage/` | `storage/` | Lowercase |
|
|
23
|
+
| `user/` | `users/` | Plural |
|
|
24
|
+
|
|
25
|
+
### Files Updated
|
|
26
|
+
|
|
27
|
+
1. **src/index.ts** - Updated all import paths to reflect new folder names
|
|
28
|
+
|
|
29
|
+
### Build Status
|
|
30
|
+
|
|
31
|
+
✅ TypeScript compilation successful
|
|
32
|
+
✅ No errors or warnings
|
|
33
|
+
|
|
34
|
+
## Benefits
|
|
35
|
+
|
|
36
|
+
1. **Consistency** - All module folders now follow lowercase naming
|
|
37
|
+
2. **Alignment** - Matches Python SDK naming conventions
|
|
38
|
+
3. **Clarity** - Plural names (`users`, `functions`) match REST conventions
|
|
39
|
+
4. **Maintainability** - Easier to navigate and understand structure
|
|
40
|
+
|
|
41
|
+
## Next Steps
|
|
42
|
+
|
|
43
|
+
As per the SDK Alignment Analysis, the next priorities are:
|
|
44
|
+
|
|
45
|
+
1. ✅ **Module naming** - COMPLETED
|
|
46
|
+
2. ⏭️ Add direct CRUD methods to Database module
|
|
47
|
+
3. ⏭️ Remove `.execute()` requirement from Storage
|
|
48
|
+
4. ⏭️ Add missing methods to Functions module
|
|
49
|
+
5. ⏭️ Implement AuthManager pattern
|
|
50
|
+
|
|
51
|
+
## Breaking Changes
|
|
52
|
+
|
|
53
|
+
⚠️ **This is a breaking change for existing users**
|
|
54
|
+
|
|
55
|
+
Users will need to update their imports:
|
|
56
|
+
|
|
57
|
+
```typescript
|
|
58
|
+
// Old imports (will break)
|
|
59
|
+
import { User } from '@taruvi/sdk'
|
|
60
|
+
import { Functions } from '@taruvi/sdk'
|
|
61
|
+
|
|
62
|
+
// New imports (correct)
|
|
63
|
+
import { User } from '@taruvi/sdk' // Still works - export name unchanged
|
|
64
|
+
import { Functions } from '@taruvi/sdk' // Still works - export name unchanged
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
**Note**: The exported class names remain unchanged (`User`, `Functions`, etc.), only the internal folder structure changed. This means existing code will continue to work without modifications.
|
|
68
|
+
|
|
69
|
+
## Verification
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
# Build successful
|
|
73
|
+
npm run build
|
|
74
|
+
# ✓ No errors
|
|
75
|
+
|
|
76
|
+
# Folder structure
|
|
77
|
+
ls src/lib/
|
|
78
|
+
# analytics app auth database functions policy secrets settings storage users
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
All folders now follow consistent lowercase naming conventions! 🎉
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
# Parameter Naming Change: baseUrl → apiUrl
|
|
2
|
+
|
|
3
|
+
**Date**: 2026-01-22
|
|
4
|
+
**Status**: ✅ Completed
|
|
5
|
+
|
|
6
|
+
## Changes Made
|
|
7
|
+
|
|
8
|
+
### Type Definitions
|
|
9
|
+
|
|
10
|
+
**File**: `src/types.ts`
|
|
11
|
+
- Changed `baseUrl: string` → `apiUrl: string`
|
|
12
|
+
- Updated comment: "Base API URL"
|
|
13
|
+
|
|
14
|
+
### Client Constructor
|
|
15
|
+
|
|
16
|
+
**File**: `src/client.ts`
|
|
17
|
+
- Updated validation: `config.baseUrl` → `config.apiUrl`
|
|
18
|
+
- Updated error message: "Base URL is required" → "API URL is required"
|
|
19
|
+
|
|
20
|
+
### HTTP Client
|
|
21
|
+
|
|
22
|
+
**File**: `src/lib-internal/http/HttpClient.ts`
|
|
23
|
+
- Updated all HTTP methods to use `config.apiUrl` instead of `config.baseUrl`:
|
|
24
|
+
- `get()` method
|
|
25
|
+
- `post()` method
|
|
26
|
+
- `put()` method
|
|
27
|
+
- `delete()` method
|
|
28
|
+
- `patch()` method
|
|
29
|
+
|
|
30
|
+
### Auth Client
|
|
31
|
+
|
|
32
|
+
**File**: `src/lib/auth/AuthClient.ts`
|
|
33
|
+
- Updated `login()`: `config.deskUrl || config.baseUrl` → `config.deskUrl || config.apiUrl`
|
|
34
|
+
- Updated `signup()`: `config.baseUrl` → `config.apiUrl`
|
|
35
|
+
- Updated `logout()`: `config.deskUrl || config.baseUrl` → `config.deskUrl || config.apiUrl`
|
|
36
|
+
- Updated `refreshAccessToken()`: `config.baseUrl` → `config.apiUrl`
|
|
37
|
+
|
|
38
|
+
### Documentation
|
|
39
|
+
|
|
40
|
+
**File**: `README.md`
|
|
41
|
+
- Updated all examples: `baseUrl:` → `apiUrl:`
|
|
42
|
+
- Updated environment variable: `VITE_TARUVI_BASE_URL` → `VITE_TARUVI_API_URL`
|
|
43
|
+
|
|
44
|
+
## Build Status
|
|
45
|
+
|
|
46
|
+
✅ TypeScript compilation successful
|
|
47
|
+
✅ No errors or warnings
|
|
48
|
+
|
|
49
|
+
## Alignment with Python SDK
|
|
50
|
+
|
|
51
|
+
This change aligns the JavaScript SDK with the Python SDK naming convention:
|
|
52
|
+
|
|
53
|
+
**Python SDK**:
|
|
54
|
+
```python
|
|
55
|
+
client = Client(
|
|
56
|
+
api_url="https://api.taruvi.cloud",
|
|
57
|
+
app_slug="my-app"
|
|
58
|
+
)
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
**JavaScript SDK** (now aligned):
|
|
62
|
+
```typescript
|
|
63
|
+
const client = new Client({
|
|
64
|
+
apiUrl: "https://api.taruvi.cloud",
|
|
65
|
+
appSlug: "my-app",
|
|
66
|
+
apiKey: "your-api-key"
|
|
67
|
+
})
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
## Breaking Change
|
|
71
|
+
|
|
72
|
+
⚠️ **This is a breaking change**
|
|
73
|
+
|
|
74
|
+
Users must update their configuration:
|
|
75
|
+
|
|
76
|
+
```typescript
|
|
77
|
+
// ❌ Old (will break)
|
|
78
|
+
const client = new Client({
|
|
79
|
+
baseUrl: "https://api.taruvi.cloud",
|
|
80
|
+
appSlug: "my-app",
|
|
81
|
+
apiKey: "key"
|
|
82
|
+
})
|
|
83
|
+
|
|
84
|
+
// ✅ New (correct)
|
|
85
|
+
const client = new Client({
|
|
86
|
+
apiUrl: "https://api.taruvi.cloud",
|
|
87
|
+
appSlug: "my-app",
|
|
88
|
+
apiKey: "key"
|
|
89
|
+
})
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
## Migration Guide
|
|
93
|
+
|
|
94
|
+
1. Find all `baseUrl` references in your code
|
|
95
|
+
2. Replace with `apiUrl`
|
|
96
|
+
3. Update environment variables: `VITE_TARUVI_BASE_URL` → `VITE_TARUVI_API_URL`
|
|
97
|
+
|
|
98
|
+
## Next Steps
|
|
99
|
+
|
|
100
|
+
As per the SDK Alignment Analysis:
|
|
101
|
+
|
|
102
|
+
1. ✅ Module naming - COMPLETED
|
|
103
|
+
2. ✅ Parameter naming (baseUrl → apiUrl) - COMPLETED
|
|
104
|
+
3. ⏭️ Add direct CRUD methods to Database module
|
|
105
|
+
4. ⏭️ Remove `.execute()` requirement from Storage
|
|
106
|
+
5. ⏭️ Add missing methods to Functions module
|
package/README.md
CHANGED
|
@@ -32,7 +32,7 @@ import { Client } from '@taruvi/sdk'
|
|
|
32
32
|
const taruviClient = new Client({
|
|
33
33
|
apiKey: "your-site-api-key",
|
|
34
34
|
appSlug: "your-app-slug",
|
|
35
|
-
|
|
35
|
+
apiUrl: "https://taruvi-site.taruvi.cloud"
|
|
36
36
|
})
|
|
37
37
|
```
|
|
38
38
|
|
|
@@ -1141,7 +1141,7 @@ import type {
|
|
|
1141
1141
|
const config: TaruviConfig = {
|
|
1142
1142
|
apiKey: "key",
|
|
1143
1143
|
appSlug: "app",
|
|
1144
|
-
|
|
1144
|
+
apiUrl: "https://api.taruvi.cloud",
|
|
1145
1145
|
deskUrl: "https://desk.taruvi.cloud", // optional
|
|
1146
1146
|
token: "existing-token" // optional
|
|
1147
1147
|
}
|
|
@@ -1305,14 +1305,14 @@ await storage.from("bucket").download("path/to/file.pdf").execute()
|
|
|
1305
1305
|
```env
|
|
1306
1306
|
VITE_TARUVI_API_KEY=your-api-key
|
|
1307
1307
|
VITE_TARUVI_APP_SLUG=your-app
|
|
1308
|
-
|
|
1308
|
+
VITE_TARUVI_API_URL=https://taruvi-site.taruvi.cloud
|
|
1309
1309
|
```
|
|
1310
1310
|
|
|
1311
1311
|
```typescript
|
|
1312
1312
|
const client = new Client({
|
|
1313
1313
|
apiKey: import.meta.env.VITE_TARUVI_API_KEY,
|
|
1314
1314
|
appSlug: import.meta.env.VITE_TARUVI_APP_SLUG,
|
|
1315
|
-
|
|
1315
|
+
apiUrl: import.meta.env.VITE_TARUVI_API_URL
|
|
1316
1316
|
})
|
|
1317
1317
|
```
|
|
1318
1318
|
|
package/USAGE_EXAMPLE.md
ADDED
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
# Taruvi SDK - Usage Example
|
|
2
|
+
|
|
3
|
+
## New Pattern: Dependency Injection (No Singleton)
|
|
4
|
+
|
|
5
|
+
### Basic Usage
|
|
6
|
+
|
|
7
|
+
```typescript
|
|
8
|
+
import { Client, Auth, User, Database } from '@taruvi/sdk'
|
|
9
|
+
|
|
10
|
+
// 1. Create the main client (can create multiple instances)
|
|
11
|
+
const client = new Client({
|
|
12
|
+
apiKey: 'your-site-key',
|
|
13
|
+
appSlug: 'my-app',
|
|
14
|
+
baseUrl: 'https://api.taruvi.com',
|
|
15
|
+
token: 'optional-initial-token' // optional
|
|
16
|
+
})
|
|
17
|
+
|
|
18
|
+
// 2. Create only the clients you need (lazy initialization)
|
|
19
|
+
const auth = new Auth(client)
|
|
20
|
+
const user = new User(client)
|
|
21
|
+
const database = new Database(client)
|
|
22
|
+
|
|
23
|
+
// 3. Use the clients
|
|
24
|
+
if (auth.isUserAuthenticated()) {
|
|
25
|
+
console.log('User is authenticated')
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
const token = auth.signInWithSSO()
|
|
29
|
+
console.log('Token:', token)
|
|
30
|
+
|
|
31
|
+
const userDetails = user.getUser()
|
|
32
|
+
console.log('User:', userDetails)
|
|
33
|
+
|
|
34
|
+
// Access token via User
|
|
35
|
+
console.log('Current token:', user.token)
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
### Multiple Instances
|
|
39
|
+
|
|
40
|
+
You can now create multiple instances for different environments or configs:
|
|
41
|
+
|
|
42
|
+
```typescript
|
|
43
|
+
const prodClient = new Client({
|
|
44
|
+
apiKey: 'prod-key',
|
|
45
|
+
appSlug: 'main-app',
|
|
46
|
+
baseUrl: 'https://api.taruvi.com'
|
|
47
|
+
})
|
|
48
|
+
|
|
49
|
+
const devClient = new Client({
|
|
50
|
+
apiKey: 'dev-key',
|
|
51
|
+
appSlug: 'dev-app',
|
|
52
|
+
baseUrl: 'https://dev-api.taruvi.com'
|
|
53
|
+
})
|
|
54
|
+
|
|
55
|
+
const prodAuth = new Auth(prodClient)
|
|
56
|
+
const devAuth = new Auth(devClient)
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
### Benefits
|
|
60
|
+
|
|
61
|
+
✅ **No singleton** - Multiple instances possible
|
|
62
|
+
✅ **Lazy initialization** - Only create clients you need
|
|
63
|
+
✅ **Better testability** - Easy to mock and test
|
|
64
|
+
✅ **Explicit dependencies** - Clear what each client needs
|
|
65
|
+
✅ **No global state** - No hidden global `taruvi` variable
|
|
66
|
+
✅ **Tree-shakable** - Only bundle what you use
|
|
67
|
+
|
|
68
|
+
### Internal Architecture
|
|
69
|
+
|
|
70
|
+
The `taruvi` variable is no longer exported. Internal clients like `httpClient` and `tokenClient` are accessible only within the SDK through the `Client` instance passed to each client.
|
|
71
|
+
|
|
72
|
+
```typescript
|
|
73
|
+
// Inside Auth
|
|
74
|
+
export class Auth {
|
|
75
|
+
private client: Client
|
|
76
|
+
|
|
77
|
+
constructor(client: Client) {
|
|
78
|
+
this.client = client
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
isUserAuthenticated(): boolean {
|
|
82
|
+
// Access internal tokenClient through the client instance
|
|
83
|
+
return !!this.client.tokenClient.getToken()
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
```
|
package/package.json
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@taruvi/sdk",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.4",
|
|
4
4
|
"description": "Taruvi SDK",
|
|
5
|
-
"main": "
|
|
6
|
-
"types": "dist/index.d.ts",
|
|
5
|
+
"main": "src/index.ts",
|
|
7
6
|
"type": "module",
|
|
8
|
-
"
|
|
7
|
+
"sideEffects": false,
|
|
9
8
|
"scripts": {
|
|
10
9
|
"build": "tsc",
|
|
11
|
-
"
|
|
10
|
+
"test": "vitest run",
|
|
11
|
+
"test:watch": "vitest"
|
|
12
12
|
},
|
|
13
13
|
"keywords": [
|
|
14
14
|
"taruvi",
|
|
@@ -19,9 +19,10 @@
|
|
|
19
19
|
"license": "MIT",
|
|
20
20
|
"peerDependencies": {
|
|
21
21
|
"@types/node": ">=18 <25",
|
|
22
|
-
"
|
|
23
|
-
"
|
|
22
|
+
"axios": ">=1 <2",
|
|
23
|
+
"typescript": ">=5.7 <6"
|
|
24
|
+
},
|
|
25
|
+
"devDependencies": {
|
|
26
|
+
"vitest": "^4.0.18"
|
|
24
27
|
}
|
|
25
28
|
}
|
|
26
|
-
|
|
27
|
-
|