@fjell/lib-sequelize 4.4.74 → 4.4.76

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,5 +1,7 @@
1
1
  import { CompoundCondition, Condition, ItemQuery } from '@fjell/core';
2
2
  import { ModelStatic } from 'sequelize';
3
+ import { SequelizeReferenceDefinition } from './processing/ReferenceBuilder';
4
+ import type { Registry } from '@fjell/lib';
3
5
  export type QueryOptions = {
4
6
  where: Record<string, any>;
5
7
  limit?: number;
@@ -7,7 +9,33 @@ export type QueryOptions = {
7
9
  order?: Array<[string, string]>;
8
10
  include?: Array<any>;
9
11
  };
10
- export declare const addCompoundCondition: (options: any, compoundCondition: CompoundCondition, model: ModelStatic<any>) => any;
11
- export declare const addCondition: (conditions: Record<string, any>, condition: Condition, model: ModelStatic<any>) => Record<string, any>;
12
- export declare const buildQuery: (itemQuery: ItemQuery, model: ModelStatic<any>) => any;
12
+ export declare const addCompoundCondition: (options: any, compoundCondition: CompoundCondition, model: ModelStatic<any>, references?: SequelizeReferenceDefinition[], allReferences?: Map<string, SequelizeReferenceDefinition[]>, registry?: Registry) => any;
13
+ export declare const addCondition: (conditions: Record<string, any>, condition: Condition, model: ModelStatic<any>, options?: any, references?: SequelizeReferenceDefinition[], allReferences?: Map<string, SequelizeReferenceDefinition[]>, registry?: Registry) => Record<string, any>;
14
+ /**
15
+ * Detects references that can be loaded via Sequelize INCLUDE and adds them to options.
16
+ * This prevents N+1 queries by using JOIN instead of separate queries per item.
17
+ *
18
+ * @param options - Query options to modify
19
+ * @param model - Sequelize model to check for associations
20
+ * @param referenceDefinitions - Reference definitions from library config
21
+ * @returns Modified options with includes added, plus array of property names that were included
22
+ */
23
+ export declare const addReferenceIncludes: (options: any, model: ModelStatic<any>, referenceDefinitions: SequelizeReferenceDefinition[]) => {
24
+ options: any;
25
+ includedReferences: string[];
26
+ };
27
+ /**
28
+ * Detects aggregations that can be loaded via Sequelize INCLUDE and adds them to options.
29
+ * This prevents N+1 queries by using JOIN instead of separate queries per item.
30
+ *
31
+ * @param options - Query options to modify
32
+ * @param model - Sequelize model to check for associations
33
+ * @param aggregationDefinitions - Aggregation definitions from library config
34
+ * @returns Modified options with includes added, plus array of property names that were included
35
+ */
36
+ export declare const addAggregationIncludes: (options: any, model: ModelStatic<any>, aggregationDefinitions: any[]) => {
37
+ options: any;
38
+ includedAggregations: string[];
39
+ };
40
+ export declare const buildQuery: (itemQuery: ItemQuery, model: ModelStatic<any>, references?: SequelizeReferenceDefinition[], registry?: Registry) => any;
13
41
  //# sourceMappingURL=QueryBuilder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"QueryBuilder.d.ts","sourceRoot":"","sources":["../src/QueryBuilder.ts"],"names":[],"mappings":"AACA,OAAO,EACL,iBAAiB,EACjB,SAAS,EAKT,SAAS,EAIV,MAAM,aAAa,CAAC;AAErB,OAAO,EAAe,WAAW,EAAM,MAAM,WAAW,CAAC;AAMzD,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAChC,OAAO,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;CACtB,CAAA;AAkFD,eAAO,MAAM,oBAAoB,GAAI,SAAS,GAAG,EAAE,mBAAmB,iBAAiB,EAAE,OAAO,WAAW,CAAC,GAAG,CAAC,QAoC/G,CAAA;AAoHD,eAAO,MAAM,YAAY,GAAI,YAAY,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,WAAW,SAAS,EAAE,OAAO,WAAW,CAAC,GAAG,CAAC,wBAU1G,CAAA;AAuED,eAAO,MAAM,UAAU,GACrB,WAAW,SAAS,EACpB,OAAO,WAAW,CAAC,GAAG,CAAC,KACtB,GAqDF,CAAA"}
1
+ {"version":3,"file":"QueryBuilder.d.ts","sourceRoot":"","sources":["../src/QueryBuilder.ts"],"names":[],"mappings":"AACA,OAAO,EACL,iBAAiB,EACjB,SAAS,EAKT,SAAS,EAIV,MAAM,aAAa,CAAC;AAErB,OAAO,EAAe,WAAW,EAAM,MAAM,WAAW,CAAC;AAGzD,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAC7E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAI3C,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAChC,OAAO,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;CACtB,CAAA;AAkFD,eAAO,MAAM,oBAAoB,GAC/B,SAAS,GAAG,EACZ,mBAAmB,iBAAiB,EACpC,OAAO,WAAW,CAAC,GAAG,CAAC,EACvB,aAAa,4BAA4B,EAAE,EAC3C,gBAAgB,GAAG,CAAC,MAAM,EAAE,4BAA4B,EAAE,CAAC,EAC3D,WAAW,QAAQ,QAqCpB,CAAA;AAqfD,eAAO,MAAM,YAAY,GACvB,YAAY,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC/B,WAAW,SAAS,EACpB,OAAO,WAAW,CAAC,GAAG,CAAC,EACvB,UAAU,GAAG,EACb,aAAa,4BAA4B,EAAE,EAC3C,gBAAgB,GAAG,CAAC,MAAM,EAAE,4BAA4B,EAAE,CAAC,EAC3D,WAAW,QAAQ,wBAWpB,CAAA;AAuED;;;;;;;;GAQG;AACH,eAAO,MAAM,oBAAoB,GAC/B,SAAS,GAAG,EACZ,OAAO,WAAW,CAAC,GAAG,CAAC,EACvB,sBAAsB,4BAA4B,EAAE,KACnD;IAAE,OAAO,EAAE,GAAG,CAAC;IAAC,kBAAkB,EAAE,MAAM,EAAE,CAAA;CAiD9C,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,GACjC,SAAS,GAAG,EACZ,OAAO,WAAW,CAAC,GAAG,CAAC,EACvB,wBAAwB,GAAG,EAAE,KAC5B;IAAE,OAAO,EAAE,GAAG,CAAC;IAAC,oBAAoB,EAAE,MAAM,EAAE,CAAA;CAiDhD,CAAC;AAEF,eAAO,MAAM,UAAU,GACrB,WAAW,SAAS,EACpB,OAAO,WAAW,CAAC,GAAG,CAAC,EACvB,aAAa,4BAA4B,EAAE,EAC3C,WAAW,QAAQ,KAClB,GAuEF,CAAA"}
@@ -5,5 +5,5 @@ import * as Library from "@fjell/lib";
5
5
  import { contextManager, createOperationContext, OperationContext } from "@fjell/lib";
6
6
  export type { OperationContext };
7
7
  export { createOperationContext, contextManager };
8
- export declare const processRow: <S extends string, L1 extends string = never, L2 extends string = never, L3 extends string = never, L4 extends string = never, L5 extends string = never>(row: Model<any, any>, keyTypes: AllItemTypeArrays<S, L1, L2, L3, L4, L5>, referenceDefinitions: SequelizeReferenceDefinition[], aggregationDefinitions: AggregationDefinition[], registry: Library.Registry, context?: OperationContext) => Promise<Item<S, L1, L2, L3, L4, L5>>;
8
+ export declare const processRow: <S extends string, L1 extends string = never, L2 extends string = never, L3 extends string = never, L4 extends string = never, L5 extends string = never>(row: Model<any, any>, keyTypes: AllItemTypeArrays<S, L1, L2, L3, L4, L5>, referenceDefinitions: SequelizeReferenceDefinition[], aggregationDefinitions: AggregationDefinition[], registry: Library.Registry, context?: OperationContext, includedAggregations?: string[], includedReferences?: string[]) => Promise<Item<S, L1, L2, L3, L4, L5>>;
9
9
  //# sourceMappingURL=RowProcessor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RowProcessor.d.ts","sourceRoot":"","sources":["../src/RowProcessor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAIlC,OAAO,EAAE,qBAAqB,EAAE,4BAA4B,EAAE,MAAM,WAAW,CAAC;AAChF,OAAO,KAAK,OAAO,MAAM,YAAY,CAAC;AACtC,OAAO,EAEL,cAAc,EACd,sBAAsB,EACtB,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAUpB,YAAY,EAAE,gBAAgB,EAAE,CAAC;AACjC,OAAO,EAAE,sBAAsB,EAAE,cAAc,EAAE,CAAC;AAElD,eAAO,MAAM,UAAU,GAAU,CAAC,SAAS,MAAM,EAC/C,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACvB,KAAK,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EACpB,UAAU,iBAAiB,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAClD,sBAAsB,4BAA4B,EAAE,EACpD,wBAAwB,qBAAqB,EAAE,EAC/C,UAAU,OAAO,CAAC,QAAQ,EAC1B,UAAU,gBAAgB,KACzB,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAqEvC,CAAC"}
1
+ {"version":3,"file":"RowProcessor.d.ts","sourceRoot":"","sources":["../src/RowProcessor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAIlC,OAAO,EAAE,qBAAqB,EAAE,4BAA4B,EAAE,MAAM,WAAW,CAAC;AAChF,OAAO,KAAK,OAAO,MAAM,YAAY,CAAC;AACtC,OAAO,EAEL,cAAc,EACd,sBAAsB,EACtB,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAUpB,YAAY,EAAE,gBAAgB,EAAE,CAAC;AACjC,OAAO,EAAE,sBAAsB,EAAE,cAAc,EAAE,CAAC;AAElD,eAAO,MAAM,UAAU,GAAU,CAAC,SAAS,MAAM,EAC/C,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACzB,EAAE,SAAS,MAAM,GAAG,KAAK,EACvB,KAAK,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EACpB,UAAU,iBAAiB,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAClD,sBAAsB,4BAA4B,EAAE,EACpD,wBAAwB,qBAAqB,EAAE,EAC/C,UAAU,OAAO,CAAC,QAAQ,EAC1B,UAAU,gBAAgB,EAC1B,uBAAuB,MAAM,EAAE,EAC/B,qBAAqB,MAAM,EAAE,KAE5B,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CA0GvC,CAAC"}