@computec/uibase 1.0.3 → 1.0.6
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/communication/ConnectionOptions.d.ts +48 -0
- package/dist/communication/ConnectionOptions.d.ts.map +1 -0
- package/dist/communication/ConnectionOptions.js +9 -0
- package/dist/communication/HttpClient.d.ts +1 -0
- package/dist/communication/HttpClient.d.ts.map +1 -1
- package/dist/communication/HttpClient.js +6 -1
- package/dist/communication/IBaseHttpClientOptions.d.ts +1 -0
- package/dist/communication/IBaseHttpClientOptions.d.ts.map +1 -1
- package/dist/communication/IConnectionInfo.d.ts +17 -0
- package/dist/communication/IConnectionInfo.d.ts.map +1 -0
- package/dist/communication/IConnectionInfo.js +2 -0
- package/dist/communication/ISignalRHubClient.d.ts +47 -0
- package/dist/communication/ISignalRHubClient.d.ts.map +1 -0
- package/dist/communication/ISignalRHubClient.js +2 -0
- package/dist/communication/ISignalRMessage.d.ts +8 -0
- package/dist/communication/ISignalRMessage.d.ts.map +1 -0
- package/dist/communication/ISignalRMessage.js +2 -0
- package/dist/communication/SignalRHubClient.d.ts +26 -0
- package/dist/communication/SignalRHubClient.d.ts.map +1 -0
- package/dist/communication/SignalRHubClient.js +133 -0
- package/dist/communication/SignalRMessage.d.ts +10 -0
- package/dist/communication/SignalRMessage.d.ts.map +1 -0
- package/dist/communication/SignalRMessage.js +9 -0
- package/dist/communication/SubscribeProperties.d.ts +17 -0
- package/dist/communication/SubscribeProperties.d.ts.map +1 -0
- package/dist/communication/SubscribeProperties.js +25 -0
- package/dist/helpers/ErrorHelper.d.ts.map +1 -1
- package/dist/helpers/ErrorHelper.js +12 -0
- package/dist/helpers/HttpClientHelper.d.ts.map +1 -1
- package/dist/helpers/HttpClientHelper.js +15 -4
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -1
- package/dist/models/AppEngineException.d.ts +17 -7
- package/dist/models/AppEngineException.d.ts.map +1 -1
- package/dist/models/AppEngineException.js +31 -8
- package/dist/models/BaseBusinessObject.d.ts +1 -2
- package/dist/models/BaseBusinessObject.d.ts.map +1 -1
- package/dist/models/BaseError.d.ts +51 -0
- package/dist/models/BaseError.d.ts.map +1 -0
- package/dist/models/BaseError.js +53 -0
- package/dist/models/CompanyInfo.d.ts +4 -1
- package/dist/models/CompanyInfo.d.ts.map +1 -1
- package/dist/models/CompanyInfo.js +13 -0
- package/dist/models/DocumentedException.d.ts +22 -0
- package/dist/models/DocumentedException.d.ts.map +1 -0
- package/dist/models/DocumentedException.js +48 -0
- package/dist/models/HttpResponse.d.ts +7 -0
- package/dist/models/HttpResponse.d.ts.map +1 -0
- package/dist/models/HttpResponse.js +9 -0
- package/dist/models/IOdataResponse.d.ts +6 -0
- package/dist/models/IOdataResponse.d.ts.map +1 -0
- package/dist/models/IOdataResponse.js +2 -0
- package/dist/models/OdataError.d.ts +56 -0
- package/dist/models/OdataError.d.ts.map +1 -0
- package/dist/models/OdataError.js +88 -0
- package/dist/models/ProblemDetails.d.ts +23 -0
- package/dist/models/ProblemDetails.d.ts.map +1 -0
- package/dist/models/ProblemDetails.js +37 -0
- package/dist/models/Session.d.ts +2 -1
- package/dist/models/Session.d.ts.map +1 -1
- package/dist/models/Session.js +5 -1
- package/dist/models/UserInfo.d.ts +27 -1
- package/dist/models/UserInfo.d.ts.map +1 -1
- package/dist/models/ValidationProblemDetails.d.ts +19 -0
- package/dist/models/ValidationProblemDetails.d.ts.map +1 -0
- package/dist/models/ValidationProblemDetails.js +41 -0
- package/dist/models/Version.d.ts +35 -0
- package/dist/models/Version.d.ts.map +1 -0
- package/dist/models/Version.js +185 -0
- package/dist/models/enums/HeadersContentTypeEnum.d.ts +7 -0
- package/dist/models/enums/HeadersContentTypeEnum.d.ts.map +1 -1
- package/dist/models/enums/HeadersContentTypeEnum.js +7 -0
- package/dist/models/interfaces/IAppEngineException.d.ts +54 -4
- package/dist/models/interfaces/IAppEngineException.d.ts.map +1 -1
- package/dist/models/interfaces/IDocumentedException.d.ts +60 -0
- package/dist/models/interfaces/IDocumentedException.d.ts.map +1 -0
- package/dist/models/interfaces/IDocumentedException.js +2 -0
- package/dist/models/interfaces/IHttpResponse.d.ts +5 -0
- package/dist/models/interfaces/IHttpResponse.d.ts.map +1 -0
- package/dist/models/interfaces/IHttpResponse.js +2 -0
- package/dist/models/interfaces/IOdataError.d.ts +182 -0
- package/dist/models/interfaces/IOdataError.d.ts.map +1 -0
- package/dist/models/interfaces/IOdataError.js +2 -0
- package/dist/models/interfaces/IProblemDetails.d.ts +93 -0
- package/dist/models/interfaces/IProblemDetails.d.ts.map +1 -0
- package/dist/models/interfaces/IProblemDetails.js +2 -0
- package/dist/models/interfaces/IValidationProblemDetails.d.ts +82 -0
- package/dist/models/interfaces/IValidationProblemDetails.d.ts.map +1 -0
- package/dist/models/interfaces/IValidationProblemDetails.js +2 -0
- package/dist-ui5/resources/computec/appengine/uibase/.library +1 -1
- package/dist-ui5/resources/computec/appengine/uibase/communication/ConnectionOptions-dbg.js +20 -0
- package/dist-ui5/resources/computec/appengine/uibase/communication/ConnectionOptions.js +2 -0
- package/dist-ui5/resources/computec/appengine/uibase/communication/ConnectionOptions.js.map +1 -0
- package/dist-ui5/resources/computec/appengine/uibase/communication/HttpClient-dbg.js +41 -22
- package/dist-ui5/resources/computec/appengine/uibase/communication/HttpClient.js +1 -1
- package/dist-ui5/resources/computec/appengine/uibase/communication/HttpClient.js.map +1 -1
- package/dist-ui5/resources/computec/appengine/uibase/communication/IConnectionInfo-dbg.js +7 -0
- package/dist-ui5/resources/computec/appengine/uibase/communication/IConnectionInfo.js +2 -0
- package/dist-ui5/resources/computec/appengine/uibase/communication/IConnectionInfo.js.map +1 -0
- package/dist-ui5/resources/computec/appengine/uibase/communication/ISignalRHubClient-dbg.js +7 -0
- package/dist-ui5/resources/computec/appengine/uibase/communication/ISignalRHubClient.js +2 -0
- package/dist-ui5/resources/computec/appengine/uibase/communication/ISignalRHubClient.js.map +1 -0
- package/dist-ui5/resources/computec/appengine/uibase/communication/ISignalRMessage-dbg.js +7 -0
- package/dist-ui5/resources/computec/appengine/uibase/communication/ISignalRMessage.js +2 -0
- package/dist-ui5/resources/computec/appengine/uibase/communication/ISignalRMessage.js.map +1 -0
- package/dist-ui5/resources/computec/appengine/uibase/communication/SignalRHubClient-dbg.js +213 -0
- package/dist-ui5/resources/computec/appengine/uibase/communication/SignalRHubClient.js +2 -0
- package/dist-ui5/resources/computec/appengine/uibase/communication/SignalRHubClient.js.map +1 -0
- package/dist-ui5/resources/computec/appengine/uibase/communication/SignalRMessage-dbg.js +31 -0
- package/dist-ui5/resources/computec/appengine/uibase/communication/SignalRMessage.js +2 -0
- package/dist-ui5/resources/computec/appengine/uibase/communication/SignalRMessage.js.map +1 -0
- package/dist-ui5/resources/computec/appengine/uibase/communication/SubscribeProperties-dbg.js +49 -0
- package/dist-ui5/resources/computec/appengine/uibase/communication/SubscribeProperties.js +2 -0
- package/dist-ui5/resources/computec/appengine/uibase/communication/SubscribeProperties.js.map +1 -0
- package/dist-ui5/resources/computec/appengine/uibase/helpers/ErrorHelper-dbg.js +13 -1
- package/dist-ui5/resources/computec/appengine/uibase/helpers/ErrorHelper.js +1 -1
- package/dist-ui5/resources/computec/appengine/uibase/helpers/ErrorHelper.js.map +1 -1
- package/dist-ui5/resources/computec/appengine/uibase/helpers/HttpClientHelper-dbg.js +76 -85
- package/dist-ui5/resources/computec/appengine/uibase/helpers/HttpClientHelper.js +1 -1
- package/dist-ui5/resources/computec/appengine/uibase/helpers/HttpClientHelper.js.map +1 -1
- package/dist-ui5/resources/computec/appengine/uibase/index-dbg.js +5 -1
- package/dist-ui5/resources/computec/appengine/uibase/index.js +1 -1
- package/dist-ui5/resources/computec/appengine/uibase/index.js.map +1 -1
- package/dist-ui5/resources/computec/appengine/uibase/library-dbg.js +1 -1
- package/dist-ui5/resources/computec/appengine/uibase/library-preload.js +70 -10
- package/dist-ui5/resources/computec/appengine/uibase/library-preload.js.map +1 -1
- package/dist-ui5/resources/computec/appengine/uibase/library.js +1 -1
- package/dist-ui5/resources/computec/appengine/uibase/manifest.json +1 -1
- package/dist-ui5/resources/computec/appengine/uibase/models/AppEngineException-dbg.js +49 -12
- package/dist-ui5/resources/computec/appengine/uibase/models/AppEngineException.js +1 -1
- package/dist-ui5/resources/computec/appengine/uibase/models/AppEngineException.js.map +1 -1
- package/dist-ui5/resources/computec/appengine/uibase/models/BaseError-dbg.js +92 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/BaseError.js +2 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/BaseError.js.map +1 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/CompanyInfo-dbg.js +34 -6
- package/dist-ui5/resources/computec/appengine/uibase/models/CompanyInfo.js +1 -1
- package/dist-ui5/resources/computec/appengine/uibase/models/CompanyInfo.js.map +1 -1
- package/dist-ui5/resources/computec/appengine/uibase/models/DocumentedException-dbg.js +75 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/DocumentedException.js +2 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/DocumentedException.js.map +1 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/HttpResponse-dbg.js +17 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/HttpResponse.js +2 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/HttpResponse.js.map +1 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/IOdataResponse-dbg.js +7 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/IOdataResponse.js +2 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/IOdataResponse.js.map +1 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/OdataError-dbg.js +122 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/OdataError.js +2 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/OdataError.js.map +1 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/ProblemDetails-dbg.js +71 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/ProblemDetails.js +2 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/ProblemDetails.js.map +1 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/Session-dbg.js +20 -4
- package/dist-ui5/resources/computec/appengine/uibase/models/Session.js +1 -1
- package/dist-ui5/resources/computec/appengine/uibase/models/Session.js.map +1 -1
- package/dist-ui5/resources/computec/appengine/uibase/models/ValidationProblemDetails-dbg.js +83 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/ValidationProblemDetails.js +2 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/ValidationProblemDetails.js.map +1 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/Version-dbg.js +253 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/Version.js +2 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/Version.js.map +1 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/enums/HeadersContentTypeEnum-dbg.js +7 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/enums/HeadersContentTypeEnum.js +1 -1
- package/dist-ui5/resources/computec/appengine/uibase/models/enums/HeadersContentTypeEnum.js.map +1 -1
- package/dist-ui5/resources/computec/appengine/uibase/models/interfaces/IDocumentedException-dbg.js +7 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/interfaces/IDocumentedException.js +2 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/interfaces/IDocumentedException.js.map +1 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/interfaces/IHttpResponse-dbg.js +1 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/interfaces/IHttpResponse.js +2 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/interfaces/IHttpResponse.js.map +1 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/interfaces/IOdataError-dbg.js +1 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/interfaces/IOdataError.js +2 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/interfaces/IOdataError.js.map +1 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/interfaces/IProblemDetails-dbg.js +1 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/interfaces/IProblemDetails.js +2 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/interfaces/IProblemDetails.js.map +1 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/interfaces/IValidationProblemDetails-dbg.js +1 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/interfaces/IValidationProblemDetails.js +2 -0
- package/dist-ui5/resources/computec/appengine/uibase/models/interfaces/IValidationProblemDetails.js.map +1 -0
- package/package.json +11 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserInfo.d.ts","sourceRoot":"","sources":["../../src/models/UserInfo.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AAGtD,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,kBAAkB;IACvD,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"UserInfo.d.ts","sourceRoot":"","sources":["../../src/models/UserInfo.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AAGtD,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,kBAAkB;IACvD,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,wBAAwB,EAAE,MAAM,CAAC;IACjC,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,GAAG,EAAE,CAAC;IACtB,eAAe,EAAE,GAAG,EAAE,CAAC;IACvB,oBAAoB,EAAE,GAAG,EAAE,CAAC;CAC5B"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { IValidationProblemDetails } from "./interfaces/IValidationProblemDetails";
|
|
2
|
+
import ProblemDetails from "./ProblemDetails";
|
|
3
|
+
/**
|
|
4
|
+
* Specialized implementation for validation-specific problem details.
|
|
5
|
+
* Extends ProblemDetails to handle field-level validation errors
|
|
6
|
+
* with structured error mapping and optional request tracing.
|
|
7
|
+
*
|
|
8
|
+
* @extends ProblemDetails
|
|
9
|
+
* @implements IValidationProblemDetails
|
|
10
|
+
*/
|
|
11
|
+
export default class ValidationProblemDetails extends ProblemDetails implements IValidationProblemDetails {
|
|
12
|
+
errors: Record<string, string[]>;
|
|
13
|
+
traceId: string;
|
|
14
|
+
get name(): string;
|
|
15
|
+
get message(): string;
|
|
16
|
+
get error(): Error;
|
|
17
|
+
static is(obj: any): obj is IValidationProblemDetails;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=ValidationProblemDetails.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ValidationProblemDetails.d.ts","sourceRoot":"","sources":["../../src/models/ValidationProblemDetails.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAC;AACnF,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAE9C;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,OAAO,wBACpB,SAAQ,cACR,YAAW,yBAAyB;IAEpC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAM;IACtC,OAAO,EAAE,MAAM,CAAQ;IAEvB,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,OAAO,IAAI,MAAM,CAMpB;IAED,IAAI,KAAK,IAAI,KAAK,CAEjB;IAED,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,yBAAyB;CAQrD"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const ProblemDetails_1 = __importDefault(require("./ProblemDetails"));
|
|
7
|
+
/**
|
|
8
|
+
* Specialized implementation for validation-specific problem details.
|
|
9
|
+
* Extends ProblemDetails to handle field-level validation errors
|
|
10
|
+
* with structured error mapping and optional request tracing.
|
|
11
|
+
*
|
|
12
|
+
* @extends ProblemDetails
|
|
13
|
+
* @implements IValidationProblemDetails
|
|
14
|
+
*/
|
|
15
|
+
class ValidationProblemDetails extends ProblemDetails_1.default {
|
|
16
|
+
constructor() {
|
|
17
|
+
super(...arguments);
|
|
18
|
+
this.errors = {};
|
|
19
|
+
this.traceId = null;
|
|
20
|
+
}
|
|
21
|
+
get name() {
|
|
22
|
+
return "Validation Problem Details";
|
|
23
|
+
}
|
|
24
|
+
get message() {
|
|
25
|
+
let errorMessage = "";
|
|
26
|
+
Object.entries(this.errors).forEach(([field, messages]) => {
|
|
27
|
+
errorMessage += `${field}: ${messages.join(", ")}\n`;
|
|
28
|
+
});
|
|
29
|
+
return errorMessage.trim();
|
|
30
|
+
}
|
|
31
|
+
get error() {
|
|
32
|
+
return this;
|
|
33
|
+
}
|
|
34
|
+
static is(obj) {
|
|
35
|
+
if (!ProblemDetails_1.default.is(obj))
|
|
36
|
+
return false;
|
|
37
|
+
const candidate = obj;
|
|
38
|
+
return ("errors" in candidate && typeof candidate.errors === "object" && candidate.errors !== null);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
exports.default = ValidationProblemDetails;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import BaseBusinessObject from "./BaseBusinessObject";
|
|
2
|
+
export default class Version extends BaseBusinessObject {
|
|
3
|
+
static readonly VERSION_PATTERN: RegExp;
|
|
4
|
+
private readonly _major;
|
|
5
|
+
private readonly _minor;
|
|
6
|
+
private readonly _build;
|
|
7
|
+
private readonly _revision;
|
|
8
|
+
private readonly _prerelease;
|
|
9
|
+
constructor();
|
|
10
|
+
constructor(version: Version);
|
|
11
|
+
constructor(version: string);
|
|
12
|
+
constructor(version: number);
|
|
13
|
+
constructor(major: number, minor: number, build?: number, revision?: number, prerelease?: string);
|
|
14
|
+
static tryParse(version: string): {
|
|
15
|
+
success: boolean;
|
|
16
|
+
version?: Version;
|
|
17
|
+
};
|
|
18
|
+
private static tryParseComponent;
|
|
19
|
+
static isVersion(obj: any): obj is Partial<Version>;
|
|
20
|
+
get major(): number;
|
|
21
|
+
get minor(): number;
|
|
22
|
+
get build(): number;
|
|
23
|
+
get revision(): number;
|
|
24
|
+
get prerelease(): string;
|
|
25
|
+
static ZERO(): Version;
|
|
26
|
+
isZero(): boolean;
|
|
27
|
+
toString(): string;
|
|
28
|
+
private compare;
|
|
29
|
+
equals(other: Version): boolean;
|
|
30
|
+
lessThan(other: Version): boolean;
|
|
31
|
+
greaterThan(other: Version): boolean;
|
|
32
|
+
lessThanOrEqual(other: Version): boolean;
|
|
33
|
+
greaterThanOrEqual(other: Version): boolean;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=Version.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Version.d.ts","sourceRoot":"","sources":["../../src/models/Version.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AAEtD,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,kBAAkB;IACtD,gBAAuB,eAAe,SAAgC;IACtE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAa;IACvC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;;gBAG9B,OAAO,EAAE,OAAO;gBAChB,OAAO,EAAE,MAAM;gBACf,OAAO,EAAE,MAAM;gBAE1B,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,KAAK,CAAC,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,MAAM;WA2CN,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG;QACxC,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,CAAC,EAAE,OAAO,CAAC;KAClB;IA4DD,OAAO,CAAC,MAAM,CAAC,iBAAiB;WAalB,SAAS,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC;IAS1D,IAAW,KAAK,IAAI,MAAM,CAEzB;IACD,IAAW,KAAK,IAAI,MAAM,CAEzB;IACD,IAAW,KAAK,IAAI,MAAM,CAEzB;IACD,IAAW,QAAQ,IAAI,MAAM,CAE5B;IACD,IAAW,UAAU,IAAI,MAAM,CAE9B;WAEa,IAAI;IAIX,MAAM,IAAI,OAAO;IAIxB,QAAQ,IAAI,MAAM;IAYlB,OAAO,CAAC,OAAO;IA8BR,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;IAI/B,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;IAIjC,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;IAIpC,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;IAIxC,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;CAGlD"}
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const BaseBusinessObject_1 = __importDefault(require("./BaseBusinessObject"));
|
|
7
|
+
class Version extends BaseBusinessObject_1.default {
|
|
8
|
+
constructor(major, minor, build, revision, prerelease) {
|
|
9
|
+
super();
|
|
10
|
+
this._major = 0; // Major version number
|
|
11
|
+
this._minor = 0; // Minor version number
|
|
12
|
+
this._build = 0; // Build number
|
|
13
|
+
this._revision = 0; // Revision number
|
|
14
|
+
this._prerelease = ""; // Prerelease/metadata suffix
|
|
15
|
+
if (arguments.length === 0)
|
|
16
|
+
return this;
|
|
17
|
+
if (Version.isVersion(major)) {
|
|
18
|
+
this._major = major._major;
|
|
19
|
+
this._minor = major._minor;
|
|
20
|
+
this._build = major._build;
|
|
21
|
+
this._revision = major._revision;
|
|
22
|
+
this._prerelease = major._prerelease || "";
|
|
23
|
+
}
|
|
24
|
+
else if (typeof major === "string") {
|
|
25
|
+
const parsed = Version.tryParse(major);
|
|
26
|
+
if (!parsed.success) {
|
|
27
|
+
throw new Error("Invalid version format. Expected format: 'major.minor[.build][.revision][-prerelease]'");
|
|
28
|
+
}
|
|
29
|
+
this._major = parsed.version._major;
|
|
30
|
+
this._minor = parsed.version._minor;
|
|
31
|
+
this._build = parsed.version._build;
|
|
32
|
+
this._revision = parsed.version._revision;
|
|
33
|
+
this._prerelease = parsed.version._prerelease;
|
|
34
|
+
}
|
|
35
|
+
else if (typeof major === "number" && arguments.length === 1) {
|
|
36
|
+
const padded = major.toString().padStart(7, "0");
|
|
37
|
+
this._major = parseInt(padded.slice(0, 2), 10);
|
|
38
|
+
this._minor = parseInt(padded.slice(2, 4), 10);
|
|
39
|
+
this._build = parseInt(padded.slice(4, 7), 10);
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
this._major = major || 0;
|
|
43
|
+
this._minor = minor || 0;
|
|
44
|
+
this._build = build || 0;
|
|
45
|
+
this._revision = revision || 0;
|
|
46
|
+
this._prerelease = prerelease || "";
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
static tryParse(version) {
|
|
50
|
+
if (!version) {
|
|
51
|
+
return { success: false };
|
|
52
|
+
}
|
|
53
|
+
let prerelease = "";
|
|
54
|
+
let prereleasePosition = version.indexOf("-");
|
|
55
|
+
if (prereleasePosition === -1) {
|
|
56
|
+
prereleasePosition = version.indexOf("+");
|
|
57
|
+
}
|
|
58
|
+
const isPrerelease = prereleasePosition > 1;
|
|
59
|
+
if (isPrerelease) {
|
|
60
|
+
prerelease = version.substring(prereleasePosition + 1);
|
|
61
|
+
version = version.substring(0, prereleasePosition);
|
|
62
|
+
}
|
|
63
|
+
const parts = version.split(".");
|
|
64
|
+
const length = parts.length;
|
|
65
|
+
if (length < 2 || length > 4) {
|
|
66
|
+
return { success: false };
|
|
67
|
+
}
|
|
68
|
+
const parsedComponents = [];
|
|
69
|
+
// Parse and validate each component
|
|
70
|
+
for (let i = 0; i < length; i++) {
|
|
71
|
+
const component = this.tryParseComponent(parts[i]);
|
|
72
|
+
if (!component.success) {
|
|
73
|
+
return { success: false };
|
|
74
|
+
}
|
|
75
|
+
parsedComponents.push(component.value);
|
|
76
|
+
}
|
|
77
|
+
// Create version based on number of components
|
|
78
|
+
let parsedVersion;
|
|
79
|
+
if (length === 2) {
|
|
80
|
+
parsedVersion = new Version(parsedComponents[0], parsedComponents[1], 0, 0, prerelease);
|
|
81
|
+
}
|
|
82
|
+
else if (length === 3) {
|
|
83
|
+
parsedVersion = new Version(parsedComponents[0], parsedComponents[1], parsedComponents[2], 0, prerelease);
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
parsedVersion = new Version(parsedComponents[0], parsedComponents[1], parsedComponents[2], parsedComponents[3], prerelease);
|
|
87
|
+
}
|
|
88
|
+
return { success: true, version: parsedVersion };
|
|
89
|
+
}
|
|
90
|
+
static tryParseComponent(component) {
|
|
91
|
+
const parsed = parseInt(component, 10);
|
|
92
|
+
if (isNaN(parsed) || parsed < 0) {
|
|
93
|
+
return { success: false };
|
|
94
|
+
}
|
|
95
|
+
return { success: true, value: parsed };
|
|
96
|
+
}
|
|
97
|
+
static isVersion(obj) {
|
|
98
|
+
var _a, _b, _c;
|
|
99
|
+
if (obj instanceof Version)
|
|
100
|
+
return true;
|
|
101
|
+
if (!obj || typeof obj !== "object")
|
|
102
|
+
return false;
|
|
103
|
+
if (((_a = obj._major) !== null && _a !== void 0 ? _a : null) === null)
|
|
104
|
+
return false;
|
|
105
|
+
if (((_b = obj._minor) !== null && _b !== void 0 ? _b : null) === null)
|
|
106
|
+
return false;
|
|
107
|
+
if (((_c = obj._build) !== null && _c !== void 0 ? _c : null) === null)
|
|
108
|
+
return false;
|
|
109
|
+
return true;
|
|
110
|
+
}
|
|
111
|
+
get major() {
|
|
112
|
+
return this._major;
|
|
113
|
+
}
|
|
114
|
+
get minor() {
|
|
115
|
+
return this._minor;
|
|
116
|
+
}
|
|
117
|
+
get build() {
|
|
118
|
+
return this._build;
|
|
119
|
+
}
|
|
120
|
+
get revision() {
|
|
121
|
+
return this._revision;
|
|
122
|
+
}
|
|
123
|
+
get prerelease() {
|
|
124
|
+
return this._prerelease;
|
|
125
|
+
}
|
|
126
|
+
static ZERO() {
|
|
127
|
+
return new Version(0, 0, 0);
|
|
128
|
+
}
|
|
129
|
+
isZero() {
|
|
130
|
+
return this._major === 0 && this._minor === 0 && this._build === 0;
|
|
131
|
+
}
|
|
132
|
+
toString() {
|
|
133
|
+
let version = `${this._major.toString()}.${this._minor.toString()}.${this._build.toString()}`;
|
|
134
|
+
if (this._revision > 0) {
|
|
135
|
+
version += `.${this._revision.toString()}`;
|
|
136
|
+
}
|
|
137
|
+
if (this._prerelease) {
|
|
138
|
+
version += `-${this._prerelease}`;
|
|
139
|
+
}
|
|
140
|
+
return version;
|
|
141
|
+
}
|
|
142
|
+
//#region Comparison Methods
|
|
143
|
+
compare(other) {
|
|
144
|
+
if (this._major !== other._major) {
|
|
145
|
+
return this._major - other._major;
|
|
146
|
+
}
|
|
147
|
+
if (this._minor !== other._minor) {
|
|
148
|
+
return this._minor - other._minor;
|
|
149
|
+
}
|
|
150
|
+
if (this._build !== other._build) {
|
|
151
|
+
return this._build - other._build;
|
|
152
|
+
}
|
|
153
|
+
if (this._revision !== other._revision) {
|
|
154
|
+
return this._revision - other._revision;
|
|
155
|
+
}
|
|
156
|
+
// Handle prerelease comparison
|
|
157
|
+
// Normal versions (no prerelease) are greater than prerelease versions
|
|
158
|
+
if (!this._prerelease && other._prerelease)
|
|
159
|
+
return 1;
|
|
160
|
+
if (this._prerelease && !other._prerelease)
|
|
161
|
+
return -1;
|
|
162
|
+
// Both have prerelease, compare lexicographically
|
|
163
|
+
if (this._prerelease && other._prerelease) {
|
|
164
|
+
return this._prerelease.localeCompare(other._prerelease);
|
|
165
|
+
}
|
|
166
|
+
return 0;
|
|
167
|
+
}
|
|
168
|
+
equals(other) {
|
|
169
|
+
return this.compare(other) === 0;
|
|
170
|
+
}
|
|
171
|
+
lessThan(other) {
|
|
172
|
+
return this.compare(other) < 0;
|
|
173
|
+
}
|
|
174
|
+
greaterThan(other) {
|
|
175
|
+
return this.compare(other) > 0;
|
|
176
|
+
}
|
|
177
|
+
lessThanOrEqual(other) {
|
|
178
|
+
return this.compare(other) <= 0;
|
|
179
|
+
}
|
|
180
|
+
greaterThanOrEqual(other) {
|
|
181
|
+
return this.compare(other) >= 0;
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
Version.VERSION_PATTERN = /^\d+(\.\d+){1,3}([-+].+)?$/; // Pattern for version strings with optional prerelease/metadata
|
|
185
|
+
exports.default = Version;
|
|
@@ -2,6 +2,13 @@ declare enum HeadersContentTypeEnum {
|
|
|
2
2
|
Json = "application/json",
|
|
3
3
|
Text = "text/plain",
|
|
4
4
|
OctetStream = "application/octet-stream",
|
|
5
|
+
Pdf = "application/pdf",
|
|
6
|
+
Csv = "text/csv",
|
|
7
|
+
Excel = "application/vnd.ms-excel",
|
|
8
|
+
ExcelOpenXml = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
|
|
9
|
+
Word = "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
|
|
10
|
+
Zip = "application/zip",
|
|
11
|
+
Xml = "application/xml",
|
|
5
12
|
Null = "null"
|
|
6
13
|
}
|
|
7
14
|
export default HeadersContentTypeEnum;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HeadersContentTypeEnum.d.ts","sourceRoot":"","sources":["../../../src/models/enums/HeadersContentTypeEnum.ts"],"names":[],"mappings":"AAAA,aAAK,sBAAsB;IACzB,IAAI,qBAAqB;IACzB,IAAI,eAAe;IACnB,WAAW,6BAA6B;IACxC,IAAI,SAAS;CACd;AAED,eAAe,sBAAsB,CAAC"}
|
|
1
|
+
{"version":3,"file":"HeadersContentTypeEnum.d.ts","sourceRoot":"","sources":["../../../src/models/enums/HeadersContentTypeEnum.ts"],"names":[],"mappings":"AAAA,aAAK,sBAAsB;IACzB,IAAI,qBAAqB;IACzB,IAAI,eAAe;IACnB,WAAW,6BAA6B;IACxC,GAAG,oBAAoB;IACvB,GAAG,aAAa;IAChB,KAAK,6BAA6B;IAClC,YAAY,sEAAsE;IAClF,IAAI,4EAA4E;IAChF,GAAG,oBAAoB;IACvB,GAAG,oBAAoB;IACvB,IAAI,SAAS;CACd;AAED,eAAe,sBAAsB,CAAC"}
|
|
@@ -5,6 +5,13 @@ var HeadersContentTypeEnum;
|
|
|
5
5
|
HeadersContentTypeEnum["Json"] = "application/json";
|
|
6
6
|
HeadersContentTypeEnum["Text"] = "text/plain";
|
|
7
7
|
HeadersContentTypeEnum["OctetStream"] = "application/octet-stream";
|
|
8
|
+
HeadersContentTypeEnum["Pdf"] = "application/pdf";
|
|
9
|
+
HeadersContentTypeEnum["Csv"] = "text/csv";
|
|
10
|
+
HeadersContentTypeEnum["Excel"] = "application/vnd.ms-excel";
|
|
11
|
+
HeadersContentTypeEnum["ExcelOpenXml"] = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
|
|
12
|
+
HeadersContentTypeEnum["Word"] = "application/vnd.openxmlformats-officedocument.wordprocessingml.document";
|
|
13
|
+
HeadersContentTypeEnum["Zip"] = "application/zip";
|
|
14
|
+
HeadersContentTypeEnum["Xml"] = "application/xml";
|
|
8
15
|
HeadersContentTypeEnum["Null"] = "null";
|
|
9
16
|
})(HeadersContentTypeEnum || (HeadersContentTypeEnum = {}));
|
|
10
17
|
exports.default = HeadersContentTypeEnum;
|
|
@@ -1,7 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Interface for AppEngine-specific exceptions that provide structured error information.
|
|
3
|
+
* This interface defines the contract for exceptions thrown by the AppEngine system,
|
|
4
|
+
* following the RFC 7807 Problem Details specification with Title and Detail properties.
|
|
5
|
+
*
|
|
6
|
+
* AppEngineExceptions are typically used for business logic errors, validation failures,
|
|
7
|
+
* and other application-specific error conditions that need to be communicated to the UI
|
|
8
|
+
* with clear, user-friendly information.
|
|
9
|
+
*
|
|
10
|
+
* This interface is designed to work with C# backend services that implement
|
|
11
|
+
* the ProblemDetails standard for consistent error reporting across the application.
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```typescript
|
|
15
|
+
* const exception: IAppEngineException = {
|
|
16
|
+
* Title: "Validation Error",
|
|
17
|
+
* Detail: "The provided email address is not in a valid format"
|
|
18
|
+
* };
|
|
19
|
+
* ```
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* ```typescript
|
|
23
|
+
* // Business logic error
|
|
24
|
+
* const businessError: IAppEngineException = {
|
|
25
|
+
* Title: "Operation Not Allowed",
|
|
26
|
+
* Detail: "Cannot delete a customer that has active orders"
|
|
27
|
+
* };
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
1
30
|
export default interface IAppEngineException {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
31
|
+
/**
|
|
32
|
+
* A short, human-readable summary of the problem.
|
|
33
|
+
* This should be a brief title that describes the general nature of the error
|
|
34
|
+
* without including instance-specific details.
|
|
35
|
+
*
|
|
36
|
+
* The title should be suitable for display in error dialogs, notifications,
|
|
37
|
+
* or as a heading for more detailed error information.
|
|
38
|
+
*
|
|
39
|
+
* @example "Validation Error", "Authorization Failed", "Resource Not Found"
|
|
40
|
+
* @example "Operation Not Allowed", "Configuration Error", "Service Unavailable"
|
|
41
|
+
*/
|
|
42
|
+
Title: string;
|
|
43
|
+
/**
|
|
44
|
+
* A human-readable explanation specific to this occurrence of the problem.
|
|
45
|
+
* This should provide detailed information about what went wrong and,
|
|
46
|
+
* when possible, guidance on how to resolve the issue.
|
|
47
|
+
*
|
|
48
|
+
* The detail should be informative enough for users or developers to understand
|
|
49
|
+
* the specific error condition and take appropriate action.
|
|
50
|
+
*
|
|
51
|
+
* @example "The email field must contain a valid email address format"
|
|
52
|
+
* @example "You do not have permission to access this resource. Please contact your administrator."
|
|
53
|
+
* @example "The customer cannot be deleted because they have 3 active orders. Please cancel or complete the orders first."
|
|
54
|
+
*/
|
|
55
|
+
Detail: string;
|
|
6
56
|
}
|
|
7
57
|
//# sourceMappingURL=IAppEngineException.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IAppEngineException.d.ts","sourceRoot":"","sources":["../../../src/models/interfaces/IAppEngineException.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,WAAW,mBAAmB;
|
|
1
|
+
{"version":3,"file":"IAppEngineException.d.ts","sourceRoot":"","sources":["../../../src/models/interfaces/IAppEngineException.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,CAAC,OAAO,WAAW,mBAAmB;IAC3C;;;;;;;;;;OAUG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;;;;;;;;;OAWG;IACH,MAAM,EAAE,MAAM,CAAC;CACf"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Interface for AppEngine-specific exceptions that provide structured error information.
|
|
3
|
+
* This interface defines the contract for exceptions thrown by the AppEngine system,
|
|
4
|
+
* following the RFC 7807 Problem Details specification with Title and Detail properties.
|
|
5
|
+
*
|
|
6
|
+
* AppEngineExceptions are typically used for business logic errors, validation failures,
|
|
7
|
+
* and other application-specific error conditions that need to be communicated to the UI
|
|
8
|
+
* with clear, user-friendly information.
|
|
9
|
+
*
|
|
10
|
+
* This interface is designed to work with C# backend services that implement
|
|
11
|
+
* the ProblemDetails standard for consistent error reporting across the application.
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```typescript
|
|
15
|
+
* const exception: IAppEngineException = {
|
|
16
|
+
* title: "Validation Error",
|
|
17
|
+
* detail: "The provided email address is not in a valid format",
|
|
18
|
+
* documentationUrl: "https://learn.computec.one"
|
|
19
|
+
* };
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* ```typescript
|
|
24
|
+
* // Business logic error
|
|
25
|
+
* const businessError: IAppEngineException = {
|
|
26
|
+
* title: "Operation Not Allowed",
|
|
27
|
+
* detail: "Cannot delete a customer that has active orders",
|
|
28
|
+
* documentationUrl: "https://learn.computec.one"
|
|
29
|
+
* };
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
export default interface IDocumentedException {
|
|
33
|
+
/**
|
|
34
|
+
* A short, human-readable summary of the problem.
|
|
35
|
+
* This should be a brief title that describes the general nature of the error
|
|
36
|
+
* without including instance-specific details.
|
|
37
|
+
*
|
|
38
|
+
* The title should be suitable for display in error dialogs, notifications,
|
|
39
|
+
* or as a heading for more detailed error information.
|
|
40
|
+
*
|
|
41
|
+
* @example "Validation Error", "Authorization Failed", "Resource Not Found"
|
|
42
|
+
* @example "Operation Not Allowed", "Configuration Error", "Service Unavailable"
|
|
43
|
+
*/
|
|
44
|
+
title: string;
|
|
45
|
+
/**
|
|
46
|
+
* A human-readable explanation specific to this occurrence of the problem.
|
|
47
|
+
* This should provide detailed information about what went wrong and,
|
|
48
|
+
* when possible, guidance on how to resolve the issue.
|
|
49
|
+
*
|
|
50
|
+
* The detail should be informative enough for users or developers to understand
|
|
51
|
+
* the specific error condition and take appropriate action.
|
|
52
|
+
*
|
|
53
|
+
* @example "The email field must contain a valid email address format"
|
|
54
|
+
* @example "You do not have permission to access this resource. Please contact your administrator."
|
|
55
|
+
* @example "The customer cannot be deleted because they have 3 active orders. Please cancel or complete the orders first."
|
|
56
|
+
*/
|
|
57
|
+
detail: string;
|
|
58
|
+
documentationUrl: string;
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=IDocumentedException.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IDocumentedException.d.ts","sourceRoot":"","sources":["../../../src/models/interfaces/IDocumentedException.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,CAAC,OAAO,WAAW,oBAAoB;IAC5C;;;;;;;;;;OAUG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;;;;;;;;;OAWG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf,gBAAgB,EAAE,MAAM,CAAC;CACzB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IHttpResponse.d.ts","sourceRoot":"","sources":["../../../src/models/interfaces/IHttpResponse.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa,CAAC,CAAC;IAC/B,IAAI,EAAE,CAAC,CAAC;IACR,QAAQ,EAAE,QAAQ,CAAC;CACnB"}
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Represents a detailed error entry within an OData error response.
|
|
3
|
+
* Each detail provides specific information about individual validation errors
|
|
4
|
+
* or issues that occurred during the operation.
|
|
5
|
+
*
|
|
6
|
+
* This follows the OData v4 specification for error detail structures,
|
|
7
|
+
* commonly used in C# Web API and Entity Framework OData implementations.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```typescript
|
|
11
|
+
* const detail: IODataErrorDetail = {
|
|
12
|
+
* code: "FIELD_REQUIRED",
|
|
13
|
+
* message: "The Name field is required",
|
|
14
|
+
* target: "Name"
|
|
15
|
+
* };
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
export interface IODataErrorDetail {
|
|
19
|
+
/**
|
|
20
|
+
* The error code specific to this detail.
|
|
21
|
+
* Typically represents a validation rule or specific error type.
|
|
22
|
+
*
|
|
23
|
+
* @example "FIELD_REQUIRED", "INVALID_FORMAT", "VALUE_OUT_OF_RANGE"
|
|
24
|
+
*/
|
|
25
|
+
code?: string;
|
|
26
|
+
/**
|
|
27
|
+
* Human-readable description of the specific error.
|
|
28
|
+
* Should provide clear information about what went wrong.
|
|
29
|
+
*
|
|
30
|
+
* @example "The Name field is required", "Invalid email format"
|
|
31
|
+
*/
|
|
32
|
+
message?: string;
|
|
33
|
+
/**
|
|
34
|
+
* The target field, property, or parameter that caused this error.
|
|
35
|
+
* Helps identify which specific input or data element has the issue.
|
|
36
|
+
*
|
|
37
|
+
* @example "Name", "Email", "User.Address.PostalCode"
|
|
38
|
+
*/
|
|
39
|
+
target?: string;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Represents the inner error structure containing technical debugging information.
|
|
43
|
+
* This is typically populated by C# backend services and contains detailed
|
|
44
|
+
* technical information useful for developers and system administrators.
|
|
45
|
+
*
|
|
46
|
+
* Inner errors can be nested to represent a chain of exceptions that led
|
|
47
|
+
* to the final error condition.
|
|
48
|
+
*
|
|
49
|
+
* @example
|
|
50
|
+
* ```typescript
|
|
51
|
+
* const innerError: IODataInnerError = {
|
|
52
|
+
* message: "Object reference not set to an instance of an object",
|
|
53
|
+
* type: "System.NullReferenceException",
|
|
54
|
+
* stacktrace: "at MyService.ProcessData()...",
|
|
55
|
+
* innererror: {
|
|
56
|
+
* message: "Connection timeout",
|
|
57
|
+
* type: "System.TimeoutException"
|
|
58
|
+
* }
|
|
59
|
+
* };
|
|
60
|
+
* ```
|
|
61
|
+
*/
|
|
62
|
+
export interface IODataInnerError {
|
|
63
|
+
/**
|
|
64
|
+
* The technical error message from the underlying exception.
|
|
65
|
+
* Usually contains the actual exception message from the C# backend.
|
|
66
|
+
*
|
|
67
|
+
* @example "Object reference not set to an instance of an object"
|
|
68
|
+
*/
|
|
69
|
+
message?: string;
|
|
70
|
+
/**
|
|
71
|
+
* The .NET type name of the exception that occurred.
|
|
72
|
+
* Useful for developers to understand the specific exception type.
|
|
73
|
+
*
|
|
74
|
+
* @example "System.NullReferenceException", "System.ArgumentException"
|
|
75
|
+
*/
|
|
76
|
+
type?: string;
|
|
77
|
+
/**
|
|
78
|
+
* The full stack trace from the C# exception.
|
|
79
|
+
* Contains detailed information about where the error occurred in the code.
|
|
80
|
+
*
|
|
81
|
+
* @example "at MyNamespace.MyClass.MyMethod() in C:\\Source\\MyFile.cs:line 42"
|
|
82
|
+
*/
|
|
83
|
+
stacktrace?: string;
|
|
84
|
+
/**
|
|
85
|
+
* Nested inner error for chained exceptions.
|
|
86
|
+
* Allows representation of exception chains where one exception caused another.
|
|
87
|
+
*
|
|
88
|
+
* @example When a database timeout causes a business logic exception
|
|
89
|
+
*/
|
|
90
|
+
innererror?: IODataInnerError;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Represents the core error object structure within an OData error response.
|
|
94
|
+
* This contains the primary error information including code, message, details,
|
|
95
|
+
* and optional inner error data.
|
|
96
|
+
*
|
|
97
|
+
* This interface is designed to match the OData v4 error format specification
|
|
98
|
+
* and is typically implemented by C# Web API services using Entity Framework
|
|
99
|
+
* or ASP.NET Core OData middleware.
|
|
100
|
+
*
|
|
101
|
+
* @example
|
|
102
|
+
* ```typescript
|
|
103
|
+
* const errorObject: IOdataErrorObject = {
|
|
104
|
+
* code: "VALIDATION_FAILED",
|
|
105
|
+
* message: "One or more validation errors occurred",
|
|
106
|
+
* details: [
|
|
107
|
+
* { code: "REQUIRED", message: "Name is required", target: "Name" }
|
|
108
|
+
* ],
|
|
109
|
+
* innererror: {
|
|
110
|
+
* type: "ValidationException",
|
|
111
|
+
* message: "Validation failed for entity"
|
|
112
|
+
* }
|
|
113
|
+
* };
|
|
114
|
+
* ```
|
|
115
|
+
*/
|
|
116
|
+
export interface IOdataErrorObject {
|
|
117
|
+
/**
|
|
118
|
+
* The primary error code identifying the type of error.
|
|
119
|
+
* Represents the main category or type of error that occurred.
|
|
120
|
+
*
|
|
121
|
+
* @example "VALIDATION_FAILED", "UNAUTHORIZED", "NOT_FOUND", "INTERNAL_ERROR"
|
|
122
|
+
*/
|
|
123
|
+
code: string;
|
|
124
|
+
/**
|
|
125
|
+
* The primary human-readable error message.
|
|
126
|
+
* Should provide a clear, user-friendly description of what went wrong.
|
|
127
|
+
*
|
|
128
|
+
* @example "One or more validation errors occurred", "Access denied"
|
|
129
|
+
*/
|
|
130
|
+
message: string;
|
|
131
|
+
/**
|
|
132
|
+
* Array of detailed error information.
|
|
133
|
+
* Contains specific details about individual errors, particularly useful
|
|
134
|
+
* for validation errors where multiple fields may have issues.
|
|
135
|
+
*/
|
|
136
|
+
details: IODataErrorDetail[];
|
|
137
|
+
/**
|
|
138
|
+
* Optional inner error containing technical debugging information.
|
|
139
|
+
* Typically includes exception details, stack traces, and other
|
|
140
|
+
* technical information from the C# backend service.
|
|
141
|
+
*/
|
|
142
|
+
innererror?: IODataInnerError;
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Represents the complete OData error response structure.
|
|
146
|
+
* This is the top-level interface that wraps the error object and matches
|
|
147
|
+
* the standard OData v4 error response format.
|
|
148
|
+
*
|
|
149
|
+
* This structure is typically returned by C# Web API services when errors occur,
|
|
150
|
+
* following the OData specification for error responses.
|
|
151
|
+
*
|
|
152
|
+
* @example
|
|
153
|
+
* ```typescript
|
|
154
|
+
* // Typical OData error response from C# Web API
|
|
155
|
+
* const odataErrorResponse: IODataError = {
|
|
156
|
+
* error: {
|
|
157
|
+
* code: "VALIDATION_FAILED",
|
|
158
|
+
* message: "Validation failed",
|
|
159
|
+
* details: [
|
|
160
|
+
* {
|
|
161
|
+
* code: "REQUIRED_FIELD",
|
|
162
|
+
* message: "The Name field is required",
|
|
163
|
+
* target: "Name"
|
|
164
|
+
* }
|
|
165
|
+
* ],
|
|
166
|
+
* innererror: {
|
|
167
|
+
* type: "System.ComponentModel.DataAnnotations.ValidationException",
|
|
168
|
+
* message: "Validation failed for one or more entities"
|
|
169
|
+
* }
|
|
170
|
+
* }
|
|
171
|
+
* };
|
|
172
|
+
* ```
|
|
173
|
+
*/
|
|
174
|
+
export interface IODataError {
|
|
175
|
+
/**
|
|
176
|
+
* The error object containing all error information.
|
|
177
|
+
* This follows the OData v4 specification requirement that errors
|
|
178
|
+
* be wrapped in an "error" property at the root level.
|
|
179
|
+
*/
|
|
180
|
+
error: IOdataErrorObject;
|
|
181
|
+
}
|
|
182
|
+
//# sourceMappingURL=IOdataError.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IOdataError.d.ts","sourceRoot":"","sources":["../../../src/models/interfaces/IOdataError.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,iBAAiB;IACjC;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,WAAW,gBAAgB;IAChC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,gBAAgB,CAAC;CAC9B;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,WAAW,iBAAiB;IACjC;;;;;OAKG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;;;;OAKG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;;;OAIG;IACH,OAAO,EAAE,iBAAiB,EAAE,CAAC;IAE7B;;;;OAIG;IACH,UAAU,CAAC,EAAE,gBAAgB,CAAC;CAC9B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,WAAW,WAAW;IAC3B;;;;OAIG;IACH,KAAK,EAAE,iBAAiB,CAAC;CACzB"}
|