@povio/openapi-codegen-cli 0.4.4 → 0.4.5

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.
@@ -0,0 +1,10 @@
1
+ import { Import } from "../types/generate";
2
+ export declare const ACL_APP_ABILITY_FILENAME = "acl/app.ability";
3
+ export declare const ACL_ALL_ABILITIES = "AllAbilities";
4
+ export declare const CASL_ABILITY_BINDING: {
5
+ abilityTuple: string;
6
+ pureAbility: string;
7
+ forcedSubject: string;
8
+ subject: string;
9
+ };
10
+ export declare const CASL_ABILITY_IMPORT: Import;
@@ -1,4 +1,5 @@
1
1
  import { OpenAPIV3 } from "openapi-types";
2
+ import { OperationObject } from "../types/openapi";
2
3
  import { GenerateOptions } from "../types/options";
3
4
  import { ValidationError } from "../types/validation";
4
5
  import { DependencyGraph } from "./openapi/getOpenAPISchemaDependencyGraph";
@@ -27,7 +28,7 @@ export declare class SchemaResolver {
27
28
  private readonly compositeZodSchemaData;
28
29
  readonly enumZodSchemaData: EnumZodSchemaData[];
29
30
  readonly dependencyGraph: DependencyGraph;
30
- readonly operationsByTag: Record<string, OpenAPIV3.OperationObject[]>;
31
+ readonly operationsByTag: Record<string, OperationObject[]>;
31
32
  readonly operationNames: string[];
32
33
  readonly validationErrors: ValidationError[];
33
34
  private get docSchemas();
@@ -0,0 +1,8 @@
1
+ import { Endpoint, EndpointAclInfo } from "src/generators/types/endpoint";
2
+ import { OperationObject } from "src/generators/types/openapi";
3
+ import { SchemaResolver } from "../SchemaResolver.class";
4
+ export declare function getEndpointAcl({ resolver, endpoint, operation, }: {
5
+ resolver: SchemaResolver;
6
+ endpoint: Endpoint;
7
+ operation: OperationObject;
8
+ }): EndpointAclInfo[] | undefined;
@@ -1,9 +1,9 @@
1
- import { OpenAPIV3 } from "openapi-types";
2
1
  import { EndpointParameter } from "src/generators/types/endpoint";
2
+ import { OperationObject } from "src/generators/types/openapi";
3
3
  import { SchemaResolver } from "../SchemaResolver.class";
4
4
  export declare function getEndpointBody({ resolver, operation, operationName, isUniqueOperationName, tag, }: {
5
5
  resolver: SchemaResolver;
6
- operation: OpenAPIV3.OperationObject;
6
+ operation: OperationObject;
7
7
  operationName: string;
8
8
  isUniqueOperationName: boolean;
9
9
  tag: string;
@@ -0,0 +1,4 @@
1
+ import { SchemaResolver } from "../core/SchemaResolver.class";
2
+ import { GenerateTypeParams } from "../types/generate";
3
+ export declare function generateAcl({ resolver, data, tag }: GenerateTypeParams): string | undefined;
4
+ export declare function generateAppAcl(resolver: SchemaResolver, tags: string[]): string;
@@ -7,7 +7,8 @@ export interface Import {
7
7
  export declare enum GenerateType {
8
8
  Models = "models",
9
9
  Endpoints = "endpoints",
10
- Queries = "queries"
10
+ Queries = "queries",
11
+ Acl = "acl"
11
12
  }
12
13
  export type GenerateData = Map<string, {
13
14
  endpoints: Endpoint[];
@@ -0,0 +1,8 @@
1
+ import { Endpoint } from "../../types/endpoint";
2
+ export declare const getAbilityTypeName: (endpoint: Endpoint) => string;
3
+ export declare const getAbilityFunctionName: (endpoint: Endpoint) => string;
4
+ export declare const getAbilityAction: (endpoint: Endpoint) => string | undefined;
5
+ export declare const getAbilitySubject: (endpoint: Endpoint) => string | undefined;
6
+ export declare const hasAbilityConditions: (endpoint: Endpoint) => boolean;
7
+ export declare const getAbilityConditionsTypes: (endpoint: Endpoint) => import("../../types/endpoint").AclConditionsPropertyType[] | undefined;
8
+ export declare const getTagAllAbilitiesName: (tag: string) => string;
@@ -13,4 +13,10 @@ export declare function getEndpointsImports({ tag, endpoints, options, }: {
13
13
  endpoints: Endpoint[];
14
14
  options: GenerateOptions;
15
15
  }): Import[];
16
+ export declare function getAclImports({ tags, entityName, getAliasEntityName, options, }: {
17
+ tags: string[];
18
+ entityName: string;
19
+ getAliasEntityName?: (tag: string) => string;
20
+ options: GenerateOptions;
21
+ }): Import[];
16
22
  export declare function getImportPath(options: Pick<GenerateOptions, "output" | "importPath">): string;
@@ -0,0 +1 @@
1
+ export declare function registerAclHbsHelpers(): void;
@@ -1,6 +1,6 @@
1
1
  import { OpenAPIV3 } from "openapi-types";
2
2
  import { ALLOWED_PARAM_MEDIA_TYPES } from "../const/openapi.const";
3
- import { PrimitiveType, SingleType } from "../types/openapi";
3
+ import { OperationObject, PrimitiveType, SingleType } from "../types/openapi";
4
4
  import { GenerateOptions } from "../types/options";
5
5
  export declare const getSchemaRef: (schemaName: string) => string;
6
6
  export declare const autocorrectRef: (ref: string) => string;
@@ -20,18 +20,18 @@ export declare function isMediaTypeAllowed(mediaType: string): boolean;
20
20
  export declare function getOperationName({ path, method, operation, options, keepOperationPrefixWithoutEnding, }: {
21
21
  path: string;
22
22
  method: string;
23
- operation: OpenAPIV3.OperationObject;
23
+ operation: OperationObject;
24
24
  options: GenerateOptions;
25
25
  keepOperationPrefixWithoutEnding?: boolean;
26
26
  }): string;
27
27
  export declare function getUniqueOperationName({ path, method, operation, operationsByTag, options, }: {
28
28
  path: string;
29
29
  method: string;
30
- operation: OpenAPIV3.OperationObject;
31
- operationsByTag: Record<string, OpenAPIV3.OperationObject[]>;
30
+ operation: OperationObject;
31
+ operationsByTag: Record<string, OperationObject[]>;
32
32
  options: GenerateOptions;
33
33
  }): string;
34
- export declare function getUniqueOperationNamesWithoutSplitByTags(openApiDoc: OpenAPIV3.Document, operationsByTag: Record<string, OpenAPIV3.OperationObject[]>, options: GenerateOptions): string[];
34
+ export declare function getUniqueOperationNamesWithoutSplitByTags(openApiDoc: OpenAPIV3.Document, operationsByTag: Record<string, OperationObject[]>, options: GenerateOptions): string[];
35
35
  /** @example turns `/media-objects/{id}` into `MediaObjectsById` */
36
36
  export declare function pathToVariableName(path: string): string;
37
37
  export declare function replaceHyphenatedPath(path: string): string;
@@ -1,20 +1,6 @@
1
1
  import { OpenAPIV3 } from "openapi-types";
2
+ import { OperationObject } from "../types/openapi";
2
3
  import { GenerateOptions } from "../types/options";
3
4
  export declare function formatTag(tag: string): string;
4
- export declare function getOperationTag(operation: OpenAPIV3.OperationObject, options: GenerateOptions): string;
5
- export declare function getOperationsByTag(openApiDoc: OpenAPIV3.Document, options: GenerateOptions): Record<string, {
6
- tags?: string[] | undefined;
7
- summary?: string | undefined;
8
- description?: string | undefined;
9
- externalDocs?: OpenAPIV3.ExternalDocumentationObject | undefined;
10
- operationId?: string | undefined;
11
- parameters?: (OpenAPIV3.ReferenceObject | OpenAPIV3.ParameterObject)[] | undefined;
12
- requestBody?: OpenAPIV3.ReferenceObject | OpenAPIV3.RequestBodyObject | undefined;
13
- responses: OpenAPIV3.ResponsesObject;
14
- callbacks?: {
15
- [callback: string]: OpenAPIV3.ReferenceObject | OpenAPIV3.CallbackObject;
16
- } | undefined;
17
- deprecated?: boolean | undefined;
18
- security?: OpenAPIV3.SecurityRequirementObject[] | undefined;
19
- servers?: OpenAPIV3.ServerObject[] | undefined;
20
- }[]>;
5
+ export declare function getOperationTag(operation: OperationObject, options: GenerateOptions): string;
6
+ export declare function getOperationsByTag(openApiDoc: OpenAPIV3.Document, options: GenerateOptions): Record<string, OperationObject[]>;
@@ -5,4 +5,5 @@ export declare function getInvalidOperationIdError(operationId: string): Validat
5
5
  export declare function getMissingPathParameterError(params: EndpointParameter[], path: string): ValidationError;
6
6
  export declare function getNotAllowedInlineEnumError(message: string): ValidationError;
7
7
  export declare function getNotAllowedCircularSchemaError(message: string): ValidationError;
8
+ export declare function getMissingAclConditionPropertyError(propertyName: string, operationId: string): ValidationError;
8
9
  export declare function groupByType(validationErrors: ValidationError[]): Record<ValidationErrorType, string[]>;