@pipeline-builder/api-core 3.3.6 → 3.3.7

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.
@@ -1,16 +1,8 @@
1
1
  import type { Response } from 'express';
2
2
  /**
3
- * Generic record normalizer - ensures array fields are always arrays
4
- * @param record - The record to normalize
5
- * @param arrayFields - Fields that should be arrays
6
- * @returns Normalized record with array fields guaranteed to be arrays
3
+ * Coerce listed fields on a DB-returned record to arrays. Drizzle/pg sometimes
4
+ * returns `null` for jsonb columns when the row was inserted with a missing
5
+ * key callers expect `[]` so map iteration doesn't crash.
7
6
  */
8
7
  export declare function normalizeArrayFields<T extends Record<string, unknown>>(record: T, arrayFields: (keyof T)[]): T;
9
- /**
10
- * Generic entity not-found response
11
- * Sends standardized 404 response for missing entities
12
- * @param res - Express response object
13
- * @param entityName - Name of the entity type (e.g., "Pipeline", "Plugin")
14
- * @returns Express response
15
- */
16
8
  export declare function sendEntityNotFound(res: Response, entityName: string): void;
@@ -7,10 +7,9 @@ exports.sendEntityNotFound = sendEntityNotFound;
7
7
  const error_codes_1 = require("../types/error-codes");
8
8
  const response_1 = require("../utils/response");
9
9
  /**
10
- * Generic record normalizer - ensures array fields are always arrays
11
- * @param record - The record to normalize
12
- * @param arrayFields - Fields that should be arrays
13
- * @returns Normalized record with array fields guaranteed to be arrays
10
+ * Coerce listed fields on a DB-returned record to arrays. Drizzle/pg sometimes
11
+ * returns `null` for jsonb columns when the row was inserted with a missing
12
+ * key callers expect `[]` so map iteration doesn't crash.
14
13
  */
15
14
  function normalizeArrayFields(record, arrayFields) {
16
15
  const normalized = { ...record };
@@ -21,14 +20,7 @@ function normalizeArrayFields(record, arrayFields) {
21
20
  }
22
21
  return normalized;
23
22
  }
24
- /**
25
- * Generic entity not-found response
26
- * Sends standardized 404 response for missing entities
27
- * @param res - Express response object
28
- * @param entityName - Name of the entity type (e.g., "Pipeline", "Plugin")
29
- * @returns Express response
30
- */
31
23
  function sendEntityNotFound(res, entityName) {
32
24
  (0, response_1.sendError)(res, 404, `${entityName} not found.`, error_codes_1.ErrorCode.NOT_FOUND);
33
25
  }
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3J1ZC1oZWxwZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hlbHBlcnMvY3J1ZC1oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSwrQ0FBK0M7QUFDL0Msc0NBQXNDOztBQVl0QyxvREFXQztBQVNELGdEQUVDO0FBL0JELHNEQUFpRDtBQUNqRCxnREFBOEM7QUFFOUM7Ozs7O0dBS0c7QUFDSCxTQUFnQixvQkFBb0IsQ0FDbEMsTUFBUyxFQUNULFdBQXdCO0lBRXhCLE1BQU0sVUFBVSxHQUFHLEVBQUUsR0FBRyxNQUFNLEVBQUUsQ0FBQztJQUNqQyxLQUFLLE1BQU0sS0FBSyxJQUFJLFdBQVcsRUFBRSxDQUFDO1FBQ2hDLElBQUksS0FBSyxJQUFJLFVBQVUsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUM1RCxVQUFzQyxDQUFDLEtBQWUsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNoRSxDQUFDO0lBQ0gsQ0FBQztJQUNELE9BQU8sVUFBVSxDQUFDO0FBQ3BCLENBQUM7QUFFRDs7Ozs7O0dBTUc7QUFDSCxTQUFnQixrQkFBa0IsQ0FBQyxHQUFhLEVBQUUsVUFBa0I7SUFDbEUsSUFBQSxvQkFBUyxFQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxVQUFVLGFBQWEsRUFBRSx1QkFBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQ3ZFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgMjAyNiBQaXBlbGluZSBCdWlsZGVyIENvbnRyaWJ1dG9yc1xuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcblxuaW1wb3J0IHR5cGUgeyBSZXNwb25zZSB9IGZyb20gJ2V4cHJlc3MnO1xuaW1wb3J0IHsgRXJyb3JDb2RlIH0gZnJvbSAnLi4vdHlwZXMvZXJyb3ItY29kZXMnO1xuaW1wb3J0IHsgc2VuZEVycm9yIH0gZnJvbSAnLi4vdXRpbHMvcmVzcG9uc2UnO1xuXG4vKipcbiAqIEdlbmVyaWMgcmVjb3JkIG5vcm1hbGl6ZXIgLSBlbnN1cmVzIGFycmF5IGZpZWxkcyBhcmUgYWx3YXlzIGFycmF5c1xuICogQHBhcmFtIHJlY29yZCAtIFRoZSByZWNvcmQgdG8gbm9ybWFsaXplXG4gKiBAcGFyYW0gYXJyYXlGaWVsZHMgLSBGaWVsZHMgdGhhdCBzaG91bGQgYmUgYXJyYXlzXG4gKiBAcmV0dXJucyBOb3JtYWxpemVkIHJlY29yZCB3aXRoIGFycmF5IGZpZWxkcyBndWFyYW50ZWVkIHRvIGJlIGFycmF5c1xuICovXG5leHBvcnQgZnVuY3Rpb24gbm9ybWFsaXplQXJyYXlGaWVsZHM8VCBleHRlbmRzIFJlY29yZDxzdHJpbmcsIHVua25vd24+PihcbiAgcmVjb3JkOiBULFxuICBhcnJheUZpZWxkczogKGtleW9mIFQpW10sXG4pOiBUIHtcbiAgY29uc3Qgbm9ybWFsaXplZCA9IHsgLi4ucmVjb3JkIH07XG4gIGZvciAoY29uc3QgZmllbGQgb2YgYXJyYXlGaWVsZHMpIHtcbiAgICBpZiAoZmllbGQgaW4gbm9ybWFsaXplZCAmJiAhQXJyYXkuaXNBcnJheShub3JtYWxpemVkW2ZpZWxkXSkpIHtcbiAgICAgIChub3JtYWxpemVkIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+KVtmaWVsZCBhcyBzdHJpbmddID0gW107XG4gICAgfVxuICB9XG4gIHJldHVybiBub3JtYWxpemVkO1xufVxuXG4vKipcbiAqIEdlbmVyaWMgZW50aXR5IG5vdC1mb3VuZCByZXNwb25zZVxuICogU2VuZHMgc3RhbmRhcmRpemVkIDQwNCByZXNwb25zZSBmb3IgbWlzc2luZyBlbnRpdGllc1xuICogQHBhcmFtIHJlcyAtIEV4cHJlc3MgcmVzcG9uc2Ugb2JqZWN0XG4gKiBAcGFyYW0gZW50aXR5TmFtZSAtIE5hbWUgb2YgdGhlIGVudGl0eSB0eXBlIChlLmcuLCBcIlBpcGVsaW5lXCIsIFwiUGx1Z2luXCIpXG4gKiBAcmV0dXJucyBFeHByZXNzIHJlc3BvbnNlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzZW5kRW50aXR5Tm90Rm91bmQocmVzOiBSZXNwb25zZSwgZW50aXR5TmFtZTogc3RyaW5nKTogdm9pZCB7XG4gIHNlbmRFcnJvcihyZXMsIDQwNCwgYCR7ZW50aXR5TmFtZX0gbm90IGZvdW5kLmAsIEVycm9yQ29kZS5OT1RfRk9VTkQpO1xufVxuIl19
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3J1ZC1oZWxwZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hlbHBlcnMvY3J1ZC1oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSwrQ0FBK0M7QUFDL0Msc0NBQXNDOztBQVd0QyxvREFXQztBQUVELGdEQUVDO0FBdkJELHNEQUFpRDtBQUNqRCxnREFBOEM7QUFFOUM7Ozs7R0FJRztBQUNILFNBQWdCLG9CQUFvQixDQUNsQyxNQUFTLEVBQ1QsV0FBd0I7SUFFeEIsTUFBTSxVQUFVLEdBQUcsRUFBRSxHQUFHLE1BQU0sRUFBRSxDQUFDO0lBQ2pDLEtBQUssTUFBTSxLQUFLLElBQUksV0FBVyxFQUFFLENBQUM7UUFDaEMsSUFBSSxLQUFLLElBQUksVUFBVSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQzVELFVBQXNDLENBQUMsS0FBZSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ2hFLENBQUM7SUFDSCxDQUFDO0lBQ0QsT0FBTyxVQUFVLENBQUM7QUFDcEIsQ0FBQztBQUVELFNBQWdCLGtCQUFrQixDQUFDLEdBQWEsRUFBRSxVQUFrQjtJQUNsRSxJQUFBLG9CQUFTLEVBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLFVBQVUsYUFBYSxFQUFFLHVCQUFTLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDdkUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAyMDI2IFBpcGVsaW5lIEJ1aWxkZXIgQ29udHJpYnV0b3JzXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuXG5pbXBvcnQgdHlwZSB7IFJlc3BvbnNlIH0gZnJvbSAnZXhwcmVzcyc7XG5pbXBvcnQgeyBFcnJvckNvZGUgfSBmcm9tICcuLi90eXBlcy9lcnJvci1jb2Rlcyc7XG5pbXBvcnQgeyBzZW5kRXJyb3IgfSBmcm9tICcuLi91dGlscy9yZXNwb25zZSc7XG5cbi8qKlxuICogQ29lcmNlIGxpc3RlZCBmaWVsZHMgb24gYSBEQi1yZXR1cm5lZCByZWNvcmQgdG8gYXJyYXlzLiBEcml6emxlL3BnIHNvbWV0aW1lc1xuICogcmV0dXJucyBgbnVsbGAgZm9yIGpzb25iIGNvbHVtbnMgd2hlbiB0aGUgcm93IHdhcyBpbnNlcnRlZCB3aXRoIGEgbWlzc2luZ1xuICoga2V5IOKAlCBjYWxsZXJzIGV4cGVjdCBgW11gIHNvIG1hcCBpdGVyYXRpb24gZG9lc24ndCBjcmFzaC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG5vcm1hbGl6ZUFycmF5RmllbGRzPFQgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj4oXG4gIHJlY29yZDogVCxcbiAgYXJyYXlGaWVsZHM6IChrZXlvZiBUKVtdLFxuKTogVCB7XG4gIGNvbnN0IG5vcm1hbGl6ZWQgPSB7IC4uLnJlY29yZCB9O1xuICBmb3IgKGNvbnN0IGZpZWxkIG9mIGFycmF5RmllbGRzKSB7XG4gICAgaWYgKGZpZWxkIGluIG5vcm1hbGl6ZWQgJiYgIUFycmF5LmlzQXJyYXkobm9ybWFsaXplZFtmaWVsZF0pKSB7XG4gICAgICAobm9ybWFsaXplZCBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPilbZmllbGQgYXMgc3RyaW5nXSA9IFtdO1xuICAgIH1cbiAgfVxuICByZXR1cm4gbm9ybWFsaXplZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNlbmRFbnRpdHlOb3RGb3VuZChyZXM6IFJlc3BvbnNlLCBlbnRpdHlOYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgc2VuZEVycm9yKHJlcywgNDA0LCBgJHtlbnRpdHlOYW1lfSBub3QgZm91bmQuYCwgRXJyb3JDb2RlLk5PVF9GT1VORCk7XG59XG4iXX0=
package/package.json CHANGED
@@ -56,10 +56,17 @@
56
56
  "engines": {
57
57
  "node": ">= 24.14.0"
58
58
  },
59
+ "devEngines": {
60
+ "packageManager": {
61
+ "name": "pnpm",
62
+ "version": ">=10",
63
+ "onFail": "ignore"
64
+ }
65
+ },
59
66
  "main": "lib/index.js",
60
67
  "license": "Apache-2.0",
61
68
  "homepage": "https://mwashburn160.github.io/pipeline-builder/",
62
- "version": "3.3.6",
69
+ "version": "3.3.7",
63
70
  "bugs": {
64
71
  "url": "https://github.com/mwashburn160/pipeline-builder/issues"
65
72
  },