@aurabase/aurabase-js 0.3.0 → 0.3.1

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 (258) hide show
  1. package/package.json +4 -4
  2. package/packages/ai/node_modules/.bin/esbuild +0 -19
  3. package/packages/ai/node_modules/.bin/tsc +0 -22
  4. package/packages/ai/node_modules/.bin/tsserver +0 -22
  5. package/packages/ai/node_modules/.bin/tsup +0 -22
  6. package/packages/ai/node_modules/.bin/tsup-node +0 -22
  7. package/packages/ai/node_modules/.bin/vite +0 -22
  8. package/packages/ai/node_modules/.bin/vitest +0 -22
  9. package/packages/ai/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +0 -1
  10. package/packages/ai/src/AiService.ts +0 -226
  11. package/packages/ai/src/index.ts +0 -18
  12. package/packages/ai/src/sse.ts +0 -141
  13. package/packages/ai/src/types.ts +0 -30
  14. package/packages/ai/tests/chat-stream.test.ts +0 -151
  15. package/packages/ai/tests/rag-namespaces.test.ts +0 -54
  16. package/packages/ai/tests/sse.test.ts +0 -69
  17. package/packages/ai/tsconfig.json +0 -5
  18. package/packages/ai/tsup.config.ts +0 -11
  19. package/packages/aurabase/node_modules/.bin/esbuild +0 -19
  20. package/packages/aurabase/node_modules/.bin/tsc +0 -22
  21. package/packages/aurabase/node_modules/.bin/tsserver +0 -22
  22. package/packages/aurabase/node_modules/.bin/tsup +0 -22
  23. package/packages/aurabase/node_modules/.bin/tsup-node +0 -22
  24. package/packages/aurabase/node_modules/.bin/vite +0 -22
  25. package/packages/aurabase/node_modules/.bin/vitest +0 -22
  26. package/packages/aurabase/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +0 -1
  27. package/packages/aurabase/src/AuraClient.ts +0 -237
  28. package/packages/aurabase/src/index.ts +0 -152
  29. package/packages/aurabase/src/ssr.ts +0 -156
  30. package/packages/aurabase/tests/ai-streaming-rag-e2e.test.ts +0 -82
  31. package/packages/aurabase/tests/ai.test.ts +0 -111
  32. package/packages/aurabase/tests/auth-admin.test.ts +0 -515
  33. package/packages/aurabase/tests/auth-e2e.test.ts +0 -135
  34. package/packages/aurabase/tests/auth-hardening.test.ts +0 -206
  35. package/packages/aurabase/tests/auth.test.ts +0 -947
  36. package/packages/aurabase/tests/database.test.ts +0 -230
  37. package/packages/aurabase/tests/db-types-e2e.test.ts +0 -217
  38. package/packages/aurabase/tests/dispose.test.ts +0 -23
  39. package/packages/aurabase/tests/foreign-token.e2e.test.ts +0 -129
  40. package/packages/aurabase/tests/functions.test.ts +0 -107
  41. package/packages/aurabase/tests/integration.test.ts +0 -413
  42. package/packages/aurabase/tests/live-production-validation.js +0 -241
  43. package/packages/aurabase/tests/live-sdk-production-validation.js +0 -293
  44. package/packages/aurabase/tests/mocks.ts +0 -139
  45. package/packages/aurabase/tests/notifications.test.ts +0 -314
  46. package/packages/aurabase/tests/observability-backup.test.ts +0 -186
  47. package/packages/aurabase/tests/observability-hook.test.ts +0 -130
  48. package/packages/aurabase/tests/production-robustness.test.ts +0 -268
  49. package/packages/aurabase/tests/public-api-surface.test.ts +0 -53
  50. package/packages/aurabase/tests/query-builder.test.ts +0 -329
  51. package/packages/aurabase/tests/readme-smoke-e2e.test.ts +0 -231
  52. package/packages/aurabase/tests/realtime-filter-e2e.test.ts +0 -344
  53. package/packages/aurabase/tests/refresh-locks.test.ts +0 -210
  54. package/packages/aurabase/tests/retry-option.test.ts +0 -17
  55. package/packages/aurabase/tests/rpc-e2e.test.ts +0 -254
  56. package/packages/aurabase/tests/rs256-local-e2e.test.ts +0 -114
  57. package/packages/aurabase/tests/rt-alias-public-e2e.test.ts +0 -235
  58. package/packages/aurabase/tests/rt-http-broadcast-e2e.test.ts +0 -124
  59. package/packages/aurabase/tests/service-role-guard.test.ts +0 -99
  60. package/packages/aurabase/tests/ssr.test.ts +0 -91
  61. package/packages/aurabase/tests/storage-backend-e2e.test.ts +0 -481
  62. package/packages/aurabase/tests/storage-sdk-parity-e2e.test.ts +0 -104
  63. package/packages/aurabase/tests/storage-transform-e2e.test.ts +0 -684
  64. package/packages/aurabase/tests/storage.test.ts +0 -55
  65. package/packages/aurabase/tests/types/client-generic.test-d.ts +0 -79
  66. package/packages/aurabase/tests/types/docs-snippets.test-d.ts +0 -571
  67. package/packages/aurabase/tests/types/error-code.test-d.ts +0 -53
  68. package/packages/aurabase/tsconfig.json +0 -5
  69. package/packages/aurabase/tsconfig.test-d.json +0 -5
  70. package/packages/aurabase/tsup.config.ts +0 -11
  71. package/packages/aurabase/vitest.config.ts +0 -16
  72. package/packages/auth/node_modules/.bin/esbuild +0 -19
  73. package/packages/auth/node_modules/.bin/tsc +0 -22
  74. package/packages/auth/node_modules/.bin/tsserver +0 -22
  75. package/packages/auth/node_modules/.bin/tsup +0 -22
  76. package/packages/auth/node_modules/.bin/tsup-node +0 -22
  77. package/packages/auth/node_modules/.bin/vite +0 -22
  78. package/packages/auth/node_modules/.bin/vitest +0 -22
  79. package/packages/auth/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +0 -1
  80. package/packages/auth/src/AuthAdminService.ts +0 -149
  81. package/packages/auth/src/AuthService.ts +0 -1166
  82. package/packages/auth/src/SessionManager.ts +0 -92
  83. package/packages/auth/src/index.ts +0 -17
  84. package/packages/auth/src/jwks.ts +0 -337
  85. package/packages/auth/src/pkce.ts +0 -27
  86. package/packages/auth/src/types.ts +0 -89
  87. package/packages/auth/tests/auth-lifecycle.test.ts +0 -149
  88. package/packages/auth/tests/detect-session.test.ts +0 -361
  89. package/packages/auth/tests/getclaims.test.ts +0 -780
  90. package/packages/auth/tests/is-mfa-challenge.test.ts +0 -27
  91. package/packages/auth/tests/password-recovery.test.ts +0 -124
  92. package/packages/auth/tests/pkce.test.ts +0 -192
  93. package/packages/auth/tests/session-manager.test.ts +0 -103
  94. package/packages/auth/tests/set-session.test.ts +0 -139
  95. package/packages/auth/tests/verify-otp.test.ts +0 -153
  96. package/packages/auth/tsconfig.json +0 -5
  97. package/packages/auth/tsup.config.ts +0 -11
  98. package/packages/core/node_modules/.bin/esbuild +0 -22
  99. package/packages/core/node_modules/.bin/tsc +0 -22
  100. package/packages/core/node_modules/.bin/tsserver +0 -22
  101. package/packages/core/node_modules/.bin/tsup +0 -22
  102. package/packages/core/node_modules/.bin/tsup-node +0 -22
  103. package/packages/core/node_modules/.bin/vite +0 -22
  104. package/packages/core/node_modules/.bin/vitest +0 -22
  105. package/packages/core/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +0 -1
  106. package/packages/core/src/AuraError.ts +0 -89
  107. package/packages/core/src/BaseService.ts +0 -44
  108. package/packages/core/src/client.ts +0 -34
  109. package/packages/core/src/cookie-utils.ts +0 -42
  110. package/packages/core/src/fetch.ts +0 -435
  111. package/packages/core/src/index.ts +0 -22
  112. package/packages/core/src/retry.ts +0 -63
  113. package/packages/core/src/serialize.ts +0 -6
  114. package/packages/core/src/stores/BaseAuthStore.ts +0 -164
  115. package/packages/core/src/stores/LocalAuthStore.ts +0 -199
  116. package/packages/core/src/types.ts +0 -1042
  117. package/packages/core/tests/auth-store.test.ts +0 -300
  118. package/packages/core/tests/error-code.test.ts +0 -61
  119. package/packages/core/tests/error.test.ts +0 -24
  120. package/packages/core/tests/fetch.test.ts +0 -286
  121. package/packages/core/tests/mocks.ts +0 -139
  122. package/packages/core/tests/observability.test.ts +0 -86
  123. package/packages/core/tests/refresh-hardening.test.ts +0 -164
  124. package/packages/core/tests/refresh-observability.test.ts +0 -111
  125. package/packages/core/tests/retry.test.ts +0 -106
  126. package/packages/core/tests/serialize.test.ts +0 -12
  127. package/packages/core/tests/timeout.test.ts +0 -79
  128. package/packages/core/tsconfig.json +0 -5
  129. package/packages/core/tsup.config.ts +0 -11
  130. package/packages/db/node_modules/.bin/esbuild +0 -19
  131. package/packages/db/node_modules/.bin/tsc +0 -22
  132. package/packages/db/node_modules/.bin/tsserver +0 -22
  133. package/packages/db/node_modules/.bin/tsup +0 -22
  134. package/packages/db/node_modules/.bin/tsup-node +0 -22
  135. package/packages/db/node_modules/.bin/vite +0 -22
  136. package/packages/db/node_modules/.bin/vitest +0 -22
  137. package/packages/db/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +0 -1
  138. package/packages/db/src/DatabaseService.ts +0 -170
  139. package/packages/db/src/QueryBuilder.ts +0 -830
  140. package/packages/db/src/index.ts +0 -2
  141. package/packages/db/src/pgrst-types/common/common.ts +0 -86
  142. package/packages/db/src/pgrst-types/common/rpc.ts +0 -151
  143. package/packages/db/src/pgrst-types/feature-flags.ts +0 -20
  144. package/packages/db/src/pgrst-types/types.ts +0 -134
  145. package/packages/db/src/select-query-parser/parser.ts +0 -479
  146. package/packages/db/src/select-query-parser/result.ts +0 -553
  147. package/packages/db/src/select-query-parser/types.ts +0 -132
  148. package/packages/db/src/select-query-parser/utils.ts +0 -707
  149. package/packages/db/tests/filters.test.ts +0 -81
  150. package/packages/db/tests/mutations-filtered.e2e.test.ts +0 -132
  151. package/packages/db/tests/mutations-filtered.test.ts +0 -188
  152. package/packages/db/tests/order.test.ts +0 -45
  153. package/packages/db/tests/rpc.test.ts +0 -41
  154. package/packages/db/tests/scale/build-large-schema.ts +0 -94
  155. package/packages/db/tests/scale/scale-compile.test.ts +0 -167
  156. package/packages/db/tests/schema.test.ts +0 -77
  157. package/packages/db/tests/single-accept.e2e.test.ts +0 -123
  158. package/packages/db/tests/single.test.ts +0 -211
  159. package/packages/db/tests/types/filters.test-d.ts +0 -52
  160. package/packages/db/tests/types/fixtures.ts +0 -40
  161. package/packages/db/tests/types/from-views.test-d.ts +0 -18
  162. package/packages/db/tests/types/mutations.test-d.ts +0 -23
  163. package/packages/db/tests/types/rpc.test-d.ts +0 -60
  164. package/packages/db/tests/types/schema-shape.test-d.ts +0 -8
  165. package/packages/db/tests/types/select-inference.test-d.ts +0 -38
  166. package/packages/db/tests/vendored/fixtures.ts +0 -83
  167. package/packages/db/tests/vendored/get-result.test-d.ts +0 -75
  168. package/packages/db/tsconfig.json +0 -5
  169. package/packages/db/tsconfig.test-d.json +0 -5
  170. package/packages/db/tsup.config.ts +0 -11
  171. package/packages/db/vitest.config.ts +0 -8
  172. package/packages/functions/node_modules/.bin/esbuild +0 -19
  173. package/packages/functions/node_modules/.bin/tsc +0 -22
  174. package/packages/functions/node_modules/.bin/tsserver +0 -22
  175. package/packages/functions/node_modules/.bin/tsup +0 -22
  176. package/packages/functions/node_modules/.bin/tsup-node +0 -22
  177. package/packages/functions/node_modules/.bin/vite +0 -22
  178. package/packages/functions/node_modules/.bin/vitest +0 -22
  179. package/packages/functions/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +0 -1
  180. package/packages/functions/src/FunctionsService.ts +0 -188
  181. package/packages/functions/src/errors.ts +0 -70
  182. package/packages/functions/src/index.ts +0 -6
  183. package/packages/functions/tests/invoke.test.ts +0 -97
  184. package/packages/functions/tests/response-type-errors.test.ts +0 -135
  185. package/packages/functions/tsconfig.json +0 -5
  186. package/packages/functions/tsup.config.ts +0 -11
  187. package/packages/gen/node_modules/.bin/esbuild +0 -19
  188. package/packages/gen/node_modules/.bin/tsc +0 -22
  189. package/packages/gen/node_modules/.bin/tsserver +0 -22
  190. package/packages/gen/node_modules/.bin/tsup +0 -22
  191. package/packages/gen/node_modules/.bin/tsup-node +0 -22
  192. package/packages/gen/node_modules/.bin/vite +0 -22
  193. package/packages/gen/node_modules/.bin/vitest +0 -22
  194. package/packages/gen/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +0 -1
  195. package/packages/gen/src/cli.ts +0 -67
  196. package/packages/gen/src/generate.ts +0 -0
  197. package/packages/gen/src/index.ts +0 -2
  198. package/packages/gen/tests/compile.test.ts +0 -213
  199. package/packages/gen/tests/e2e.test.ts +0 -130
  200. package/packages/gen/tests/generate.test.ts +0 -396
  201. package/packages/gen/tsconfig.json +0 -5
  202. package/packages/gen/tsup.config.ts +0 -11
  203. package/packages/notifications/node_modules/.bin/esbuild +0 -19
  204. package/packages/notifications/node_modules/.bin/tsc +0 -22
  205. package/packages/notifications/node_modules/.bin/tsserver +0 -22
  206. package/packages/notifications/node_modules/.bin/tsup +0 -22
  207. package/packages/notifications/node_modules/.bin/tsup-node +0 -22
  208. package/packages/notifications/node_modules/.bin/vite +0 -22
  209. package/packages/notifications/node_modules/.bin/vitest +0 -22
  210. package/packages/notifications/src/NotificationsService.ts +0 -230
  211. package/packages/notifications/src/index.ts +0 -19
  212. package/packages/notifications/tsconfig.json +0 -5
  213. package/packages/notifications/tsup.config.ts +0 -11
  214. package/packages/realtime/node_modules/.bin/esbuild +0 -19
  215. package/packages/realtime/node_modules/.bin/tsc +0 -22
  216. package/packages/realtime/node_modules/.bin/tsserver +0 -22
  217. package/packages/realtime/node_modules/.bin/tsup +0 -22
  218. package/packages/realtime/node_modules/.bin/tsup-node +0 -22
  219. package/packages/realtime/node_modules/.bin/vite +0 -22
  220. package/packages/realtime/node_modules/.bin/vitest +0 -22
  221. package/packages/realtime/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +0 -1
  222. package/packages/realtime/src/AuraChannel.ts +0 -485
  223. package/packages/realtime/src/HeartbeatManager.ts +0 -73
  224. package/packages/realtime/src/RealtimeService.ts +0 -505
  225. package/packages/realtime/src/columnFilter.ts +0 -301
  226. package/packages/realtime/src/index.ts +0 -4
  227. package/packages/realtime/tests/ack-routing.test.ts +0 -81
  228. package/packages/realtime/tests/column-filter.test.ts +0 -144
  229. package/packages/realtime/tests/dispatch.test.ts +0 -191
  230. package/packages/realtime/tests/heartbeat.test.ts +0 -67
  231. package/packages/realtime/tests/http-broadcast.test.ts +0 -68
  232. package/packages/realtime/tests/realtime-token.test.ts +0 -43
  233. package/packages/realtime/tests/reconnect-race.test.ts +0 -149
  234. package/packages/realtime/tests/ref-id.test.ts +0 -34
  235. package/packages/realtime/tests/set-auth.test.ts +0 -70
  236. package/packages/realtime/tsconfig.json +0 -5
  237. package/packages/realtime/tsup.config.ts +0 -11
  238. package/packages/storage/node_modules/.bin/esbuild +0 -19
  239. package/packages/storage/node_modules/.bin/tsc +0 -22
  240. package/packages/storage/node_modules/.bin/tsserver +0 -22
  241. package/packages/storage/node_modules/.bin/tsup +0 -22
  242. package/packages/storage/node_modules/.bin/tsup-node +0 -22
  243. package/packages/storage/node_modules/.bin/vite +0 -22
  244. package/packages/storage/node_modules/.bin/vitest +0 -22
  245. package/packages/storage/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +0 -1
  246. package/packages/storage/src/DownloadBuilder.ts +0 -60
  247. package/packages/storage/src/StorageService.ts +0 -323
  248. package/packages/storage/src/index.ts +0 -2
  249. package/packages/storage/src/path.ts +0 -35
  250. package/packages/storage/src/transform.ts +0 -15
  251. package/packages/storage/tests/download.test.ts +0 -64
  252. package/packages/storage/tests/parity.test.ts +0 -154
  253. package/packages/storage/tests/path.test.ts +0 -87
  254. package/packages/storage/tests/transform.test.ts +0 -79
  255. package/packages/storage/tsconfig.json +0 -5
  256. package/packages/storage/tsup.config.ts +0 -11
  257. package/pnpm-workspace.yaml +0 -24
  258. package/tsconfig.base.json +0 -15
@@ -1,396 +0,0 @@
1
- import { describe, it, expect } from 'vitest'
2
- import { generateDatabaseTypes } from '../src/generate'
3
- import type { SchemaTable, SchemaFunction } from '@aurabase/core'
4
-
5
- function col(name: string, col_type: unknown, extra: Partial<{ nullable: boolean; unique: boolean; default_val: string | null; references: { table: string; column: string } | null }> = {}) {
6
- return { name, col_type: col_type as string, nullable: false, unique: false, default_val: null, references: null, ...extra }
7
- }
8
- function table(name: string, columns: ReturnType<typeof col>[], extra: Partial<SchemaTable> = {}): SchemaTable {
9
- return { name, columns, indexes: [], rls_enabled: false, realtime_enabled: false, ...extra }
10
- }
11
- function fn(name: string, args: SchemaFunction['args'], returns: string, is_set_returning = false): SchemaFunction {
12
- return { name, args, returns, is_set_returning }
13
- }
14
-
15
- describe('generateDatabaseTypes — Row', () => {
16
- it('émet une propriété Row par colonne, nullable → | null', () => {
17
- const out = generateDatabaseTypes([
18
- table('users', [col('id', 'uuid'), col('email', 'text'), col('bio', 'text', { nullable: true })]),
19
- ])
20
- expect(out).toContain('users: {')
21
- expect(out).toContain('id: string')
22
- expect(out).toContain('email: string')
23
- expect(out).toContain('bio: string | null')
24
- })
25
- })
26
-
27
- describe('generateDatabaseTypes — mapping des types', () => {
28
- it('mappe chaque type pg vers le bon type TS', () => {
29
- const out = generateDatabaseTypes([
30
- table('t', [
31
- col('a_text', 'text'), col('a_uuid', 'uuid'), col('a_ts', 'timestamp'),
32
- col('a_date', 'date'), col('a_time', 'time'), col('a_bytea', 'bytea'),
33
- col('a_numeric', 'numeric'), col('a_int', 'int'), col('a_bigint', 'bigint'),
34
- col('a_float', 'float'), col('a_bool', 'bool'), col('a_json', 'json'),
35
- col('a_jsonb', 'jsonb'),
36
- col('a_arr', { array: 'text' }), col('a_vec', { vector: 1536 }),
37
- ]),
38
- ])
39
- expect(out).toContain('a_text: string')
40
- expect(out).toContain('a_numeric: string') // NUMERIC = string (précision), jamais number
41
- expect(out).toContain('a_int: number')
42
- expect(out).toContain('a_bigint: number')
43
- expect(out).toContain('a_float: number')
44
- expect(out).toContain('a_bool: boolean')
45
- expect(out).toContain('a_json: Json')
46
- expect(out).toContain('a_jsonb: Json')
47
- expect(out).toContain('a_arr: string[]') // C2 : array typé (plus `unknown[]`)
48
- expect(out).toContain('a_vec: number[]')
49
- })
50
-
51
- it('C2 — arrays typés récursifs : {array:int} → number[], {array:{array:text}} → string[][]', () => {
52
- const out = generateDatabaseTypes([
53
- table('t', [
54
- col('ints', { array: 'int' }),
55
- col('nested', { array: { array: 'text' } }),
56
- col('bools', { array: 'bool' }),
57
- ]),
58
- ])
59
- expect(out).toContain('ints: number[]')
60
- expect(out).toContain('nested: string[][]')
61
- expect(out).toContain('bools: boolean[]')
62
- })
63
- })
64
-
65
- describe('generateDatabaseTypes — Insert/Update', () => {
66
- it('Insert : optionnel si nullable / default / colonne auto ; requis sinon', () => {
67
- const out = generateDatabaseTypes([
68
- table('posts', [
69
- col('id', 'uuid', { default_val: 'gen_random_uuid()' }),
70
- col('title', 'text'), // requis
71
- col('subtitle', 'text', { nullable: true }), // optionnel (nullable)
72
- col('views', 'int', { default_val: '0' }), // optionnel (default)
73
- col('created_at', 'timestamp'), // optionnel (auto)
74
- ]),
75
- ])
76
- const insert = out.slice(out.indexOf('Insert: {'), out.indexOf('Update: {'))
77
- expect(insert).toContain('id?: string')
78
- expect(insert).toContain('title: string') // requis (pas de ?)
79
- expect(insert).toContain('subtitle?: string | null')
80
- expect(insert).toContain('views?: number')
81
- expect(insert).toContain('created_at?: string')
82
- })
83
-
84
- it('Update : toutes les colonnes optionnelles', () => {
85
- const out = generateDatabaseTypes([table('posts', [col('id', 'uuid'), col('title', 'text')])])
86
- const update = out.slice(out.indexOf('Update: {'))
87
- expect(update).toContain('id?: string')
88
- expect(update).toContain('title?: string')
89
- })
90
- })
91
-
92
- describe('generateDatabaseTypes — Relationships', () => {
93
- it('table sans FK → Relationships: []', () => {
94
- const out = generateDatabaseTypes([table('users', [col('id', 'uuid')])])
95
- expect(out).toContain('Relationships: []')
96
- })
97
-
98
- it('FK → tuple avec foreignKeyName synthétisé, isOneToOne selon unique/PK', () => {
99
- const out = generateDatabaseTypes([
100
- table('posts', [
101
- col('id', 'uuid'),
102
- col('author_id', 'uuid', { references: { table: 'users', column: 'id' } }),
103
- col('slug', 'text', { unique: true, references: { table: 'seo', column: 'slug' } }),
104
- ], { primary_key: 'id' }),
105
- ])
106
- expect(out).toContain("foreignKeyName: 'posts_author_id_fkey'")
107
- expect(out).toContain("columns: ['author_id']")
108
- expect(out).toContain("referencedRelation: 'users'")
109
- expect(out).toContain("referencedColumns: ['id']")
110
- // author_id : ni unique ni PK → false
111
- expect(out).toMatch(/author_id_fkey'[^}]*?isOneToOne: false/)
112
- // slug : unique → true
113
- expect(out).toMatch(/slug_fkey'[^}]*?isOneToOne: true/)
114
- })
115
-
116
- it('utilise references.constraint_name si présent', () => {
117
- const out = generateDatabaseTypes([
118
- table('posts', [col('author_id', 'uuid', { references: { table: 'users', column: 'id', constraint_name: 'fk_custom' } as unknown as { table: string; column: string } })]),
119
- ])
120
- expect(out).toContain("foreignKeyName: 'fk_custom'")
121
- })
122
-
123
- it('isOneToOne true via primary_key même sans unique', () => {
124
- const out = generateDatabaseTypes([
125
- table('profiles', [
126
- col('id', 'uuid', { references: { table: 'users', column: 'id' } }),
127
- ], { primary_key: 'id' }),
128
- ])
129
- expect(out).toMatch(/profiles_id_fkey'[^}]*?isOneToOne: true/)
130
- })
131
- })
132
-
133
- describe('generateDatabaseTypes — Functions', () => {
134
- it('aucune fonction → Functions: Record<string, never>', () => {
135
- const out = generateDatabaseTypes([table('users', [col('id', 'uuid')])])
136
- expect(out).toContain('Functions: Record<string, never>')
137
- })
138
-
139
- it('fonction scalaire (add(a int, b int) → int) : Args + Returns', () => {
140
- const out = generateDatabaseTypes([], {
141
- functions: [fn('add', [
142
- { name: 'a', data_type: 'int4', mode: 'IN' },
143
- { name: 'b', data_type: 'int4', mode: 'IN' },
144
- ], 'int4')],
145
- })
146
- expect(out).toContain('add: {')
147
- const block = out.slice(out.indexOf('add: {'), out.indexOf('add: {') + 300)
148
- expect(block).toMatch(/Args:\s*{\s*a: number;\s*b: number\s*}/)
149
- expect(block).toContain('Returns: number')
150
- expect(block).not.toContain('SetofOptions')
151
- })
152
-
153
- it('fonction sans argument → Args: Record<string, never>', () => {
154
- const out = generateDatabaseTypes([], { functions: [fn('now_utc', [], 'timestamp')] })
155
- const block = out.slice(out.indexOf('now_utc: {'))
156
- expect(block).toContain('Args: Record<string, never>')
157
- })
158
-
159
- it('fonction SETOF (table-returning) : Returns tableau + SetofOptions', () => {
160
- const out = generateDatabaseTypes([], {
161
- functions: [fn('list_things', [], 'record', true)],
162
- })
163
- const block = out.slice(out.indexOf('list_things: {'), out.indexOf('list_things: {') + 400)
164
- expect(block).toContain('Returns: Record<string, unknown>[]')
165
- expect(block).toContain('SetofOptions: {')
166
- expect(block).toContain('isSetofReturn: true')
167
- expect(block).toContain("to: 'list_things'")
168
- expect(block).toContain("from: '*'")
169
- })
170
-
171
- it('GEN-M1 — overloads (même nom) fusionnés en UNE clé, Args/Returns en union', () => {
172
- const out = generateDatabaseTypes([], {
173
- functions: [
174
- fn('add', [{ name: 'a', data_type: 'int4', mode: 'IN' }, { name: 'b', data_type: 'int4', mode: 'IN' }], 'int4'),
175
- fn('add', [{ name: 'a', data_type: 'text', mode: 'IN' }, { name: 'b', data_type: 'text', mode: 'IN' }], 'text'),
176
- ],
177
- })
178
- // Une seule clé `add:` (pas de duplicate identifier TS2300).
179
- expect(out.match(/add: {/g)).toHaveLength(1)
180
- const block = out.slice(out.indexOf('add: {'), out.indexOf('add: {') + 300)
181
- expect(block).toContain('Args: { a: number; b: number } | { a: string; b: string }')
182
- expect(block).toContain('Returns: number | string')
183
- })
184
-
185
- it('GEN-M1 — overloads : membres identiques dédupliqués (Args unique)', () => {
186
- const out = generateDatabaseTypes([], {
187
- functions: [
188
- fn('f', [{ name: 'x', data_type: 'int4', mode: 'IN' }], 'int4'),
189
- fn('f', [{ name: 'x', data_type: 'int4', mode: 'IN' }], 'text'), // même Args, Returns diff
190
- ],
191
- })
192
- const block = out.slice(out.indexOf('f: {'), out.indexOf('f: {') + 200)
193
- expect(block).toContain('Args: { x: number }') // pas `| { x: number }` dupliqué
194
- expect(block).toContain('Returns: number | string')
195
- })
196
-
197
- it('sortie valide TypeScript (satisfait GenericSchema[\'Functions\'])', () => {
198
- const out = generateDatabaseTypes([], {
199
- functions: [
200
- fn('add', [{ name: 'a', data_type: 'int4', mode: 'IN' }, { name: 'b', data_type: 'int4', mode: 'IN' }], 'int4'),
201
- fn('list_things', [], 'record', true),
202
- ],
203
- })
204
- expect(out).toContain('export interface Database {')
205
- })
206
- })
207
-
208
- describe('generateDatabaseTypes — SETOF <table> : SetofOptions.to résolu (P4)', () => {
209
- it('RETURNS SETOF users → to: "users" (table connue)', () => {
210
- const out = generateDatabaseTypes(
211
- [table('users', [col('id', 'uuid'), col('email', 'text')])],
212
- { functions: [fn('list_users', [], 'users', true)] },
213
- )
214
- const block = out.slice(out.indexOf('list_users: {'), out.indexOf('list_users: {') + 400)
215
- expect(block).toContain('SetofOptions: {')
216
- expect(block).toContain('isSetofReturn: true')
217
- expect(block).toContain("to: 'users'")
218
- expect(block).toContain("from: '*'")
219
- })
220
-
221
- it('RETURNS SETOF v_active (vue) → to: "v_active"', () => {
222
- const out = generateDatabaseTypes([], {
223
- views: [table('v_active', [col('id', 'uuid')])],
224
- functions: [fn('active_rows', [], 'v_active', true)],
225
- })
226
- const block = out.slice(out.indexOf('active_rows: {'), out.indexOf('active_rows: {') + 400)
227
- expect(block).toContain("to: 'v_active'")
228
- })
229
-
230
- it('RETURNS record → placeholder to: "<nom_fonction>" (aucune relation)', () => {
231
- const out = generateDatabaseTypes([], { functions: [fn('list_things', [], 'record', true)] })
232
- const block = out.slice(out.indexOf('list_things: {'), out.indexOf('list_things: {') + 400)
233
- expect(block).toContain("to: 'list_things'")
234
- expect(block).toContain('Returns: Record<string, unknown>[]')
235
- })
236
-
237
- it('returns matche un nom hors relations (type non-relation) → placeholder', () => {
238
- // `mytype` n'est ni une table ni une vue fournie → repli sur le nom de la fonction.
239
- const out = generateDatabaseTypes(
240
- [table('users', [col('id', 'uuid')])],
241
- { functions: [fn('weird', [], 'mytype', true)] },
242
- )
243
- const block = out.slice(out.indexOf('weird: {'), out.indexOf('weird: {') + 400)
244
- expect(block).toContain("to: 'weird'")
245
- })
246
-
247
- it('fonction scalaire → pas de SetofOptions (inchangé)', () => {
248
- const out = generateDatabaseTypes(
249
- [table('users', [col('id', 'uuid')])],
250
- { functions: [fn('count_users', [], 'int4', false)] },
251
- )
252
- const block = out.slice(out.indexOf('count_users: {'), out.indexOf('count_users: {') + 200)
253
- expect(block).not.toContain('SetofOptions')
254
- })
255
-
256
- it('overloads set-returning même nom → SetofOptions omis (cible ambiguë)', () => {
257
- const out = generateDatabaseTypes(
258
- [table('users', [col('id', 'uuid')])],
259
- {
260
- functions: [
261
- fn('search', [{ name: 'q', data_type: 'text', mode: 'IN' }], 'users', true),
262
- fn('search', [{ name: 'q', data_type: 'int4', mode: 'IN' }], 'users', true),
263
- ],
264
- },
265
- )
266
- const block = out.slice(out.indexOf('search: {'), out.indexOf('search: {') + 400)
267
- expect(block).not.toContain('SetofOptions')
268
- })
269
- })
270
-
271
- describe('generateDatabaseTypes — FK composites (C3)', () => {
272
- it('groupe 2 colonnes de même constraint_name → UNE relationship multi-colonnes', () => {
273
- const out = generateDatabaseTypes([
274
- table('order_items', [
275
- col('order_tenant', 'uuid', { references: { table: 'orders', column: 'tenant', constraint_name: 'fk_order' } as unknown as { table: string; column: string } }),
276
- col('order_id', 'uuid', { references: { table: 'orders', column: 'id', constraint_name: 'fk_order' } as unknown as { table: string; column: string } }),
277
- ]),
278
- ])
279
- expect(out).toContain("foreignKeyName: 'fk_order'")
280
- expect(out).toContain("columns: ['order_tenant', 'order_id']")
281
- expect(out).toContain("referencedColumns: ['tenant', 'id']")
282
- // Une seule entrée : la relationship n'apparaît qu'une fois.
283
- expect(out.match(/foreignKeyName: 'fk_order'/g)).toHaveLength(1)
284
- })
285
-
286
- it("n'agrège PAS deux FK anonymes (constraint_name absent) — 2 entrées distinctes", () => {
287
- const out = generateDatabaseTypes([
288
- table('t', [
289
- col('a_id', 'uuid', { references: { table: 'a', column: 'id' } }),
290
- col('b_id', 'uuid', { references: { table: 'b', column: 'id' } }),
291
- ]),
292
- ])
293
- expect(out).toContain("columns: ['a_id']")
294
- expect(out).toContain("columns: ['b_id']")
295
- expect(out).toContain("foreignKeyName: 't_a_id_fkey'")
296
- expect(out).toContain("foreignKeyName: 't_b_id_fkey'")
297
- })
298
- })
299
-
300
- describe('generateDatabaseTypes — Enums (C5)', () => {
301
- it('émet le bloc Enums:{mood: union} et type les colonnes {enum}', () => {
302
- const out = generateDatabaseTypes(
303
- [table('users', [col('id', 'uuid'), col('mood', { enum: 'mood' })])],
304
- { enums: [{ name: 'mood', values: ['happy', 'sad', 'ok'] }] },
305
- )
306
- expect(out).toMatch(/Enums: {\s*mood: 'happy' \| 'sad' \| 'ok'/)
307
- // La colonne enum référence le bloc Enums (auto-référence Supabase).
308
- expect(out).toContain("mood: Database['public']['Enums']['mood']")
309
- })
310
-
311
- it("enum inconnu du bloc → repli string (compile-safe)", () => {
312
- const out = generateDatabaseTypes([table('t', [col('x', { enum: 'unlisted' })])])
313
- expect(out).toContain('x: string')
314
- })
315
-
316
- it('array d’enum : {array:{enum:mood}} → Enums[mood][]', () => {
317
- const out = generateDatabaseTypes(
318
- [table('t', [col('moods', { array: { enum: 'mood' } })])],
319
- { enums: [{ name: 'mood', values: ['a', 'b'] }] },
320
- )
321
- expect(out).toContain("moods: Database['public']['Enums']['mood'][]")
322
- })
323
- })
324
-
325
- describe('generateDatabaseTypes — Views (C6)', () => {
326
- it('émet Views:{v:{Row}} (Row seul, Relationships:[])', () => {
327
- const out = generateDatabaseTypes([], {
328
- views: [table('v_active_users', [col('id', 'uuid'), col('email', 'text', { nullable: true })])],
329
- })
330
- const block = out.slice(out.indexOf('Views: '))
331
- expect(block).toContain('v_active_users: {')
332
- expect(block).toContain('Row: {')
333
- expect(block).toContain('id: string')
334
- expect(block).toContain('email: string | null')
335
- expect(block).toContain('Relationships: []')
336
- // Pas d'Insert/Update pour une vue.
337
- const viewBlock = out.slice(out.indexOf('v_active_users: {'), out.indexOf('Functions:'))
338
- expect(viewBlock).not.toContain('Insert:')
339
- expect(viewBlock).not.toContain('Update:')
340
- })
341
- })
342
-
343
- describe('generateDatabaseTypes — Functions : mapping udt_name bruts (C4)', () => {
344
- it('array udt (_text) → string[], _int4 → number[] (PAS unknown)', () => {
345
- const out = generateDatabaseTypes([], {
346
- functions: [fn('tags_of', [{ name: 'ids', data_type: '_int4', mode: 'IN' }], '_text')],
347
- })
348
- const block = out.slice(out.indexOf('tags_of: {'), out.indexOf('tags_of: {') + 300)
349
- expect(block).toContain('ids: number[]')
350
- expect(block).toContain('Returns: string[]')
351
- expect(block).not.toContain('unknown')
352
- })
353
-
354
- it('numeric → string (H5), timestamptz → string, bool → boolean', () => {
355
- const out = generateDatabaseTypes([], {
356
- functions: [fn('calc', [
357
- { name: 'amount', data_type: 'numeric', mode: 'IN' },
358
- { name: 'flag', data_type: 'bool', mode: 'IN' },
359
- { name: 'ts', data_type: 'timestamptz', mode: 'IN' },
360
- ], 'numeric')],
361
- })
362
- const block = out.slice(out.indexOf('calc: {'), out.indexOf('calc: {') + 300)
363
- expect(block).toContain('amount: string')
364
- expect(block).toContain('flag: boolean')
365
- expect(block).toContain('ts: string')
366
- expect(block).toContain('Returns: string')
367
- })
368
-
369
- it('argument/retour de type enum → référence le bloc Enums', () => {
370
- const out = generateDatabaseTypes([], {
371
- functions: [fn('set_mood', [{ name: 'm', data_type: 'mood', mode: 'IN' }], 'mood')],
372
- enums: [{ name: 'mood', values: ['a', 'b'] }],
373
- })
374
- const block = out.slice(out.indexOf('set_mood: {'), out.indexOf('set_mood: {') + 300)
375
- expect(block).toContain("m: Database['public']['Enums']['mood']")
376
- expect(block).toContain("Returns: Database['public']['Enums']['mood']")
377
- })
378
- })
379
-
380
- describe('generateDatabaseTypes — assemblage complet', () => {
381
- it('émet Json, les blocs vides, l’en-tête, et respecte les options', () => {
382
- const out = generateDatabaseTypes([table('users', [col('id', 'uuid')])], { typeName: 'DB', schemaName: 'public' })
383
- expect(out).toContain('export type Json =')
384
- expect(out).toContain('export interface DB {')
385
- expect(out).toContain('Views: Record<string, never>')
386
- expect(out).toContain('Functions: Record<string, never>')
387
- expect(out).toContain('Enums: Record<string, never>')
388
- expect(out).toContain('CompositeTypes: Record<string, never>')
389
- expect(out).toContain('auto-généré')
390
- })
391
-
392
- it('schéma vide → Tables: Record<string, never>', () => {
393
- const out = generateDatabaseTypes([])
394
- expect(out).toContain('Tables: Record<string, never>')
395
- })
396
- })
@@ -1,5 +0,0 @@
1
- {
2
- "extends": "../../tsconfig.base.json",
3
- "compilerOptions": { "outDir": "dist", "rootDir": "src", "types": ["node", "vitest/globals"] },
4
- "include": ["src"]
5
- }
@@ -1,11 +0,0 @@
1
- import { defineConfig } from 'tsup'
2
-
3
- export default defineConfig({
4
- entry: ['src/index.ts', 'src/cli.ts'],
5
- format: ['cjs', 'esm'],
6
- dts: true,
7
- splitting: false,
8
- clean: true,
9
- treeshake: true,
10
- minify: false,
11
- })
@@ -1,19 +0,0 @@
1
- #!/bin/sh
2
- basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
-
4
- case `uname` in
5
- *CYGWIN*|*MINGW*|*MSYS*)
6
- if command -v cygpath > /dev/null 2>&1; then
7
- basedir=`cygpath -w "$basedir"`
8
- fi
9
- ;;
10
- esac
11
-
12
- if [ -z "$NODE_PATH" ]; then
13
- export NODE_PATH="/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/esbuild@0.27.7/node_modules/esbuild/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/esbuild@0.27.7/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/node_modules"
14
- else
15
- export NODE_PATH="/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/esbuild@0.27.7/node_modules/esbuild/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/esbuild@0.27.7/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/node_modules:$NODE_PATH"
16
- fi
17
- "$basedir/../../../../node_modules/.pnpm/esbuild@0.27.7/node_modules/esbuild/bin/esbuild" "$@"
18
- exit $?
19
- # cmd-shim-target=/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/esbuild@0.27.7/node_modules/esbuild/bin/esbuild
@@ -1,22 +0,0 @@
1
- #!/bin/sh
2
- basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
-
4
- case `uname` in
5
- *CYGWIN*|*MINGW*|*MSYS*)
6
- if command -v cygpath > /dev/null 2>&1; then
7
- basedir=`cygpath -w "$basedir"`
8
- fi
9
- ;;
10
- esac
11
-
12
- if [ -z "$NODE_PATH" ]; then
13
- export NODE_PATH="/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/typescript@5.9.3/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/node_modules"
14
- else
15
- export NODE_PATH="/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/typescript@5.9.3/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/node_modules:$NODE_PATH"
16
- fi
17
- if [ -x "$basedir/node" ]; then
18
- exec "$basedir/node" "$basedir/../typescript/bin/tsc" "$@"
19
- else
20
- exec node "$basedir/../typescript/bin/tsc" "$@"
21
- fi
22
- # cmd-shim-target=/Users/affanedaylami/aurabase/aurabase-js/packages/notifications/node_modules/typescript/bin/tsc
@@ -1,22 +0,0 @@
1
- #!/bin/sh
2
- basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
-
4
- case `uname` in
5
- *CYGWIN*|*MINGW*|*MSYS*)
6
- if command -v cygpath > /dev/null 2>&1; then
7
- basedir=`cygpath -w "$basedir"`
8
- fi
9
- ;;
10
- esac
11
-
12
- if [ -z "$NODE_PATH" ]; then
13
- export NODE_PATH="/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/typescript@5.9.3/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/node_modules"
14
- else
15
- export NODE_PATH="/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/typescript@5.9.3/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/node_modules:$NODE_PATH"
16
- fi
17
- if [ -x "$basedir/node" ]; then
18
- exec "$basedir/node" "$basedir/../typescript/bin/tsserver" "$@"
19
- else
20
- exec node "$basedir/../typescript/bin/tsserver" "$@"
21
- fi
22
- # cmd-shim-target=/Users/affanedaylami/aurabase/aurabase-js/packages/notifications/node_modules/typescript/bin/tsserver
@@ -1,22 +0,0 @@
1
- #!/bin/sh
2
- basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
-
4
- case `uname` in
5
- *CYGWIN*|*MINGW*|*MSYS*)
6
- if command -v cygpath > /dev/null 2>&1; then
7
- basedir=`cygpath -w "$basedir"`
8
- fi
9
- ;;
10
- esac
11
-
12
- if [ -z "$NODE_PATH" ]; then
13
- export NODE_PATH="/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/tsup@8.5.1_postcss@8.5.16_typescript@5.9.3/node_modules/tsup/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/tsup@8.5.1_postcss@8.5.16_typescript@5.9.3/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/node_modules"
14
- else
15
- export NODE_PATH="/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/tsup@8.5.1_postcss@8.5.16_typescript@5.9.3/node_modules/tsup/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/tsup@8.5.1_postcss@8.5.16_typescript@5.9.3/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/node_modules:$NODE_PATH"
16
- fi
17
- if [ -x "$basedir/node" ]; then
18
- exec "$basedir/node" "$basedir/../tsup/dist/cli-default.js" "$@"
19
- else
20
- exec node "$basedir/../tsup/dist/cli-default.js" "$@"
21
- fi
22
- # cmd-shim-target=/Users/affanedaylami/aurabase/aurabase-js/packages/notifications/node_modules/tsup/dist/cli-default.js
@@ -1,22 +0,0 @@
1
- #!/bin/sh
2
- basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
-
4
- case `uname` in
5
- *CYGWIN*|*MINGW*|*MSYS*)
6
- if command -v cygpath > /dev/null 2>&1; then
7
- basedir=`cygpath -w "$basedir"`
8
- fi
9
- ;;
10
- esac
11
-
12
- if [ -z "$NODE_PATH" ]; then
13
- export NODE_PATH="/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/tsup@8.5.1_postcss@8.5.16_typescript@5.9.3/node_modules/tsup/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/tsup@8.5.1_postcss@8.5.16_typescript@5.9.3/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/node_modules"
14
- else
15
- export NODE_PATH="/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/tsup@8.5.1_postcss@8.5.16_typescript@5.9.3/node_modules/tsup/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/tsup@8.5.1_postcss@8.5.16_typescript@5.9.3/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/node_modules:$NODE_PATH"
16
- fi
17
- if [ -x "$basedir/node" ]; then
18
- exec "$basedir/node" "$basedir/../tsup/dist/cli-node.js" "$@"
19
- else
20
- exec node "$basedir/../tsup/dist/cli-node.js" "$@"
21
- fi
22
- # cmd-shim-target=/Users/affanedaylami/aurabase/aurabase-js/packages/notifications/node_modules/tsup/dist/cli-node.js
@@ -1,22 +0,0 @@
1
- #!/bin/sh
2
- basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
-
4
- case `uname` in
5
- *CYGWIN*|*MINGW*|*MSYS*)
6
- if command -v cygpath > /dev/null 2>&1; then
7
- basedir=`cygpath -w "$basedir"`
8
- fi
9
- ;;
10
- esac
11
-
12
- if [ -z "$NODE_PATH" ]; then
13
- export NODE_PATH="/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/vite@8.1.3_@types+node@20.14.15_esbuild@0.27.7/node_modules/vite/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/vite@8.1.3_@types+node@20.14.15_esbuild@0.27.7/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/node_modules"
14
- else
15
- export NODE_PATH="/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/vite@8.1.3_@types+node@20.14.15_esbuild@0.27.7/node_modules/vite/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/vite@8.1.3_@types+node@20.14.15_esbuild@0.27.7/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/node_modules:$NODE_PATH"
16
- fi
17
- if [ -x "$basedir/node" ]; then
18
- exec "$basedir/node" "$basedir/../../../../node_modules/.pnpm/vite@8.1.3_@types+node@20.14.15_esbuild@0.27.7/node_modules/vite/bin/vite.js" "$@"
19
- else
20
- exec node "$basedir/../../../../node_modules/.pnpm/vite@8.1.3_@types+node@20.14.15_esbuild@0.27.7/node_modules/vite/bin/vite.js" "$@"
21
- fi
22
- # cmd-shim-target=/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/vite@8.1.3_@types+node@20.14.15_esbuild@0.27.7/node_modules/vite/bin/vite.js
@@ -1,22 +0,0 @@
1
- #!/bin/sh
2
- basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
-
4
- case `uname` in
5
- *CYGWIN*|*MINGW*|*MSYS*)
6
- if command -v cygpath > /dev/null 2>&1; then
7
- basedir=`cygpath -w "$basedir"`
8
- fi
9
- ;;
10
- esac
11
-
12
- if [ -z "$NODE_PATH" ]; then
13
- export NODE_PATH="/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/vitest@4.1.9_@types+node@20.14.15_vite@8.1.3_@types+node@20.14.15_esbuild@0.27.7_/node_modules/vitest/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/vitest@4.1.9_@types+node@20.14.15_vite@8.1.3_@types+node@20.14.15_esbuild@0.27.7_/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/node_modules"
14
- else
15
- export NODE_PATH="/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/vitest@4.1.9_@types+node@20.14.15_vite@8.1.3_@types+node@20.14.15_esbuild@0.27.7_/node_modules/vitest/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/vitest@4.1.9_@types+node@20.14.15_vite@8.1.3_@types+node@20.14.15_esbuild@0.27.7_/node_modules:/Users/affanedaylami/aurabase/aurabase-js/node_modules/.pnpm/node_modules:$NODE_PATH"
16
- fi
17
- if [ -x "$basedir/node" ]; then
18
- exec "$basedir/node" "$basedir/../vitest/vitest.mjs" "$@"
19
- else
20
- exec node "$basedir/../vitest/vitest.mjs" "$@"
21
- fi
22
- # cmd-shim-target=/Users/affanedaylami/aurabase/aurabase-js/packages/notifications/node_modules/vitest/vitest.mjs