@tinybirdco/sdk 0.0.46 → 0.0.48

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 (98) hide show
  1. package/dist/cli/commands/init.d.ts +1 -0
  2. package/dist/cli/commands/init.d.ts.map +1 -1
  3. package/dist/cli/commands/init.js +6 -2
  4. package/dist/cli/commands/init.js.map +1 -1
  5. package/dist/cli/commands/init.test.js +69 -1
  6. package/dist/cli/commands/init.test.js.map +1 -1
  7. package/dist/cli/commands/login.d.ts.map +1 -1
  8. package/dist/cli/commands/login.js +3 -1
  9. package/dist/cli/commands/login.js.map +1 -1
  10. package/dist/cli/commands/login.test.js +9 -3
  11. package/dist/cli/commands/login.test.js.map +1 -1
  12. package/dist/cli/commands/migrate.test.js +187 -7
  13. package/dist/cli/commands/migrate.test.js.map +1 -1
  14. package/dist/generator/connection.d.ts.map +1 -1
  15. package/dist/generator/connection.js +3 -0
  16. package/dist/generator/connection.js.map +1 -1
  17. package/dist/generator/connection.test.js +8 -0
  18. package/dist/generator/connection.test.js.map +1 -1
  19. package/dist/generator/datasource.d.ts.map +1 -1
  20. package/dist/generator/datasource.js +3 -0
  21. package/dist/generator/datasource.js.map +1 -1
  22. package/dist/generator/datasource.test.js +50 -0
  23. package/dist/generator/datasource.test.js.map +1 -1
  24. package/dist/index.d.ts +1 -0
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +2 -0
  27. package/dist/index.js.map +1 -1
  28. package/dist/index.test.js +3 -0
  29. package/dist/index.test.js.map +1 -1
  30. package/dist/migrate/emit-ts.d.ts.map +1 -1
  31. package/dist/migrate/emit-ts.js +109 -32
  32. package/dist/migrate/emit-ts.js.map +1 -1
  33. package/dist/migrate/parse-connection.d.ts.map +1 -1
  34. package/dist/migrate/parse-connection.js +13 -2
  35. package/dist/migrate/parse-connection.js.map +1 -1
  36. package/dist/migrate/parse-datasource.d.ts.map +1 -1
  37. package/dist/migrate/parse-datasource.js +39 -4
  38. package/dist/migrate/parse-datasource.js.map +1 -1
  39. package/dist/migrate/parse-pipe.d.ts.map +1 -1
  40. package/dist/migrate/parse-pipe.js +3 -2
  41. package/dist/migrate/parse-pipe.js.map +1 -1
  42. package/dist/migrate/types.d.ts +3 -0
  43. package/dist/migrate/types.d.ts.map +1 -1
  44. package/dist/schema/connection.d.ts +2 -0
  45. package/dist/schema/connection.d.ts.map +1 -1
  46. package/dist/schema/connection.js.map +1 -1
  47. package/dist/schema/datasource.d.ts +3 -1
  48. package/dist/schema/datasource.d.ts.map +1 -1
  49. package/dist/schema/datasource.js +8 -1
  50. package/dist/schema/datasource.js.map +1 -1
  51. package/dist/schema/datasource.test.js +12 -0
  52. package/dist/schema/datasource.test.js.map +1 -1
  53. package/dist/schema/engines.d.ts.map +1 -1
  54. package/dist/schema/engines.js +3 -0
  55. package/dist/schema/engines.js.map +1 -1
  56. package/dist/schema/engines.test.js +16 -0
  57. package/dist/schema/engines.test.js.map +1 -1
  58. package/dist/schema/secret.d.ts +6 -0
  59. package/dist/schema/secret.d.ts.map +1 -0
  60. package/dist/schema/secret.js +14 -0
  61. package/dist/schema/secret.js.map +1 -0
  62. package/dist/schema/secret.test.d.ts +2 -0
  63. package/dist/schema/secret.test.d.ts.map +1 -0
  64. package/dist/schema/secret.test.js +14 -0
  65. package/dist/schema/secret.test.js.map +1 -0
  66. package/dist/schema/types.d.ts +5 -0
  67. package/dist/schema/types.d.ts.map +1 -1
  68. package/dist/schema/types.js +6 -0
  69. package/dist/schema/types.js.map +1 -1
  70. package/dist/schema/types.test.js +12 -0
  71. package/dist/schema/types.test.js.map +1 -1
  72. package/extension/tinybird-ts-sdk-extension-0.1.0.vsix +0 -0
  73. package/package.json +3 -2
  74. package/src/cli/commands/init.test.ts +89 -1
  75. package/src/cli/commands/init.ts +10 -2
  76. package/src/cli/commands/login.test.ts +13 -3
  77. package/src/cli/commands/login.ts +3 -1
  78. package/src/cli/commands/migrate.test.ts +279 -7
  79. package/src/generator/connection.test.ts +13 -0
  80. package/src/generator/connection.ts +4 -0
  81. package/src/generator/datasource.test.ts +60 -0
  82. package/src/generator/datasource.ts +3 -0
  83. package/src/index.test.ts +4 -0
  84. package/src/index.ts +3 -0
  85. package/src/migrate/emit-ts.ts +109 -38
  86. package/src/migrate/parse-connection.ts +15 -2
  87. package/src/migrate/parse-datasource.ts +53 -4
  88. package/src/migrate/parse-pipe.ts +5 -3
  89. package/src/migrate/types.ts +3 -0
  90. package/src/schema/connection.ts +2 -0
  91. package/src/schema/datasource.test.ts +16 -0
  92. package/src/schema/datasource.ts +13 -2
  93. package/src/schema/engines.test.ts +18 -0
  94. package/src/schema/engines.ts +3 -0
  95. package/src/schema/secret.test.ts +19 -0
  96. package/src/schema/secret.ts +16 -0
  97. package/src/schema/types.test.ts +14 -0
  98. package/src/schema/types.ts +10 -0
@@ -32,6 +32,8 @@ export interface TypeValidator<
32
32
  default(value: TType): TypeValidator<TType, TTinybirdType, TModifiers & { hasDefault: true; defaultValue: TType }>;
33
33
  /** Set a codec for compression */
34
34
  codec(codec: string): TypeValidator<TType, TTinybirdType, TModifiers & { codec: string }>;
35
+ /** Set an explicit JSON path for extraction (overrides autogenerated path) */
36
+ jsonPath(path: string): TypeValidator<TType, TTinybirdType, TModifiers & { jsonPath: string }>;
35
37
  }
36
38
 
37
39
  export interface TypeModifiers {
@@ -40,6 +42,7 @@ export interface TypeModifiers {
40
42
  hasDefault?: boolean;
41
43
  defaultValue?: unknown;
42
44
  codec?: string;
45
+ jsonPath?: string;
43
46
  }
44
47
 
45
48
  // Internal implementation
@@ -110,6 +113,13 @@ function createValidator<TType, TTinybirdType extends string>(
110
113
  codec,
111
114
  }) as TypeValidator<TType, TTinybirdType, TypeModifiers & { codec: string }>;
112
115
  },
116
+
117
+ jsonPath(path: string) {
118
+ return createValidator<TType, TTinybirdType>(tinybirdType, {
119
+ ...modifiers,
120
+ jsonPath: path,
121
+ }) as TypeValidator<TType, TTinybirdType, TypeModifiers & { jsonPath: string }>;
122
+ },
113
123
  };
114
124
 
115
125
  return validator;