vona-module-a-orm 5.1.39 → 5.1.40

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 (46) hide show
  1. package/dist/.metadata/index.d.ts +18 -18
  2. package/dist/.metadata/index.d.ts.map +1 -1
  3. package/dist/index.js +358 -48
  4. package/dist/index.js.map +1 -1
  5. package/dist/lib/aggregateResult.d.ts +7 -0
  6. package/dist/lib/aggregateResult.d.ts.map +1 -0
  7. package/dist/lib/analysis/controls.d.ts +27 -0
  8. package/dist/lib/analysis/controls.d.ts.map +1 -0
  9. package/dist/lib/analysis/execute.d.ts +6 -0
  10. package/dist/lib/analysis/execute.d.ts.map +1 -0
  11. package/dist/lib/analysis/index.d.ts +4 -0
  12. package/dist/lib/analysis/index.d.ts.map +1 -0
  13. package/dist/lib/analysis/policy.d.ts +6 -0
  14. package/dist/lib/analysis/policy.d.ts.map +1 -0
  15. package/dist/lib/bean.model/bean.model_cache.d.ts.map +1 -1
  16. package/dist/lib/bean.model/bean.model_crud_inner.d.ts +1 -1
  17. package/dist/lib/bean.model/bean.model_crud_inner.d.ts.map +1 -1
  18. package/dist/lib/dto/dto.d.ts +3 -0
  19. package/dist/lib/dto/dto.d.ts.map +1 -1
  20. package/dist/lib/dto/dtoAggregate.d.ts.map +1 -1
  21. package/dist/lib/dto/dtoAnalysis.d.ts +6 -0
  22. package/dist/lib/dto/dtoAnalysis.d.ts.map +1 -0
  23. package/dist/lib/index.d.ts +1 -0
  24. package/dist/lib/index.d.ts.map +1 -1
  25. package/dist/types/analysis.d.ts +105 -0
  26. package/dist/types/analysis.d.ts.map +1 -0
  27. package/dist/types/index.d.ts +1 -0
  28. package/dist/types/index.d.ts.map +1 -1
  29. package/dist/types/relationsAggr.d.ts +1 -1
  30. package/dist/types/relationsAggr.d.ts.map +1 -1
  31. package/package.json +2 -2
  32. package/src/.metadata/index.ts +26 -26
  33. package/src/lib/aggregateResult.ts +53 -0
  34. package/src/lib/analysis/controls.ts +163 -0
  35. package/src/lib/analysis/execute.ts +49 -0
  36. package/src/lib/analysis/index.ts +3 -0
  37. package/src/lib/analysis/policy.ts +140 -0
  38. package/src/lib/bean.model/bean.model_cache.ts +4 -2
  39. package/src/lib/bean.model/bean.model_crud_inner.ts +8 -3
  40. package/src/lib/dto/dto.ts +3 -0
  41. package/src/lib/dto/dtoAggregate.ts +4 -1
  42. package/src/lib/dto/dtoAnalysis.ts +34 -0
  43. package/src/lib/index.ts +1 -0
  44. package/src/types/analysis.ts +137 -0
  45. package/src/types/index.ts +1 -0
  46. package/src/types/relationsAggr.ts +1 -1
@@ -0,0 +1,7 @@
1
+ type AggregateFunction = 'count' | 'sum' | 'avg' | 'min' | 'max';
2
+ type AggregateSpec = Partial<Record<AggregateFunction, PropertyKey | readonly PropertyKey[]>>;
3
+ export declare function normalizeAggregateValue(value: unknown, fn: 'count'): string | undefined;
4
+ export declare function normalizeAggregateValue(value: unknown, fn: AggregateFunction): string | null | undefined;
5
+ export declare function normalizeAggregateRows<T extends {}>(rows: T[], aggrs?: AggregateSpec): T[];
6
+ export {};
7
+ //# sourceMappingURL=aggregateResult.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aggregateResult.d.ts","sourceRoot":"","sources":["../../src/lib/aggregateResult.ts"],"names":[],"mappings":"AAAA,KAAK,iBAAiB,GAAG,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;AACjE,KAAK,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,WAAW,GAAG,SAAS,WAAW,EAAE,CAAC,CAAC,CAAC;AAE9F,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;AACzF,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,OAAO,EACd,EAAE,EAAE,iBAAiB,GACpB,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;AAmB7B,wBAAgB,sBAAsB,CAAC,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,aAAa,GAAG,CAAC,EAAE,CA0B1F"}
@@ -0,0 +1,27 @@
1
+ import z from 'zod';
2
+ import type { IAnalysisCapabilities, IAnalysisPolicy, IResolvedAnalysis, TypeAnalysisFunction, TypeAnalysisMode } from '../../types/analysis.ts';
3
+ export declare const analysisFunctions: readonly ["count", "sum", "avg", "min", "max"];
4
+ export declare const analysisReservedFields: Set<string>;
5
+ /** A deliberate validation/resource-bound error, also usable without an application context. */
6
+ export declare class AnalysisError extends Error {
7
+ readonly code = 422;
8
+ readonly status = 422;
9
+ }
10
+ export declare function analysisFailure(message: string): never;
11
+ /** Native array/object schemas preserve finite enums for query coercion and OpenAPI. */
12
+ export declare function analysisControlSchemas(policy: IAnalysisPolicy, mode: TypeAnalysisMode): {
13
+ groups: z.ZodDefault<z.ZodArray<z.ZodEnum<{
14
+ [x: string]: string;
15
+ }>>> | undefined;
16
+ aggrs: z.ZodDefault<z.ZodObject<Partial<Record<TypeAnalysisFunction, z.ZodType<unknown, unknown, z.z.core.$ZodTypeInternals<unknown, unknown>>>>, z.z.core.$strict>>;
17
+ selection: z.ZodObject<{
18
+ groups: z.ZodDefault<z.ZodArray<z.ZodEnum<{
19
+ [x: string]: string;
20
+ }>>> | z.ZodOptional<z.ZodNever>;
21
+ aggrs: z.ZodDefault<z.ZodObject<Partial<Record<TypeAnalysisFunction, z.ZodType<unknown, unknown, z.z.core.$ZodTypeInternals<unknown, unknown>>>>, z.z.core.$strict>>;
22
+ }, z.z.core.$strict>;
23
+ };
24
+ /** Validate controls independently of row filters and ignored list controls. */
25
+ export declare function resolveAnalysis(policy: IAnalysisPolicy, mode: TypeAnalysisMode, input?: unknown): IResolvedAnalysis;
26
+ export declare function analysisCapabilities(policy: IAnalysisPolicy, mode: TypeAnalysisMode): IAnalysisCapabilities;
27
+ //# sourceMappingURL=controls.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"controls.d.ts","sourceRoot":"","sources":["../../../src/lib/analysis/controls.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,OAAO,KAAK,EACV,qBAAqB,EACrB,eAAe,EAEf,iBAAiB,EACjB,oBAAoB,EACpB,gBAAgB,EACjB,MAAM,yBAAyB,CAAC;AAEjC,eAAO,MAAM,iBAAiB,gDAAiD,CAAC;AAChF,eAAO,MAAM,sBAAsB,aAejC,CAAC;AAEH,gGAAgG;AAChG,qBAAa,aAAc,SAAQ,KAAK;IACtC,QAAQ,CAAC,IAAI,OAAO;IACpB,QAAQ,CAAC,MAAM,OAAO;CACvB;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,CAEtD;AAqBD,wFAAwF;AACxF,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,gBAAgB;;;;;;;;;;;EAgCrF;AAED,gFAAgF;AAChF,wBAAgB,eAAe,CAC7B,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,gBAAgB,EACtB,KAAK,CAAC,EAAE,OAAO,GACd,iBAAiB,CA2CnB;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,gBAAgB,GACrB,qBAAqB,CAgBvB"}
@@ -0,0 +1,6 @@
1
+ import type { IAnalysisPolicy, TypeAnalysisAggregateParams, TypeAnalysisAggregateResult, TypeAnalysisGroupParams, TypeAnalysisGroupResult } from '../../types/analysis.ts';
2
+ import type { TypeModelOfModelLike } from '../../types/relations.ts';
3
+ /** Keep instance/soft-delete scope, caching and scalar normalization owned by the ORM. */
4
+ export declare function $executeAnalysisGroup<Policy extends IAnalysisPolicy>(model: TypeModelOfModelLike<Policy['modelLike']>, policy: Policy, params?: TypeAnalysisGroupParams<Policy>): Promise<TypeAnalysisGroupResult<Policy>[]>;
5
+ export declare function $executeAnalysisAggregate<Policy extends IAnalysisPolicy>(model: TypeModelOfModelLike<Policy['modelLike']>, policy: Policy, params?: TypeAnalysisAggregateParams<Policy>): Promise<TypeAnalysisAggregateResult<Policy>>;
6
+ //# sourceMappingURL=execute.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../../src/lib/analysis/execute.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,2BAA2B,EAC3B,2BAA2B,EAC3B,uBAAuB,EACvB,uBAAuB,EACxB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAUrE,0FAA0F;AAC1F,wBAAsB,qBAAqB,CAAC,MAAM,SAAS,eAAe,EACxE,KAAK,EAAE,oBAAoB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,EAChD,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,uBAAuB,CAAC,MAAM,CAAC,GACvC,OAAO,CAAC,uBAAuB,CAAC,MAAM,CAAC,EAAE,CAAC,CAa5C;AAED,wBAAsB,yBAAyB,CAAC,MAAM,SAAS,eAAe,EAC5E,KAAK,EAAE,oBAAoB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,EAChD,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,2BAA2B,CAAC,MAAM,CAAC,GAC3C,OAAO,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAC,CAO9C"}
@@ -0,0 +1,4 @@
1
+ export * from './controls.ts';
2
+ export * from './execute.ts';
3
+ export * from './policy.ts';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/analysis/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { IAnalysisConfig, TypeAnalysisAllowedAggrs, TypeAnalysisEntity, TypeAnalysisField, TypeAnalysisFunction, TypeAnalysisModelLike, TypeAnalysisPolicy } from '../../types/analysis.ts';
2
+ /** Static model/entity metadata only: safe while DTO classes are being evaluated. */
3
+ export declare function $defineAnalysis<ModelLike extends TypeAnalysisModelLike, const Groups extends readonly TypeAnalysisField<TypeAnalysisEntity<ModelLike>>[], const Aggrs extends TypeAnalysisAllowedAggrs<TypeAnalysisEntity<ModelLike>>>(modelLike: ModelLike, config: IAnalysisConfig<Groups, Aggrs> & {
4
+ aggrs: Aggrs & Record<Exclude<keyof Aggrs, TypeAnalysisFunction>, never>;
5
+ }): TypeAnalysisPolicy<ModelLike, Groups, Aggrs>;
6
+ //# sourceMappingURL=policy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../../src/lib/analysis/policy.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,eAAe,EAGf,wBAAwB,EACxB,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,yBAAyB,CAAC;AA6BjC,qFAAqF;AACrF,wBAAgB,eAAe,CAC7B,SAAS,SAAS,qBAAqB,EACvC,KAAK,CAAC,MAAM,SAAS,SAAS,iBAAiB,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,EAAE,EAChF,KAAK,CAAC,KAAK,SAAS,wBAAwB,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,EAE3E,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG;IACvC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,EAAE,oBAAoB,CAAC,EAAE,KAAK,CAAC,CAAC;CAC1E,GACA,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,CAuF9C"}
@@ -1 +1 @@
1
- {"version":3,"file":"bean.model_cache.d.ts","sourceRoot":"","sources":["../../../src/lib/bean.model/bean.model_cache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bean.model_cache.d.ts","sourceRoot":"","sources":["../../../src/lib/bean.model/bean.model_cache.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ import { BeanModelView } from './bean.model_view.ts';
5
5
  export declare class BeanModelCrudInner<TRecord extends {}> extends BeanModelView<TRecord> {
6
6
  protected _mget(table?: keyof ITableRecord, ids?: TableIdentity[], options?: IModelGetOptionsGeneral<TRecord>): Promise<TRecord[]>;
7
7
  protected _mget_original(table?: keyof ITableRecord, ids?: TableIdentity[], options?: IModelGetOptionsGeneral<TRecord>): Promise<(TRecord | undefined)[]>;
8
- protected _select<T extends IModelSelectParams<TRecord> | IBuildModelSelectParams<TRecord, undefined, never>>(table?: keyof ITableRecord, params?: T, options?: IModelMethodOptionsGeneral, builder?: Knex.QueryBuilder<TRecord, TRecord[]>): Promise<TRecord[]>;
8
+ protected _select<T extends (IModelSelectParams<TRecord> | IBuildModelSelectParams<TRecord, undefined, never>) & Pick<IModelSelectGeneralParams<TRecord>, 'aggrs'>>(table?: keyof ITableRecord, params?: T, options?: IModelMethodOptionsGeneral, builder?: Knex.QueryBuilder<TRecord, TRecord[]>): Promise<TRecord[]>;
9
9
  protected _select_buildParams<T extends IModelSelectGeneralParams<TRecord>>(table: keyof ITableRecord, params?: T, options?: IModelMethodOptionsGeneral): Knex.QueryBuilder<TRecord, TRecord[]>;
10
10
  protected _get(table: keyof ITableRecord | undefined, where: TypeModelWhere<TRecord>, options?: IModelGetOptionsGeneral<TRecord>): Promise<TRecord | undefined>;
11
11
  protected _count(table?: keyof ITableRecord, params?: IModelCountParams<TRecord> | IBuildModelCountParams<TRecord, undefined, never>, options?: IModelMethodOptionsGeneral): Promise<string | undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"bean.model_crud_inner.d.ts","sourceRoot":"","sources":["../../../src/lib/bean.model/bean.model_crud_inner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bean.model_crud_inner.d.ts","sourceRoot":"","sources":["../../../src/lib/bean.model/bean.model_crud_inner.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { DtoAggregate } from './dtoAggregate.ts';
2
+ import { DtoAnalysisAggregate, DtoAnalysisGroup } from './dtoAnalysis.ts';
2
3
  import { DtoCreate } from './dtoCreate.ts';
3
4
  import { DtoGet } from './dtoGet.ts';
4
5
  import { DtoGroup } from './dtoGroup.ts';
@@ -14,6 +15,8 @@ export declare const $Dto: {
14
15
  mutate: typeof DtoMutate;
15
16
  get: typeof DtoGet;
16
17
  aggregate: typeof DtoAggregate;
18
+ analysisGroup: typeof DtoAnalysisGroup;
19
+ analysisAggregate: typeof DtoAnalysisAggregate;
17
20
  group: typeof DtoGroup;
18
21
  query: typeof DtoQuery;
19
22
  queryPage: typeof DtoQueryPage;
@@ -1 +1 @@
1
- {"version":3,"file":"dto.d.ts","sourceRoot":"","sources":["../../../src/lib/dto/dto.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,eAAO,MAAM,IAAI;;;;;;;;;;;CAWhB,CAAC"}
1
+ {"version":3,"file":"dto.d.ts","sourceRoot":"","sources":["../../../src/lib/dto/dto.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,eAAO,MAAM,IAAI;;;;;;;;;;;;;CAahB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"dtoAggregate.d.ts","sourceRoot":"","sources":["../../../src/lib/dto/dtoAggregate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,MAAM,CAAC;AAM1C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC1F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAEtE,wBAAgB,YAAY,CAC1B,KAAK,SAAS,8BAA8B,CAC1C,oBAAoB,CAAC,SAAS,CAAC,CAAC,mBAAmB,CAAC,CACrD,EACD,SAAS,SAAS,aAAa,GAAG,MAAM,iBAAiB,EAEzD,SAAS,EAAE,SAAS,SAAS,aAAa,GACtC,CAAC,MAAM,aAAa,CAAC,SAAS,CAAC,CAAC,GAAG,aAAa,CAAC,SAAS,CAAC,GAC3D,SAAS,EACb,KAAK,EAAE,KAAK,GACX,aAAa,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAEzC;AAiBD,wBAAgB,mBAAmB,CACjC,KAAK,SAAS,8BAA8B,CAC1C,oBAAoB,CAAC,SAAS,CAAC,CAAC,mBAAmB,CAAC,CACrD,EACD,SAAS,SAAS,aAAa,GAAG,MAAM,iBAAiB,EAEzD,WAAW,EAAE,aAAa,EAC1B,UAAU,EAAE,SAAS,SAAS,aAAa,GACvC,CAAC,MAAM,aAAa,CAAC,SAAS,CAAC,CAAC,GAAG,aAAa,CAAC,SAAS,CAAC,GAC3D,SAAS,EACb,KAAK,EAAE,KAAK,GACX,aAAa,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAUzC"}
1
+ {"version":3,"file":"dtoAggregate.d.ts","sourceRoot":"","sources":["../../../src/lib/dto/dtoAggregate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,MAAM,CAAC;AAM1C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC1F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAEtE,wBAAgB,YAAY,CAC1B,KAAK,SAAS,8BAA8B,CAC1C,oBAAoB,CAAC,SAAS,CAAC,CAAC,mBAAmB,CAAC,CACrD,EACD,SAAS,SAAS,aAAa,GAAG,MAAM,iBAAiB,EAEzD,SAAS,EAAE,SAAS,SAAS,aAAa,GACtC,CAAC,MAAM,aAAa,CAAC,SAAS,CAAC,CAAC,GAAG,aAAa,CAAC,SAAS,CAAC,GAC3D,SAAS,EACb,KAAK,EAAE,KAAK,GACX,aAAa,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAEzC;AAiBD,wBAAgB,mBAAmB,CACjC,KAAK,SAAS,8BAA8B,CAC1C,oBAAoB,CAAC,SAAS,CAAC,CAAC,mBAAmB,CAAC,CACrD,EACD,SAAS,SAAS,aAAa,GAAG,MAAM,iBAAiB,EAEzD,WAAW,EAAE,aAAa,EAC1B,UAAU,EAAE,SAAS,SAAS,aAAa,GACvC,CAAC,MAAM,aAAa,CAAC,SAAS,CAAC,CAAC,GAAG,aAAa,CAAC,SAAS,CAAC,GAC3D,SAAS,EACb,KAAK,EAAE,KAAK,GACX,aAAa,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAazC"}
@@ -0,0 +1,6 @@
1
+ import type { Constructable } from 'vona';
2
+ import type { IAnalysisPolicy, TypeAnalysisAggregateResult, TypeAnalysisGroupResult } from '../../types/analysis.ts';
3
+ /** A finite optional superset: absent fields are unrequested, null retains SQL meaning. */
4
+ export declare function DtoAnalysisGroup<Policy extends IAnalysisPolicy>(policy: Policy): Constructable<TypeAnalysisGroupResult<Policy>>;
5
+ export declare function DtoAnalysisAggregate<Policy extends IAnalysisPolicy>(policy: Policy): Constructable<TypeAnalysisAggregateResult<Policy>>;
6
+ //# sourceMappingURL=dtoAnalysis.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dtoAnalysis.d.ts","sourceRoot":"","sources":["../../../src/lib/dto/dtoAnalysis.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,MAAM,CAAC;AAI1C,OAAO,KAAK,EACV,eAAe,EACf,2BAA2B,EAC3B,uBAAuB,EACxB,MAAM,yBAAyB,CAAC;AAKjC,2FAA2F;AAC3F,wBAAgB,gBAAgB,CAAC,MAAM,SAAS,eAAe,EAC7D,MAAM,EAAE,MAAM,GACb,aAAa,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAIhD;AAED,wBAAgB,oBAAoB,CAAC,MAAM,SAAS,eAAe,EACjE,MAAM,EAAE,MAAM,GACb,aAAa,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAC,CASpD"}
@@ -1,3 +1,4 @@
1
+ export * from './analysis/index.ts';
1
2
  export * from './const.ts';
2
3
  export * from './databaseDialect.ts';
3
4
  export * from './dto/index.ts';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC"}
@@ -0,0 +1,105 @@
1
+ import type { Constructable } from 'vona';
2
+ import type { BeanModelMeta } from '../lib/bean.model/bean.model_meta.ts';
3
+ import type { TypeModelWhere } from './modelWhere.ts';
4
+ import type { IModelClassRecord } from './onion/model.ts';
5
+ import type { TypeModelOfModelLike, TypeSymbolKeyEntity } from './relations.ts';
6
+ export type TypeAnalysisMode = 'group' | 'aggregate';
7
+ export type TypeAnalysisFunction = 'count' | 'sum' | 'avg' | 'min' | 'max';
8
+ export type TypeAnalysisModelLike = Constructable<BeanModelMeta> | (() => Constructable<BeanModelMeta>) | keyof IModelClassRecord;
9
+ export type TypeAnalysisEntity<ModelLike extends TypeAnalysisModelLike> = TypeModelOfModelLike<ModelLike>[TypeSymbolKeyEntity];
10
+ export type TypeAnalysisField<Entity> = Extract<keyof Entity, string>;
11
+ export type TypeAnalysisNumericField<Entity> = Exclude<{
12
+ [K in keyof Entity]-?: NonNullable<Entity[K]> extends number ? K : never;
13
+ }[keyof Entity], 'id' | 'iid'> & string;
14
+ export type TypeAnalysisAggrs = Partial<Record<TypeAnalysisFunction, readonly string[]>>;
15
+ export type TypeAnalysisAllowedAggrs<Entity> = {
16
+ readonly count?: readonly ('*' | TypeAnalysisField<Entity>)[];
17
+ } & {
18
+ readonly [K in Exclude<TypeAnalysisFunction, 'count'>]?: readonly TypeAnalysisNumericField<Entity>[];
19
+ };
20
+ export type TypeAnalysisSelectionAggrs<Aggrs extends TypeAnalysisAggrs> = {
21
+ readonly [K in keyof Aggrs]?: NonNullable<Aggrs[K]> extends readonly string[] ? readonly NonNullable<Aggrs[K]>[number][] : never;
22
+ };
23
+ export interface IAnalysisLimits {
24
+ readonly maxGroups: number;
25
+ readonly maxMetrics: number;
26
+ readonly maxGroupRows: number;
27
+ }
28
+ export interface IAnalysisSelection {
29
+ readonly groups?: readonly string[];
30
+ readonly aggrs: TypeAnalysisAggrs;
31
+ }
32
+ /** Structural server-owned policy surface; model references must not be serialized. */
33
+ export interface IAnalysisPolicy {
34
+ readonly modelLike: TypeAnalysisModelLike;
35
+ readonly modelClass: Constructable<BeanModelMeta>;
36
+ readonly groups: readonly string[];
37
+ readonly aggrs: TypeAnalysisAggrs;
38
+ readonly defaults: {
39
+ readonly group?: IAnalysisSelection & {
40
+ readonly groups: readonly string[];
41
+ };
42
+ readonly aggregate?: {
43
+ readonly aggrs: TypeAnalysisAggrs;
44
+ };
45
+ };
46
+ readonly limits: IAnalysisLimits;
47
+ }
48
+ export type TypeAnalysisPolicy<ModelLike extends TypeAnalysisModelLike, Groups extends readonly string[], Aggrs extends TypeAnalysisAggrs> = Omit<IAnalysisPolicy, 'modelLike' | 'groups' | 'aggrs'> & {
49
+ readonly modelLike: ModelLike;
50
+ readonly groups: Groups;
51
+ readonly aggrs: Aggrs;
52
+ };
53
+ export interface IAnalysisConfig<Groups extends readonly string[], Aggrs extends TypeAnalysisAggrs> {
54
+ readonly groups: Groups;
55
+ readonly aggrs: Aggrs;
56
+ readonly defaults: {
57
+ readonly group?: {
58
+ readonly groups: readonly NoInfer<Groups[number]>[];
59
+ readonly aggrs: TypeAnalysisSelectionAggrs<NoInfer<Aggrs>>;
60
+ };
61
+ readonly aggregate?: {
62
+ readonly aggrs: TypeAnalysisSelectionAggrs<NoInfer<Aggrs>>;
63
+ };
64
+ };
65
+ readonly limits?: Partial<IAnalysisLimits>;
66
+ }
67
+ interface IAnalysisParams<Policy extends IAnalysisPolicy> {
68
+ where?: TypeModelWhere<TypeAnalysisEntity<Policy['modelLike']>>;
69
+ aggrs?: TypeAnalysisSelectionAggrs<Policy['aggrs']>;
70
+ columns?: unknown;
71
+ orders?: unknown;
72
+ limit?: number;
73
+ offset?: number;
74
+ pageNo?: number;
75
+ pageSize?: number;
76
+ joins?: never;
77
+ having?: never;
78
+ distinct?: never;
79
+ include?: never;
80
+ with?: never;
81
+ }
82
+ export type TypeAnalysisGroupParams<Policy extends IAnalysisPolicy> = IAnalysisParams<Policy> & {
83
+ groups?: readonly Policy['groups'][number][];
84
+ };
85
+ export type TypeAnalysisAggregateParams<Policy extends IAnalysisPolicy> = IAnalysisParams<Policy> & {
86
+ groups?: never;
87
+ };
88
+ type TypeAnalysisAlias<Column extends string> = Column extends '*' ? 'all' : Column;
89
+ export type TypeAnalysisAggregateResult<Policy extends IAnalysisPolicy> = {
90
+ -readonly [Fn in keyof Policy['aggrs'] & TypeAnalysisFunction as Policy['aggrs'][Fn] extends readonly string[] ? `${Fn}_${TypeAnalysisAlias<Policy['aggrs'][Fn][number]>}` : never]?: Fn extends 'count' ? string : string | null;
91
+ };
92
+ export type TypeAnalysisGroupResult<Policy extends IAnalysisPolicy> = Partial<Pick<TypeAnalysisEntity<Policy['modelLike']>, Extract<Policy['groups'][number], keyof TypeAnalysisEntity<Policy['modelLike']>>>> & TypeAnalysisAggregateResult<Policy>;
93
+ export interface IAnalysisCapabilities {
94
+ readonly mode: TypeAnalysisMode;
95
+ readonly groups: readonly string[];
96
+ readonly aggrs: TypeAnalysisAggrs;
97
+ readonly defaults: IAnalysisSelection;
98
+ readonly limits: IAnalysisLimits;
99
+ }
100
+ export interface IResolvedAnalysis {
101
+ groups?: string[];
102
+ aggrs: Partial<Record<TypeAnalysisFunction, string[]>>;
103
+ }
104
+ export {};
105
+ //# sourceMappingURL=analysis.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analysis.d.ts","sourceRoot":"","sources":["../../src/types/analysis.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ export * from './analysis.ts';
1
2
  export * from './columns.ts';
2
3
  export * from './config.ts';
3
4
  export * from './database.ts';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC"}
@@ -7,7 +7,7 @@ export type TypeModelAggrRelationResultAggr<Aggr extends string, Columns extends
7
7
  export type TypeUtilAggrPrepareColumns<TColumns> = TColumns extends string[] ? TColumns[number] : TColumns extends string ? TColumns : undefined;
8
8
  export type TypeRecordAggrsValues<TRecord extends Record<string, any>> = TRecord[keyof TRecord];
9
9
  export type TypeRecordAggrsValuesToObject<AggrValues extends string> = {
10
- [K in AggrValues]: string | undefined;
10
+ [K in AggrValues]: K extends `count_${string}` ? string | undefined : string | null | undefined;
11
11
  };
12
12
  export type TypeUtilGetAggrsFromRelationAndIncludeWrapper<Relation, IncludeWrapper extends {} | undefined | unknown> = TypeUtilGetRelationOptionsAggrs<Relation> extends {} ? TypeUtilGetParamsAggrs<IncludeWrapper> extends {} ? TypeUtilGetAggrsFromRelationAndIncludeWrapper_Mixed<TypeUtilGetRelationOptionsAggrs<Relation>, TypeUtilGetParamsAggrs<IncludeWrapper>> : TypeUtilGetRelationOptionsAggrs<Relation> : undefined;
13
13
  export type TypeUtilGetAggrsFromRelationAndIncludeWrapper_Mixed<RelationAggrs extends {}, IncludeWrapperAggrs extends {}> = {
@@ -1 +1 @@
1
- {"version":3,"file":"relationsAggr.d.ts","sourceRoot":"","sources":["../../src/types/relationsAggr.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,+BAA+B,EAAE,MAAM,gBAAgB,CAAC;AAE9F,MAAM,MAAM,2BAA2B,CAAC,QAAQ,IAC9C,sBAAsB,CAAC,QAAQ,CAAC,SAAS,EAAE,GACvC,gCAAgC,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC,GAClE,EAAE,CAAC;AAET,MAAM,MAAM,gCAAgC,CAAC,KAAK,IAAI,KAAK,SAAS,EAAE,GAClE,6BAA6B,CAC3B,qBAAqB,CAAC;KACnB,CAAC,IAAI,MAAM,KAAK,GAAG,CAAC,SAAS,MAAM,GAChC,+BAA+B,CAAC,CAAC,EAAE,0BAA0B,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GACxE,KAAK;CACV,CAAC,CACH,GACD,EAAE,CAAC;AAEP,MAAM,MAAM,+BAA+B,CACzC,IAAI,SAAS,MAAM,EACnB,OAAO,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,IAClD,OAAO,SAAS,MAAM,GAAG,GAAG,IAAI,IAAI,OAAO,SAAS,GAAG,GAAG,KAAK,GAAG,OAAO,EAAE,GAAG,KAAK,CAAC;AAExF,MAAM,MAAM,0BAA0B,CAAC,QAAQ,IAAI,QAAQ,SAAS,MAAM,EAAE,GACxE,QAAQ,CAAC,MAAM,CAAC,GAChB,QAAQ,SAAS,MAAM,GACrB,QAAQ,GACR,SAAS,CAAC;AAChB,MAAM,MAAM,qBAAqB,CAAC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,OAAO,CAAC,MAAM,OAAO,CAAC,CAAC;AAChG,MAAM,MAAM,6BAA6B,CAAC,UAAU,SAAS,MAAM,IAAI;KACpE,CAAC,IAAI,UAAU,GAAG,MAAM,GAAG,SAAS;CACtC,CAAC;AAEF,MAAM,MAAM,6CAA6C,CACvD,QAAQ,EACR,cAAc,SAAS,EAAE,GAAG,SAAS,GAAG,OAAO,IAE/C,+BAA+B,CAAC,QAAQ,CAAC,SAAS,EAAE,GAChD,sBAAsB,CAAC,cAAc,CAAC,SAAS,EAAE,GAC/C,mDAAmD,CACjD,+BAA+B,CAAC,QAAQ,CAAC,EACzC,sBAAsB,CAAC,cAAc,CAAC,CACvC,GACD,+BAA+B,CAAC,QAAQ,CAAC,GAC3C,SAAS,CAAC;AAEhB,MAAM,MAAM,mDAAmD,CAC7D,aAAa,SAAS,EAAE,EACxB,mBAAmB,SAAS,EAAE,IAC5B;KACD,CAAC,IAAI,MAAM,aAAa,GAAG,CAAC,SAAS,MAAM,GACxC,CAAC,SAAS,MAAM,mBAAmB,GACjC,mBAAmB,CAAC,CAAC,CAAC,GACtB,aAAa,CAAC,CAAC,CAAC,GAClB,SAAS;CACd,CAAC"}
1
+ {"version":3,"file":"relationsAggr.d.ts","sourceRoot":"","sources":["../../src/types/relationsAggr.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,+BAA+B,EAAE,MAAM,gBAAgB,CAAC;AAE9F,MAAM,MAAM,2BAA2B,CAAC,QAAQ,IAC9C,sBAAsB,CAAC,QAAQ,CAAC,SAAS,EAAE,GACvC,gCAAgC,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC,GAClE,EAAE,CAAC;AAET,MAAM,MAAM,gCAAgC,CAAC,KAAK,IAAI,KAAK,SAAS,EAAE,GAClE,6BAA6B,CAC3B,qBAAqB,CAAC;KACnB,CAAC,IAAI,MAAM,KAAK,GAAG,CAAC,SAAS,MAAM,GAChC,+BAA+B,CAAC,CAAC,EAAE,0BAA0B,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GACxE,KAAK;CACV,CAAC,CACH,GACD,EAAE,CAAC;AAEP,MAAM,MAAM,+BAA+B,CACzC,IAAI,SAAS,MAAM,EACnB,OAAO,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,IAClD,OAAO,SAAS,MAAM,GAAG,GAAG,IAAI,IAAI,OAAO,SAAS,GAAG,GAAG,KAAK,GAAG,OAAO,EAAE,GAAG,KAAK,CAAC;AAExF,MAAM,MAAM,0BAA0B,CAAC,QAAQ,IAAI,QAAQ,SAAS,MAAM,EAAE,GACxE,QAAQ,CAAC,MAAM,CAAC,GAChB,QAAQ,SAAS,MAAM,GACrB,QAAQ,GACR,SAAS,CAAC;AAChB,MAAM,MAAM,qBAAqB,CAAC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,OAAO,CAAC,MAAM,OAAO,CAAC,CAAC;AAChG,MAAM,MAAM,6BAA6B,CAAC,UAAU,SAAS,MAAM,IAAI;KACpE,CAAC,IAAI,UAAU,GAAG,CAAC,SAAS,SAAS,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS;CAChG,CAAC;AAEF,MAAM,MAAM,6CAA6C,CACvD,QAAQ,EACR,cAAc,SAAS,EAAE,GAAG,SAAS,GAAG,OAAO,IAE/C,+BAA+B,CAAC,QAAQ,CAAC,SAAS,EAAE,GAChD,sBAAsB,CAAC,cAAc,CAAC,SAAS,EAAE,GAC/C,mDAAmD,CACjD,+BAA+B,CAAC,QAAQ,CAAC,EACzC,sBAAsB,CAAC,cAAc,CAAC,CACvC,GACD,+BAA+B,CAAC,QAAQ,CAAC,GAC3C,SAAS,CAAC;AAEhB,MAAM,MAAM,mDAAmD,CAC7D,aAAa,SAAS,EAAE,EACxB,mBAAmB,SAAS,EAAE,IAC5B;KACD,CAAC,IAAI,MAAM,aAAa,GAAG,CAAC,SAAS,MAAM,GACxC,CAAC,SAAS,MAAM,mBAAmB,GACjC,mBAAmB,CAAC,CAAC,CAAC,GACtB,aAAa,CAAC,CAAC,CAAC,GAClB,SAAS;CACd,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "vona-module-a-orm",
3
- "version": "5.1.39",
4
- "gitHead": "adfc560c7fbe18fe6aa24a768172c21cf89d7b04",
3
+ "version": "5.1.40",
4
+ "gitHead": "b0a4dbbda3b804afdfacf0792ad37a6e45724349",
5
5
  "description": "db",
6
6
  "keywords": [
7
7
  "Cabloy Module"
@@ -1,4 +1,30 @@
1
1
  // eslint-disable
2
+ /** schedule: begin */
3
+ export * from '../bean/schedule.softDeletionPrune.ts';
4
+
5
+ import { type IDecoratorScheduleOptions } from 'vona-module-a-schedule';
6
+ declare module 'vona-module-a-schedule' {
7
+
8
+ export interface IScheduleRecord {
9
+ 'a-orm:softDeletionPrune': IDecoratorScheduleOptions;
10
+ }
11
+
12
+
13
+ }
14
+ declare module 'vona-module-a-orm' {
15
+
16
+ export interface ScheduleSoftDeletionPrune {
17
+ /** @internal */
18
+ get scope(): ScopeModuleAOrm;
19
+ }
20
+
21
+ export interface ScheduleSoftDeletionPrune {
22
+ get $beanFullName(): 'a-orm.schedule.softDeletionPrune';
23
+ get $onionName(): 'a-orm:softDeletionPrune';
24
+ get $onionOptions(): IDecoratorScheduleOptions;
25
+ }
26
+ }
27
+ /** schedule: end */
2
28
  /** aopMethod: begin */
3
29
  export * from '../bean/aopMethod.transaction.ts';
4
30
  import type { IAopMethodOptionsTransaction } from '../bean/aopMethod.transaction.ts';
@@ -261,32 +287,6 @@ export interface IModuleQueue {
261
287
  'doubleDelete': QueueDoubleDelete;
262
288
  }
263
289
  /** queue: end */
264
- /** schedule: begin */
265
- export * from '../bean/schedule.softDeletionPrune.ts';
266
-
267
- import { type IDecoratorScheduleOptions } from 'vona-module-a-schedule';
268
- declare module 'vona-module-a-schedule' {
269
-
270
- export interface IScheduleRecord {
271
- 'a-orm:softDeletionPrune': IDecoratorScheduleOptions;
272
- }
273
-
274
-
275
- }
276
- declare module 'vona-module-a-orm' {
277
-
278
- export interface ScheduleSoftDeletionPrune {
279
- /** @internal */
280
- get scope(): ScopeModuleAOrm;
281
- }
282
-
283
- export interface ScheduleSoftDeletionPrune {
284
- get $beanFullName(): 'a-orm.schedule.softDeletionPrune';
285
- get $onionName(): 'a-orm:softDeletionPrune';
286
- get $onionOptions(): IDecoratorScheduleOptions;
287
- }
288
- }
289
- /** schedule: end */
290
290
  /** config: begin */
291
291
  export * from '../config/config.ts';
292
292
  import type { config } from '../config/config.ts';
@@ -0,0 +1,53 @@
1
+ type AggregateFunction = 'count' | 'sum' | 'avg' | 'min' | 'max';
2
+ type AggregateSpec = Partial<Record<AggregateFunction, PropertyKey | readonly PropertyKey[]>>;
3
+
4
+ export function normalizeAggregateValue(value: unknown, fn: 'count'): string | undefined;
5
+ export function normalizeAggregateValue(
6
+ value: unknown,
7
+ fn: AggregateFunction,
8
+ ): string | null | undefined;
9
+ export function normalizeAggregateValue(
10
+ value: unknown,
11
+ fn: AggregateFunction,
12
+ ): string | null | undefined {
13
+ if (value === undefined) return value;
14
+ if (value === null && fn !== 'count') return value;
15
+ if (typeof value === 'string') {
16
+ if (fn !== 'count' || /^(0|[1-9]\d*)$/.test(value)) return value;
17
+ } else if (typeof value === 'number') {
18
+ if (Number.isFinite(value) && (fn !== 'count' || (Number.isSafeInteger(value) && value >= 0))) {
19
+ return String(value);
20
+ }
21
+ } else if (typeof value === 'bigint' && (fn !== 'count' || value >= 0n)) {
22
+ return String(value);
23
+ }
24
+ throw new TypeError(`Invalid ORM ${fn} aggregate result`);
25
+ }
26
+
27
+ export function normalizeAggregateRows<T extends {}>(rows: T[], aggrs?: AggregateSpec): T[] {
28
+ if (!aggrs || rows.length === 0) return rows;
29
+ const aliases: [string, AggregateFunction][] = [];
30
+ for (const fn of ['count', 'sum', 'avg', 'min', 'max'] as const) {
31
+ const columns = aggrs[fn];
32
+ if (columns === undefined) continue;
33
+ for (const column of typeof columns === 'object' ? columns : [columns]) {
34
+ aliases.push([`${fn}_${column === '*' ? 'all' : String(column)}`, fn]);
35
+ }
36
+ }
37
+ let result = rows;
38
+ for (const [index, row] of rows.entries()) {
39
+ let target = row;
40
+ for (const [alias, fn] of aliases) {
41
+ if (!Object.hasOwn(row, alias)) continue;
42
+ const value = (row as Record<string, unknown>)[alias];
43
+ const normalized = normalizeAggregateValue(value, fn);
44
+ if (value === normalized) continue;
45
+ if (target === row) target = { ...row };
46
+ (target as Record<string, unknown>)[alias] = normalized;
47
+ }
48
+ if (target === row) continue;
49
+ if (result === rows) result = [...rows];
50
+ result[index] = target;
51
+ }
52
+ return result;
53
+ }