@soulbatical/tetra-core 0.2.0 β†’ 0.2.2

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.

Potentially problematic release.


This version of @soulbatical/tetra-core might be problematic. Click here for more details.

Files changed (41) hide show
  1. package/README.md +212 -53
  2. package/dist/core/createApp.d.ts +1 -1
  3. package/dist/index.d.ts +2 -2
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/index.js +1 -1
  6. package/dist/index.js.map +1 -1
  7. package/dist/mcp.d.ts +2 -2
  8. package/dist/mcp.d.ts.map +1 -1
  9. package/dist/mcp.js +1 -1
  10. package/dist/mcp.js.map +1 -1
  11. package/dist/middleware/securityMiddleware.d.ts +1 -1
  12. package/dist/middleware/validateQueryParams.d.ts +1 -1
  13. package/dist/middleware/validateQueryParams.d.ts.map +1 -1
  14. package/dist/middleware/validateQueryParams.js +1 -1
  15. package/dist/middleware/validateQueryParams.js.map +1 -1
  16. package/dist/shared/controllers/BaseMutationController.d.ts +1 -1
  17. package/dist/shared/controllers/BaseMutationController.d.ts.map +1 -1
  18. package/dist/shared/controllers/BaseQueryController.d.ts +4 -4
  19. package/dist/shared/factories/QueryServiceFactory.d.ts +16 -14
  20. package/dist/shared/factories/QueryServiceFactory.d.ts.map +1 -1
  21. package/dist/shared/factories/QueryServiceFactory.js +1 -1
  22. package/dist/shared/factories/QueryServiceFactory.js.map +1 -1
  23. package/dist/shared/mcp/index.d.ts +2 -0
  24. package/dist/shared/mcp/index.d.ts.map +1 -1
  25. package/dist/shared/mcp/index.js +2 -0
  26. package/dist/shared/mcp/index.js.map +1 -1
  27. package/dist/shared/mcp/mcp-db.d.ts +99 -0
  28. package/dist/shared/mcp/mcp-db.d.ts.map +1 -0
  29. package/dist/shared/mcp/mcp-db.js +106 -0
  30. package/dist/shared/mcp/mcp-db.js.map +1 -0
  31. package/dist/shared/planner/PlannerService.js.map +1 -1
  32. package/dist/shared/services/SimpleRPCQueryService.d.ts +2 -2
  33. package/dist/shared/services/SimpleRPCQueryService.d.ts.map +1 -1
  34. package/dist/shared/services/TableQueryService.d.ts +4 -4
  35. package/dist/shared/services/TableQueryService.d.ts.map +1 -1
  36. package/dist/shared/utils/response-mapper.js +2 -2
  37. package/dist/shared/utils/response-mapper.js.map +1 -1
  38. package/dist/shared/validators/featureConfigValidator.d.ts.map +1 -1
  39. package/dist/shared/validators/featureConfigValidator.js +6 -5
  40. package/dist/shared/validators/featureConfigValidator.js.map +1 -1
  41. package/package.json +8 -5
@@ -55,11 +55,11 @@ export function mapCountsFromRPC(rpcData, featureConfig) {
55
55
  total: rpcData.total || 0
56
56
  };
57
57
  logger.debug({
58
- filterCount: featureConfig.filters.length,
58
+ filterCount: featureConfig.filters?.length ?? 0,
59
59
  rpcKeys: Object.keys(rpcData)
60
60
  }, 'πŸ—ΊοΈ Mapping RPC response to API format');
61
61
  // Process each filter in config
62
- featureConfig.filters.forEach((filter) => {
62
+ (featureConfig.filters ?? []).forEach((filter) => {
63
63
  const countsKey = filter.countsKey;
64
64
  if (!countsKey) {
65
65
  // Filter has no counts (e.g., search filter)
@@ -1 +1 @@
1
- {"version":3,"file":"response-mapper.js","sourceRoot":"","sources":["../../../src/shared/utils/response-mapper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,MAAM,MAAM,GAAG,YAAY,CAAC,uBAAuB,CAAC,CAAC;AAErD;;GAEG;AACH,qCAAqC;AAErC;;;;;;;;;;GAUG;AACH,SAAS,mBAAmB,CAAC,WAAmB;IAC9C,OAAO,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AACxC,CAAC;AAGD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,gBAAgB,CAC9B,OAAY,EACZ,aAA4B;IAE5B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;QAC9C,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACtB,CAAC;IAED,MAAM,MAAM,GAAwB;QAClC,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;KAC1B,CAAC;IAEF,MAAM,CAAC,KAAK,CAAC;QACX,WAAW,EAAE,aAAa,CAAC,OAAO,CAAC,MAAM;QACzC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;KAC9B,EAAE,yCAAyC,CAAC,CAAC;IAE9C,gCAAgC;IAChC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAoB,EAAE,EAAE;QACrD,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,6CAA6C;YAC7C,OAAO;QACT,CAAC;QAED,MAAM,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;QAEtC,oDAAoD;QACpD,iEAAiE;QACjE,kCAAkC;QAClC,0DAA0D;QAE1D,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC;YACxB,4CAA4C;YAC5C,MAAM,CAAC,SAAS,CAAC,GAAG,UAAU,IAAI,EAAE,CAAC;YACrC,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,8BAA8B,CAAC,CAAC;YACjF,OAAO;QACT,CAAC;QAED,4CAA4C;QAC5C,MAAM,iBAAiB,GAA2B,EAAE,CAAC;QAErD,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACjC,4CAA4C;YAC5C,IAAI,MAAM,CAAC,KAAK,KAAK,KAAK;gBAAE,OAAO;YAEnC,0CAA0C;YAC1C,0DAA0D;YAC1D,4CAA4C;YAC5C,8DAA8D;YAC9D,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC;YAC/B,iBAAiB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;QAEH,2EAA2E;QAC3E,MAAM,eAAe,GAA2B,EAAE,CAAC;QAEnD,IAAI,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YACjD,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;gBACjC,IAAI,MAAM,CAAC,KAAK,KAAK,KAAK;oBAAE,OAAO;gBAEnC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAE,6CAA6C;gBAC9E,MAAM,MAAM,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC,CAAE,6CAA6C;gBAE7F,4FAA4F;gBAC5F,4EAA4E;gBAC5E,MAAM,YAAY,GAAG,UAAU,CAAC,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;gBAE3E,IAAI,UAAU,CAAC,YAAY,CAAC,KAAK,SAAS,EAAE,CAAC;oBAC3C,+CAA+C;oBAC/C,MAAM,IAAI,KAAK,CACb,mDAAmD;wBACnD,YAAY,MAAM,CAAC,IAAI,MAAM,MAAM,CAAC,IAAI,KAAK;wBAC7C,yBAAyB,SAAS,KAAK;wBACvC,qBAAqB,MAAM,kBAAkB,SAAS,MAAM;wBAC5D,wBAAwB,SAAS,KAAK,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;wBAC5E,IAAI;wBACJ,kFAAkF;wBAClF,MAAM,SAAS,yBAAyB;wBACxC,QAAQ,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,mBAAmB,CAAC,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI;wBACvI,QAAQ;wBACR,IAAI;wBACJ,+BAA+B;wBAC/B,MAAM,SAAS,yBAAyB,MAAM,gBAAgB,CAC/D,CAAC;gBACJ,CAAC;gBAED,4DAA4D;gBAC5D,eAAe,CAAC,SAAS,CAAC,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;YACxD,CAAC,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACpC,kDAAkD;YAClD,MAAM,IAAI,KAAK,CACb,yCAAyC;gBACzC,YAAY,MAAM,CAAC,IAAI,MAAM,MAAM,CAAC,IAAI,KAAK;gBAC7C,yBAAyB,SAAS,KAAK;gBACvC,sBAAsB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;gBACzD,IAAI;gBACJ,oFAAoF;gBACpF,MAAM,SAAS,yBAAyB;gBACxC,QAAQ,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,mBAAmB,CAAC,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI;gBACvI,MAAM,CACP,CAAC;QACJ,CAAC;QAED,qDAAqD;QACrD,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,iBAAiB,EAAE,GAAG,eAAe,EAAE,CAAC;QAEjE,MAAM,CAAC,KAAK,CAAC;YACX,MAAM,EAAE,MAAM,CAAC,IAAI;YACnB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,SAAS;YACT,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,MAAM;SACpD,EAAE,4CAA4C,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,qDAAqD;IACrD,8EAA8E;IAC9E,IAAI,aAAa,CAAC,MAAM,EAAE,CAAC;QACzB,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YACnD,mDAAmD;YACnD,IAAI,QAAQ,KAAK,OAAO,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,SAAS,EAAE,CAAC;gBAC3D,OAAO;YACT,CAAC;YAED,mDAAmD;YACnD,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,SAAS,EAAE,CAAC;gBACpC,MAAM,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;gBACrC,MAAM,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,2BAA2B,CAAC,CAAC;YACpF,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,KAAK,CAAC;QACX,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;QAC/B,KAAK,EAAE,MAAM,CAAC,KAAK;KACpB,EAAE,6BAA6B,CAAC,CAAC;IAElC,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;;GAUG"}
1
+ {"version":3,"file":"response-mapper.js","sourceRoot":"","sources":["../../../src/shared/utils/response-mapper.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"featureConfigValidator.d.ts","sourceRoot":"","sources":["../../../src/shared/validators/featureConfigValidator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAU3D;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAEzE;AASD;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAkHtF;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,IAAI,CAiBtF"}
1
+ {"version":3,"file":"featureConfigValidator.d.ts","sourceRoot":"","sources":["../../../src/shared/validators/featureConfigValidator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAU3D;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAEzE;AASD;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAmHtF;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,IAAI,CAiBtF"}
@@ -63,21 +63,22 @@ export function validateFeatureConfig(config, featureName) {
63
63
  if (config.includeMapping) {
64
64
  Object.entries(config.includeMapping).forEach(([key, mapping]) => {
65
65
  // Check for correct snake_case in table names
66
- if (mapping.tableName.includes('-')) {
66
+ const tName = mapping.tableName ?? key;
67
+ if (tName.includes('-')) {
67
68
  errors.push({
68
69
  feature: featureName,
69
70
  field: `includeMapping.${key}.tableName`,
70
- error: `Uses hyphens instead of underscores: '${mapping.tableName}'`,
71
- fix: `Use snake_case: '${mapping.tableName.replace(/-/g, '_')}'`
71
+ error: `Uses hyphens instead of underscores: '${tName}'`,
72
+ fix: `Use snake_case: '${tName.replace(/-/g, '_')}'`
72
73
  });
73
74
  }
74
75
  // Check for common typos β€” projects can register their own via addWrongTableNames()
75
- const correctName = wrongTableNames[mapping.tableName];
76
+ const correctName = wrongTableNames[tName];
76
77
  if (correctName) {
77
78
  errors.push({
78
79
  feature: featureName,
79
80
  field: `includeMapping.${key}.tableName`,
80
- error: `Incorrect table name: '${mapping.tableName}'`,
81
+ error: `Incorrect table name: '${tName}'`,
81
82
  fix: `Should be: '${correctName}'`
82
83
  });
83
84
  }
@@ -1 +1 @@
1
- {"version":3,"file":"featureConfigValidator.js","sourceRoot":"","sources":["../../../src/shared/validators/featureConfigValidator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"featureConfigValidator.js","sourceRoot":"","sources":["../../../src/shared/validators/featureConfigValidator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@soulbatical/tetra-core",
3
- "version": "0.2.0",
3
+ "version": "0.2.2",
4
4
  "publishConfig": {
5
5
  "access": "restricted"
6
6
  },
@@ -79,6 +79,8 @@
79
79
  "prepublishOnly": "npm run build && npm run typecheck && npx tetra-check-peers",
80
80
  "check:peers": "npx tetra-check-peers",
81
81
  "typecheck": "tsc --noEmit",
82
+ "test": "vitest run",
83
+ "test:watch": "vitest",
82
84
  "enforce:api": "./scripts/enforce-api-standards.sh"
83
85
  },
84
86
  "dependencies": {
@@ -94,10 +96,10 @@
94
96
  "@mollie/api-client": "^4.0.0",
95
97
  "@supabase/supabase-js": "^2.93.3",
96
98
  "@tanstack/react-table": "^8.0.0",
97
- "express": "^5.0.0",
98
- "pino": "^9.0.0",
99
- "react": "^18.0.0 || ^19.0.0",
99
+ "express": "^4.21.0 || ^5.0.0",
100
100
  "multer": "^1.4.5 || ^2.0.0",
101
+ "pino": "^9.0.0 || ^10.0.0",
102
+ "react": "^18.0.0 || ^19.0.0",
101
103
  "sharp": ">=0.33.0",
102
104
  "stripe": "^17.0.0 || ^20.0.0"
103
105
  },
@@ -141,7 +143,8 @@
141
143
  "pino": "^9.12.0",
142
144
  "react": "^19.2.4",
143
145
  "stripe": "^17.7.0",
144
- "typescript": "^5.7.3"
146
+ "typescript": "^5.7.3",
147
+ "vitest": "^4.1.0"
145
148
  },
146
149
  "keywords": [
147
150
  "tetra",