@bluealba/pae-core 5.6.0-develop-372 → 5.6.0-develop-445

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.
package/dist/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@bluealba/pae-core",
3
3
  "description": "Core package for the PAE project",
4
- "version": "5.6.0-develop-372",
4
+ "version": "5.6.0-develop-445",
5
5
  "main": "./dist/src/index.js",
6
6
  "types": "./dist/src/index.d.ts",
7
7
  "files": [
@@ -55,7 +55,7 @@ export declare const createPAEAuthorizationService: (config: PAEAuthorizationSer
55
55
  getAllowedApplications(username: string): Promise<Application[]>;
56
56
  getAllowedOperationsForApplication(data: GetAllowedOperationsForAppDTO): Promise<Operation[]>;
57
57
  getAllowedResources(username: string, tenantId?: number): Promise<AllowedResources>;
58
- isAuthorized: (module: ModuleMetadata, catalog: ModuleMetadata[], allowedResources: AllowedResources, requestPath?: string, requestMethod?: import("./isAuthorized/http-method").HttpMethod) => boolean;
58
+ isAuthorized: (module: ModuleMetadata, catalog: ModuleMetadata[], allowedResources: AllowedResources, requestPath?: string, requestMethod?: import("..").HttpMethod) => boolean;
59
59
  getAdminUIData(tenantId?: number): Promise<AdminUIData[]>;
60
60
  syncAssignments(dto: SyncAssignmentsDTO): Promise<void>;
61
61
  };
@@ -2,9 +2,21 @@ import { HttpMethod } from './http-method';
2
2
  import { ModuleMetadata } from '../../catalog/entities/module-metadata/module-metadata.entity';
3
3
  export declare const ROUTE_PATTERN_WILD_CARD = "(.*)";
4
4
  export declare const ROUTE_PATTERN_PARAMETER = ":";
5
+ type RouteAuthorization = NonNullable<NonNullable<ModuleMetadata['authorization']>['routes']>[0];
5
6
  /**
6
7
  * Given a request to a module it returns the required operations for that route.
7
8
  * This computes any routes authorization matching.
8
9
  */
9
10
  export declare const getRoutesOperations: (module: ModuleMetadata, requestMethod: HttpMethod, requestURL: string) => string[];
11
+ /**
12
+ * Given a request to a module it returns the most specific RouteAuthorization
13
+ * matching the request (by pattern and method), or null if none matches.
14
+ */
15
+ export declare const getMatchingRoute: (module: ModuleMetadata, requestMethod: HttpMethod, requestURL: string) => RouteAuthorization | null;
16
+ /**
17
+ * Returns true when the route matching the request is explicitly marked as public
18
+ * (does not require authentication).
19
+ */
20
+ export declare const isRoutePublic: (module: ModuleMetadata, requestMethod: HttpMethod, requestURL: string) => boolean;
21
+ export {};
10
22
  //# sourceMappingURL=get-route-operations.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-route-operations.d.ts","sourceRoot":"","sources":["../../../../src/authorization/isAuthorized/get-route-operations.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,+DAA+D,CAAC;AAE/F,eAAO,MAAM,uBAAuB,SAAS,CAAC;AAE9C,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAM3C;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAAI,QAAQ,cAAc,EAAE,eAAe,UAAU,EAAE,YAAY,MAAM,aAGjG,CAAC"}
1
+ {"version":3,"file":"get-route-operations.d.ts","sourceRoot":"","sources":["../../../../src/authorization/isAuthorized/get-route-operations.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,+DAA+D,CAAC;AAE/F,eAAO,MAAM,uBAAuB,SAAS,CAAC;AAE9C,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAE3C,KAAK,kBAAkB,GAAG,WAAW,CAAC,WAAW,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAIjG;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAAI,QAAQ,cAAc,EAAE,eAAe,UAAU,EAAE,YAAY,MAAM,aAGjG,CAAC;AAET;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAAI,QAAQ,cAAc,EAAE,eAAe,UAAU,EAAE,YAAY,MAAM,KAAG,kBAAkB,GAAG,IAGpH,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,aAAa,GAAI,QAAQ,cAAc,EAAE,eAAe,UAAU,EAAE,YAAY,MAAM,KAAG,OAC9B,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getRoutesOperations = exports.ROUTE_PATTERN_PARAMETER = exports.ROUTE_PATTERN_WILD_CARD = void 0;
3
+ exports.isRoutePublic = exports.getMatchingRoute = exports.getRoutesOperations = exports.ROUTE_PATTERN_PARAMETER = exports.ROUTE_PATTERN_WILD_CARD = void 0;
4
4
  const path_to_regexp_1 = require("path-to-regexp");
5
5
  exports.ROUTE_PATTERN_WILD_CARD = '(.*)';
6
6
  exports.ROUTE_PATTERN_PARAMETER = ':';
@@ -15,6 +15,23 @@ const getRoutesOperations = (module, requestMethod, requestURL) => {
15
15
  : [];
16
16
  };
17
17
  exports.getRoutesOperations = getRoutesOperations;
18
+ /**
19
+ * Given a request to a module it returns the most specific RouteAuthorization
20
+ * matching the request (by pattern and method), or null if none matches.
21
+ */
22
+ const getMatchingRoute = (module, requestMethod, requestURL) => {
23
+ var _a;
24
+ return ((module === null || module === void 0 ? void 0 : module.authorization) && ((_a = module === null || module === void 0 ? void 0 : module.authorization) === null || _a === void 0 ? void 0 : _a.routes))
25
+ ? resolveRouteSpecificity(module.authorization.routes, removeQueryString(requestURL), requestMethod)
26
+ : null;
27
+ };
28
+ exports.getMatchingRoute = getMatchingRoute;
29
+ /**
30
+ * Returns true when the route matching the request is explicitly marked as public
31
+ * (does not require authentication).
32
+ */
33
+ const isRoutePublic = (module, requestMethod, requestURL) => { var _a; return ((_a = (0, exports.getMatchingRoute)(module, requestMethod, requestURL)) === null || _a === void 0 ? void 0 : _a.isPublic) === true; };
34
+ exports.isRoutePublic = isRoutePublic;
18
35
  const removeQueryString = (requestURL) => requestURL.indexOf('?') > 0
19
36
  ? requestURL.slice(0, requestURL.indexOf('?'))
20
37
  : requestURL;
@@ -1 +1 @@
1
- {"version":3,"file":"get-route-operations.js","sourceRoot":"","sources":["../../../../src/authorization/isAuthorized/get-route-operations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-route-operations.js","sourceRoot":"","sources":["../../../../src/authorization/isAuthorized/get-route-operations.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ import { CreateOrUpdateModule } from "../dto";
6
6
  */
7
7
  declare const mapModuleToDTO: (module: CreateOrUpdateModule) => {
8
8
  isPublic?: boolean | undefined;
9
- authorization?: import("../entities/module-metadata/authorization.interface").AuthorizationMetadata | undefined;
9
+ authorization?: import("../..").AuthorizationMetadata | undefined;
10
10
  activationRoute?: string | undefined;
11
11
  customProps?: import("../..").ModuleProps | undefined;
12
12
  shell?: boolean | undefined;
@@ -2,7 +2,13 @@ export type HttpMethod = 'GET' | 'HEAD' | 'OPTIONS' | 'PUT' | 'POST' | 'DELETE'
2
2
  export interface RouteAuthorization {
3
3
  methods?: HttpMethod[];
4
4
  pattern: string;
5
- operations: string[];
5
+ operations?: string[];
6
+ /**
7
+ * When true, the route does not require authentication (public route).
8
+ * A public route must not declare operations: authentication is skipped,
9
+ * so authorization is never evaluated for it.
10
+ */
11
+ isPublic?: boolean;
6
12
  }
7
13
  export interface AuthorizationMetadata {
8
14
  operations?: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"authorization.interface.d.ts","sourceRoot":"","sources":["../../../../../src/catalog/entities/module-metadata/authorization.interface.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,SAAS,GAAG,KAAK,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC;AAEhH,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,qBAAqB;IACpC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,MAAM,CAAC,EAAE,kBAAkB,EAAE,CAAC;CAC/B"}
1
+ {"version":3,"file":"authorization.interface.d.ts","sourceRoot":"","sources":["../../../../../src/catalog/entities/module-metadata/authorization.interface.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,SAAS,GAAG,KAAK,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC;AAEhH,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,MAAM,CAAC,EAAE,kBAAkB,EAAE,CAAC;CAC/B"}
@@ -55,7 +55,7 @@ export declare const createPAEServiceFromCatalog: (catalog: ModuleMetadata[], op
55
55
  getAllowedApplications(username: string): Promise<import("..").Application[]>;
56
56
  getAllowedOperationsForApplication(data: import("..").GetAllowedOperationsForAppDTO): Promise<import("..").Operation[]>;
57
57
  getAllowedResources(username: string, tenantId?: number): Promise<import("..").AllowedResources>;
58
- isAuthorized: (module: ModuleMetadata, catalog: ModuleMetadata[], allowedResources: import("..").AllowedResources, requestPath?: string, requestMethod?: import("../authorization/isAuthorized/http-method").HttpMethod) => boolean;
58
+ isAuthorized: (module: ModuleMetadata, catalog: ModuleMetadata[], allowedResources: import("..").AllowedResources, requestPath?: string, requestMethod?: import("..").HttpMethod) => boolean;
59
59
  getAdminUIData(tenantId?: number): Promise<import("../authorization/entities/admin-ui-data.entity").AdminUIData[]>;
60
60
  syncAssignments(dto: import("..").SyncAssignmentsDTO): Promise<void>;
61
61
  getAllModules: () => Promise<ModuleMetadata[]>;
@@ -56,7 +56,7 @@ export declare const createPAEService: (config: PAEServiceConfig, opts?: Service
56
56
  getAllowedApplications(username: string): Promise<import("../authorization").Application[]>;
57
57
  getAllowedOperationsForApplication(data: import("../authorization").GetAllowedOperationsForAppDTO): Promise<import("../authorization").Operation[]>;
58
58
  getAllowedResources(username: string, tenantId?: number): Promise<import("..").AllowedResources>;
59
- isAuthorized: (module: ModuleMetadata, catalog: ModuleMetadata[], allowedResources: import("..").AllowedResources, requestPath?: string, requestMethod?: import("../authorization/isAuthorized/http-method").HttpMethod) => boolean;
59
+ isAuthorized: (module: ModuleMetadata, catalog: ModuleMetadata[], allowedResources: import("..").AllowedResources, requestPath?: string, requestMethod?: import("..").HttpMethod) => boolean;
60
60
  getAdminUIData(tenantId?: number): Promise<import("../authorization/entities/admin-ui-data.entity").AdminUIData[]>;
61
61
  syncAssignments(dto: import("../authorization").SyncAssignmentsDTO): Promise<void>;
62
62
  getAllModules: () => Promise<ModuleMetadata[]>;
@@ -133,7 +133,7 @@ export declare const createPAE: (catalogURL: string, accessToken: string, opts?:
133
133
  getAllowedApplications(username: string): Promise<import("../authorization").Application[]>;
134
134
  getAllowedOperationsForApplication(data: import("../authorization").GetAllowedOperationsForAppDTO): Promise<import("../authorization").Operation[]>;
135
135
  getAllowedResources(username: string, tenantId?: number): Promise<import("..").AllowedResources>;
136
- isAuthorized: (module: ModuleMetadata, catalog: ModuleMetadata[], allowedResources: import("..").AllowedResources, requestPath?: string, requestMethod?: import("../authorization/isAuthorized/http-method").HttpMethod) => boolean;
136
+ isAuthorized: (module: ModuleMetadata, catalog: ModuleMetadata[], allowedResources: import("..").AllowedResources, requestPath?: string, requestMethod?: import("..").HttpMethod) => boolean;
137
137
  getAdminUIData(tenantId?: number): Promise<import("../authorization/entities/admin-ui-data.entity").AdminUIData[]>;
138
138
  syncAssignments(dto: import("../authorization").SyncAssignmentsDTO): Promise<void>;
139
139
  getAllModules: () => Promise<ModuleMetadata[]>;
@@ -7,6 +7,9 @@ export * from './authentication';
7
7
  export * from './catalog';
8
8
  export { SharedLibrary } from './orchestrator/entities/SharedLibrary.entity';
9
9
  export { ApplicationWithOperations } from './authorization/isAuthorized/application-with-operations';
10
+ export { getMatchingRoute, isRoutePublic, getRoutesOperations } from './authorization/isAuthorized/get-route-operations';
11
+ export type { HttpMethod } from './authorization/isAuthorized/http-method';
12
+ export type { RouteAuthorization, AuthorizationMetadata } from './catalog/entities/module-metadata/authorization.interface';
10
13
  export { AllowedResources } from './authorization/entities/allowed-resources.entity';
11
14
  export * from './authorization/entities/admin-ui/admin-ui';
12
15
  export * from './catalog/entities/module-metadata/module-metadata.entity';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAEA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wCAAwC,CAAC;AAIvD,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,UAAU,CAAA;AACxB,cAAc,kBAAkB,CAAA;AAChC,cAAc,WAAW,CAAA;AAEzB,OAAO,EAAE,aAAa,EAAE,MAAM,8CAA8C,CAAC;AAC7E,OAAO,EAAE,yBAAyB,EAAE,MAAM,0DAA0D,CAAC;AACrG,OAAO,EAAE,gBAAgB,EAAE,MAAM,mDAAmD,CAAC;AACrF,cAAc,4CAA4C,CAAC;AAG3D,cAAc,2DAA2D,CAAC;AAC1E,cAAc,wDAAwD,CAAC;AACvE,cAAc,6DAA6D,CAAC;AAC5E,cAAc,sDAAsD,CAAC;AAErE,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,QAAQ,CAAC;AACvB,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAI/F,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,cAAc,0BAA0B,CAAC;AAIzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6BAA6B,CAAC;AAG5C,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAEA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wCAAwC,CAAC;AAIvD,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,UAAU,CAAA;AACxB,cAAc,kBAAkB,CAAA;AAChC,cAAc,WAAW,CAAA;AAEzB,OAAO,EAAE,aAAa,EAAE,MAAM,8CAA8C,CAAC;AAC7E,OAAO,EAAE,yBAAyB,EAAE,MAAM,0DAA0D,CAAC;AACrG,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,mDAAmD,CAAC;AACzH,YAAY,EAAE,UAAU,EAAE,MAAM,0CAA0C,CAAC;AAC3E,YAAY,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,4DAA4D,CAAC;AAC5H,OAAO,EAAE,gBAAgB,EAAE,MAAM,mDAAmD,CAAC;AACrF,cAAc,4CAA4C,CAAC;AAG3D,cAAc,2DAA2D,CAAC;AAC1E,cAAc,wDAAwD,CAAC;AACvE,cAAc,6DAA6D,CAAC;AAC5E,cAAc,sDAAsD,CAAC;AAErE,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,QAAQ,CAAC;AACvB,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAI/F,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,cAAc,0BAA0B,CAAC;AAIzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6BAA6B,CAAC;AAG5C,cAAc,WAAW,CAAC"}
package/dist/src/index.js CHANGED
@@ -15,7 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
16
16
  };
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.PAE_MODULES_NAMES = exports.PLATFORM_APPLICATION_NAME = exports.isAuthenticatedUser = exports.isAnonymousUser = exports.AllowedResources = exports.SharedLibrary = void 0;
18
+ exports.PAE_MODULES_NAMES = exports.PLATFORM_APPLICATION_NAME = exports.isAuthenticatedUser = exports.isAnonymousUser = exports.AllowedResources = exports.getRoutesOperations = exports.isRoutePublic = exports.getMatchingRoute = exports.SharedLibrary = void 0;
19
19
  __exportStar(require("./core/create-pae-service"), exports);
20
20
  __exportStar(require("./core/create-pae-service-from-catalog"), exports);
21
21
  // Exporting entities and other types
@@ -26,6 +26,10 @@ __exportStar(require("./authentication"), exports);
26
26
  __exportStar(require("./catalog"), exports);
27
27
  var SharedLibrary_entity_1 = require("./orchestrator/entities/SharedLibrary.entity");
28
28
  Object.defineProperty(exports, "SharedLibrary", { enumerable: true, get: function () { return SharedLibrary_entity_1.SharedLibrary; } });
29
+ var get_route_operations_1 = require("./authorization/isAuthorized/get-route-operations");
30
+ Object.defineProperty(exports, "getMatchingRoute", { enumerable: true, get: function () { return get_route_operations_1.getMatchingRoute; } });
31
+ Object.defineProperty(exports, "isRoutePublic", { enumerable: true, get: function () { return get_route_operations_1.isRoutePublic; } });
32
+ Object.defineProperty(exports, "getRoutesOperations", { enumerable: true, get: function () { return get_route_operations_1.getRoutesOperations; } });
29
33
  var allowed_resources_entity_1 = require("./authorization/entities/allowed-resources.entity");
30
34
  Object.defineProperty(exports, "AllowedResources", { enumerable: true, get: function () { return allowed_resources_entity_1.AllowedResources; } });
31
35
  __exportStar(require("./authorization/entities/admin-ui/admin-ui"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA,aAAa;;;;;;;;;;;;;;;;;AAEb,4DAA0C;AAC1C,yEAAuD;AAEvD,qCAAqC;AAErC,kDAA+B;AAC/B,iDAA8B;AAC9B,2CAAwB;AACxB,mDAAgC;AAChC,4CAAyB;AAEzB,qFAA6E;AAApE,qHAAA,aAAa,OAAA;AAEtB,8FAAqF;AAA5E,4HAAA,gBAAgB,OAAA;AACzB,6EAA2D;AAE3D,UAAU;AACV,4FAA0E;AAC1E,yFAAuE;AACvE,8FAA4E;AAC5E,uFAAqE;AAErE,2DAAyC;AACzC,+DAA6C;AAC7C,yCAAuB;AACvB,mDAA+F;AAA/D,iHAAA,eAAe,OAAA;AAAE,qHAAA,mBAAmB,OAAA;AAEpE,sBAAsB;AAEtB,gFAA+E;AAAtE,sIAAA,yBAAyB,OAAA;AAClC,yEAAoE;AAA3D,0HAAA,iBAAiB,OAAA;AAC1B,2DAAyC;AAEzC,yBAAyB;AAEzB,0DAAwC;AACxC,yDAAuC;AACvC,+DAA6C;AAC7C,8DAA4C;AAE5C,UAAU;AACV,4CAA0B;AAM1B,4FAA4F;AAC5F,kEAAkE;AAClE,qDAAqD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA,aAAa;;;;;;;;;;;;;;;;;AAEb,4DAA0C;AAC1C,yEAAuD;AAEvD,qCAAqC;AAErC,kDAA+B;AAC/B,iDAA8B;AAC9B,2CAAwB;AACxB,mDAAgC;AAChC,4CAAyB;AAEzB,qFAA6E;AAApE,qHAAA,aAAa,OAAA;AAEtB,0FAAyH;AAAhH,wHAAA,gBAAgB,OAAA;AAAE,qHAAA,aAAa,OAAA;AAAE,2HAAA,mBAAmB,OAAA;AAG7D,8FAAqF;AAA5E,4HAAA,gBAAgB,OAAA;AACzB,6EAA2D;AAE3D,UAAU;AACV,4FAA0E;AAC1E,yFAAuE;AACvE,8FAA4E;AAC5E,uFAAqE;AAErE,2DAAyC;AACzC,+DAA6C;AAC7C,yCAAuB;AACvB,mDAA+F;AAA/D,iHAAA,eAAe,OAAA;AAAE,qHAAA,mBAAmB,OAAA;AAEpE,sBAAsB;AAEtB,gFAA+E;AAAtE,sIAAA,yBAAyB,OAAA;AAClC,yEAAoE;AAA3D,0HAAA,iBAAiB,OAAA;AAC1B,2DAAyC;AAEzC,yBAAyB;AAEzB,0DAAwC;AACxC,yDAAuC;AACvC,+DAA6C;AAC7C,8DAA4C;AAE5C,UAAU;AACV,4CAA0B;AAM1B,4FAA4F;AAC5F,kEAAkE;AAClE,qDAAqD"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@bluealba/pae-core",
3
3
  "description": "Core package for the PAE project",
4
- "version": "5.6.0-develop-372",
4
+ "version": "5.6.0-develop-445",
5
5
  "main": "./dist/src/index.js",
6
6
  "types": "./dist/src/index.d.ts",
7
7
  "files": [