sodas-sdk 1.5.1 → 1.6.0

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 (30) hide show
  1. package/dist/SODAS_SDK_CLASS/DCAT/dataService.d.ts +2 -2
  2. package/dist/SODAS_SDK_CLASS/DCAT/dataset.d.ts +2 -2
  3. package/dist/SODAS_SDK_CLASS/DCAT/datasetSeries.d.ts +2 -2
  4. package/dist/SODAS_SDK_CLASS/DCAT/dcatResource.d.ts +9 -5
  5. package/dist/SODAS_SDK_CLASS/DCAT/distribution.d.ts +4 -4
  6. package/dist/SODAS_SDK_CLASS/profileModel.d.ts +38 -0
  7. package/dist/SODAS_SDK_CLASS/template/validation.d.ts +30 -55
  8. package/dist/SODAS_SDK_CLASS/template/validationType.d.ts +196 -0
  9. package/dist/__tests__/setting/testEnvironmentConfig.d.ts +1 -1
  10. package/dist/__tests__/setting/testSetting.d.ts +1 -1
  11. package/dist/__tests__/utility/BOC.d.ts +4 -4
  12. package/dist/__tests__/utility/testDTO.d.ts +3 -0
  13. package/dist/__tests__/utility/validation.d.ts +3 -5
  14. package/dist/core/auth.d.ts +1 -1
  15. package/dist/core/error.d.ts +0 -7
  16. package/dist/core/functionalityError.d.ts +1 -8
  17. package/dist/core/type.d.ts +3 -37
  18. package/dist/index.browser.js +947 -509
  19. package/dist/index.browser.js.map +1 -1
  20. package/dist/index.d.ts +20 -5
  21. package/dist/index.legacy.browser.js +931 -506
  22. package/dist/index.legacy.browser.js.map +1 -1
  23. package/dist/index.legacy.node.cjs +930 -505
  24. package/dist/index.legacy.node.cjs.map +1 -1
  25. package/dist/index.node.js +947 -509
  26. package/dist/index.node.js.map +1 -1
  27. package/package.json +1 -1
  28. package/dist/SODAS_SDK_CLASS/dcatClass.d.ts +0 -38
  29. /package/dist/__tests__/SODAS_SDK_CLASS/template/validation/{CRUD.medium.test.d.ts → CRUDL.medium.test.d.ts} +0 -0
  30. /package/dist/__tests__/SODAS_SDK_CLASS/template/validation/{LIST.big.test.d.ts → manageRules.medium.test.d.ts} +0 -0
@@ -6300,7 +6300,7 @@ __webpack_require__.r(__webpack_exports__);
6300
6300
  /* harmony import */ var _core_error__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../core/error */ "./lib/core/error.ts");
6301
6301
  /* harmony import */ var _core_type__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../core/type */ "./lib/core/type.ts");
6302
6302
  /* harmony import */ var _SODAS_SDK_FILE_thumbnailFile__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../SODAS_SDK_FILE/thumbnailFile */ "./lib/SODAS_SDK_FILE/thumbnailFile.ts");
6303
- /* harmony import */ var _dcatClass__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../dcatClass */ "./lib/SODAS_SDK_CLASS/dcatClass.ts");
6303
+ /* harmony import */ var _profileModel__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../profileModel */ "./lib/SODAS_SDK_CLASS/profileModel.ts");
6304
6304
  /* harmony import */ var _versionInfo__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./versionInfo */ "./lib/SODAS_SDK_CLASS/DCAT/versionInfo.ts");
6305
6305
  var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
6306
6306
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
@@ -6316,11 +6316,11 @@ var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _argume
6316
6316
 
6317
6317
 
6318
6318
 
6319
- class DCAT_RESOURCE extends _dcatClass__WEBPACK_IMPORTED_MODULE_3__["default"] {
6319
+ class DCAT_RESOURCE extends _profileModel__WEBPACK_IMPORTED_MODULE_3__["default"] {
6320
6320
  toDTO() {
6321
6321
  return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, super.toDTO()), { AssetID: this.AssetID, DatahubID: this.DatahubID, ThumbnailURL: this.ThumbnailURL, AccessRights: this.AccessRights, Status: this.Status, VersionNotes: this.VersionNotes, Version: this.Version }), (this.IsVersionOf && { IsVersionOf: this.IsVersionOf })), (this.PreviousVersionID && {
6322
6322
  PreviousVersionID: this.PreviousVersionID,
6323
- })), (this.NextVersionID && { NextVersionID: this.NextVersionID })), { ContactPoint: this.ContactPoint, KeywordML: this.KeywordML, LandingPage: this.LandingPage, Theme: this.Theme, ConformsTo: this.ConformsTo, Creator: this.Creator, DescriptionML: this.DescriptionML, Identifier: this.Identifier, IsReferencedBy: this.IsReferencedBy, Language: this.Language, License: this.License, Publisher: this.Publisher, Rights: this.Rights, TitleML: this.TitleML, Type: this.Type, HasPolicy: this.HasPolicy, IssuerID: this.IssuerID, ExtraMetadata: this.ExtraMetadata });
6323
+ })), (this.NextVersionID && { NextVersionID: this.NextVersionID })), { ContactPoint: this.ContactPoint, KeywordML: this.KeywordML, LandingPage: this.LandingPage, Theme: this.Theme, ConformsTo: this.ConformsTo, Creator: this.Creator, DescriptionML: this.DescriptionML, Identifier: this.Identifier, IsReferencedBy: this.IsReferencedBy, Language: this.Language, License: this.License, Publisher: this.Publisher, Rights: this.Rights, TitleML: this.TitleML, Type: this.Type, HasPolicy: this.HasPolicy, IssuerID: this.IssuerID, ExtraMetadata: this.ExtraMetadata, QualityMetadata: this.QualityMetadata });
6324
6324
  }
6325
6325
  populateFromDTO(dto) {
6326
6326
  const _super = Object.create(null, {
@@ -6373,6 +6373,8 @@ class DCAT_RESOURCE extends _dcatClass__WEBPACK_IMPORTED_MODULE_3__["default"] {
6373
6373
  dcatResourceDTO.IssuerID && (this.IssuerID = dcatResourceDTO.IssuerID);
6374
6374
  dcatResourceDTO.ExtraMetadata &&
6375
6375
  (this.ExtraMetadata = dcatResourceDTO.ExtraMetadata);
6376
+ dcatResourceDTO.QualityMetadata &&
6377
+ (this.QualityMetadata = dcatResourceDTO.QualityMetadata);
6376
6378
  yield this.populateVersionInfoFromDTO(dcatResourceDTO);
6377
6379
  });
6378
6380
  }
@@ -6573,6 +6575,18 @@ class DCAT_RESOURCE extends _dcatClass__WEBPACK_IMPORTED_MODULE_3__["default"] {
6573
6575
  }
6574
6576
  return this.ExtraMetadata[name];
6575
6577
  }
6578
+ setQualityMetadata(name, value) {
6579
+ if (!this.QualityMetadata) {
6580
+ this.QualityMetadata = {};
6581
+ }
6582
+ this.QualityMetadata[name] = value;
6583
+ }
6584
+ getQualityMetadata(name) {
6585
+ if (!this.QualityMetadata) {
6586
+ return undefined;
6587
+ }
6588
+ return this.QualityMetadata[name];
6589
+ }
6576
6590
  getTitle(languageCode = "ko") {
6577
6591
  if (!this.TitleML) {
6578
6592
  this.TitleML = {};
@@ -6669,7 +6683,7 @@ __webpack_require__.r(__webpack_exports__);
6669
6683
  /* harmony export */ });
6670
6684
  /* harmony import */ var _SODAS_SDK_FILE_dataFile__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../SODAS_SDK_FILE/dataFile */ "./lib/SODAS_SDK_FILE/dataFile.ts");
6671
6685
  /* harmony import */ var _core_type__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../core/type */ "./lib/core/type.ts");
6672
- /* harmony import */ var _dcatClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../dcatClass */ "./lib/SODAS_SDK_CLASS/dcatClass.ts");
6686
+ /* harmony import */ var _profileModel__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../profileModel */ "./lib/SODAS_SDK_CLASS/profileModel.ts");
6673
6687
  var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
6674
6688
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
6675
6689
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -6682,7 +6696,7 @@ var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _argume
6682
6696
 
6683
6697
 
6684
6698
 
6685
- class Distribution extends _dcatClass__WEBPACK_IMPORTED_MODULE_2__["default"] {
6699
+ class Distribution extends _profileModel__WEBPACK_IMPORTED_MODULE_2__["default"] {
6686
6700
  /**
6687
6701
  * Populates this instance with values from the given Distribution, except for:
6688
6702
  * - DB identity / temporal fields (ID, IRI, Issued, Modified, CreatedAt, UpdatedAt)
@@ -7058,254 +7072,6 @@ class VersionInfo {
7058
7072
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (VersionInfo);
7059
7073
 
7060
7074
 
7061
- /***/ }),
7062
-
7063
- /***/ "./lib/SODAS_SDK_CLASS/dcatClass.ts":
7064
- /*!******************************************!*\
7065
- !*** ./lib/SODAS_SDK_CLASS/dcatClass.ts ***!
7066
- \******************************************/
7067
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7068
-
7069
- __webpack_require__.r(__webpack_exports__);
7070
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7071
- /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
7072
- /* harmony export */ });
7073
- /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! axios */ "./node_modules/axios/lib/axios.js");
7074
- /* harmony import */ var _core_error__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/error */ "./lib/core/error.ts");
7075
- /* harmony import */ var _core_type__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/type */ "./lib/core/type.ts");
7076
- /* harmony import */ var _core_util__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/util */ "./lib/core/util.ts");
7077
- /* harmony import */ var _sodasSDKClass__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./sodasSDKClass */ "./lib/SODAS_SDK_CLASS/sodasSDKClass.ts");
7078
- var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
7079
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
7080
- return new (P || (P = Promise))(function (resolve, reject) {
7081
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
7082
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7083
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7084
- step((generator = generator.apply(thisArg, _arguments || [])).next());
7085
- });
7086
- };
7087
-
7088
-
7089
-
7090
-
7091
-
7092
- class DCAT_MODEL extends _sodasSDKClass__WEBPACK_IMPORTED_MODULE_3__["default"] {
7093
- toDTO() {
7094
- return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, (this.ID && { ID: this.ID })), (this.IRI && { IRI: this.IRI })), (this.Issued && { Issued: this.Issued.toISOString() })), (this.Modified && { Modified: this.Modified.toISOString() })), (this.CreatedAt && { CreatedAt: this.CreatedAt.toISOString() })), (this.UpdatedAt && { UpdatedAt: this.UpdatedAt.toISOString() }));
7095
- }
7096
- hasDBRecord() {
7097
- if (this.ID && this.IRI) {
7098
- return true;
7099
- }
7100
- else {
7101
- return false;
7102
- }
7103
- }
7104
- populateFromDTO(dto) {
7105
- return __awaiter(this, void 0, void 0, function* () {
7106
- dto.ID && (this.ID = (0,_core_type__WEBPACK_IMPORTED_MODULE_1__.asID)(dto.ID));
7107
- dto.IRI && (this.IRI = (0,_core_type__WEBPACK_IMPORTED_MODULE_1__.asIRI)(dto.IRI));
7108
- dto.Issued && (this.Issued = new Date(dto.Issued));
7109
- dto.Modified && (this.Modified = new Date(dto.Modified));
7110
- dto.CreatedAt && (this.CreatedAt = new Date(dto.CreatedAt));
7111
- dto.UpdatedAt && (this.UpdatedAt = new Date(dto.UpdatedAt));
7112
- });
7113
- }
7114
- static listDBRecords() {
7115
- return __awaiter(this, arguments, void 0, function* (pageNumber = 1, pageSize = 10, sortOrder = _core_type__WEBPACK_IMPORTED_MODULE_1__.SortOrder.DESC) {
7116
- //@ts-ignore
7117
- (0,_sodasSDKClass__WEBPACK_IMPORTED_MODULE_3__.throwErrorIfAPIURLNotSetForStatic)(this);
7118
- let response;
7119
- try {
7120
- response = yield axios__WEBPACK_IMPORTED_MODULE_4__["default"].get(this.prototype.constructor.LIST_URL, {
7121
- params: { pageNumber, pageSize, sortOrder },
7122
- });
7123
- }
7124
- catch (error) {
7125
- (0,_core_util__WEBPACK_IMPORTED_MODULE_2__.handleAxiosError)(error);
7126
- }
7127
- if (response.data.total != null && Array.isArray(response.data.list)) {
7128
- const list = yield Promise.all(response.data.list.map((item) => __awaiter(this, void 0, void 0, function* () {
7129
- const dcatResource = new this();
7130
- yield dcatResource.populateFromDTO(item);
7131
- return dcatResource;
7132
- })));
7133
- return {
7134
- total: response.data.total,
7135
- list,
7136
- };
7137
- }
7138
- else {
7139
- throw new _core_error__WEBPACK_IMPORTED_MODULE_0__.UnexpectedResponseFormatError(response);
7140
- }
7141
- });
7142
- }
7143
- static getAllDBRecords() {
7144
- return __awaiter(this, void 0, void 0, function* () {
7145
- const paginatedResponse = yield this.listDBRecords(1, _core_util__WEBPACK_IMPORTED_MODULE_2__.LARGE_ENOUGH_NUMBER);
7146
- return paginatedResponse.list;
7147
- });
7148
- }
7149
- createDBRecord() {
7150
- return __awaiter(this, void 0, void 0, function* () {
7151
- this.throwErrorIfAPIURLNotSet();
7152
- this.throwErrorIfRecorded();
7153
- const data = this.toDTO();
7154
- const cleanData = JSON.parse(JSON.stringify(data));
7155
- const cls = this.constructor;
7156
- const apiClient = axios__WEBPACK_IMPORTED_MODULE_4__["default"].create({
7157
- baseURL: cls.API_URL,
7158
- headers: {
7159
- "Content-Type": "application/json",
7160
- },
7161
- });
7162
- if (cls.BEARER_TOKEN) {
7163
- apiClient.defaults.headers.common["Authorization"] = `Bearer ${cls.BEARER_TOKEN}`;
7164
- }
7165
- let response;
7166
- try {
7167
- response = yield apiClient.post("", cleanData);
7168
- }
7169
- catch (error) {
7170
- (0,_core_util__WEBPACK_IMPORTED_MODULE_2__.handleAxiosError)(error);
7171
- }
7172
- yield this.populateFromDTO(response.data);
7173
- });
7174
- }
7175
- static getDBRecord(ID) {
7176
- return __awaiter(this, void 0, void 0, function* () {
7177
- //@ts-ignore
7178
- (0,_sodasSDKClass__WEBPACK_IMPORTED_MODULE_3__.throwErrorIfAPIURLNotSetForStatic)(this);
7179
- const url = `${this.prototype.constructor.API_URL}/${ID}`;
7180
- let response;
7181
- try {
7182
- response = yield axios__WEBPACK_IMPORTED_MODULE_4__["default"].get(url, {
7183
- headers: { "Content-Type": "application/json" },
7184
- });
7185
- }
7186
- catch (error) {
7187
- (0,_core_util__WEBPACK_IMPORTED_MODULE_2__.handleAxiosError)(error);
7188
- }
7189
- if (response.data) {
7190
- const dcatResource = new this();
7191
- yield dcatResource.populateFromDTO(response.data);
7192
- return dcatResource;
7193
- }
7194
- else {
7195
- throw new _core_error__WEBPACK_IMPORTED_MODULE_0__.RecordNotFoundError();
7196
- }
7197
- });
7198
- }
7199
- static getDBRecordByAssetID(assetID) {
7200
- return __awaiter(this, void 0, void 0, function* () {
7201
- //@ts-ignore
7202
- (0,_sodasSDKClass__WEBPACK_IMPORTED_MODULE_3__.throwErrorIfAPIURLNotSetForStatic)(this);
7203
- const url = `${this.prototype.constructor.API_URL}/asset/${assetID}`;
7204
- let response;
7205
- try {
7206
- response = yield axios__WEBPACK_IMPORTED_MODULE_4__["default"].get(url, {
7207
- headers: { "Content-Type": "application/json" },
7208
- });
7209
- }
7210
- catch (error) {
7211
- (0,_core_util__WEBPACK_IMPORTED_MODULE_2__.handleAxiosError)(error);
7212
- }
7213
- if (response.data) {
7214
- const dcatResource = new this();
7215
- yield dcatResource.populateFromDTO(response.data);
7216
- return dcatResource;
7217
- }
7218
- else {
7219
- throw new _core_error__WEBPACK_IMPORTED_MODULE_0__.RecordNotFoundError();
7220
- }
7221
- });
7222
- }
7223
- /**
7224
- * Checks whether a DB record exists for the given AssetID and returns its ID.
7225
- *
7226
- * This method wraps getDBRecordByAssetID and converts a 404 response to `null`,
7227
- * while rethrowing any other kind of error.
7228
- */
7229
- static checkDBRecordOfAssetID(assetID) {
7230
- return __awaiter(this, void 0, void 0, function* () {
7231
- var _a;
7232
- try {
7233
- const record = (yield this.getDBRecordByAssetID(assetID));
7234
- return record.id;
7235
- }
7236
- catch (error) {
7237
- if (axios__WEBPACK_IMPORTED_MODULE_4__["default"].isAxiosError(error) && ((_a = error.response) === null || _a === void 0 ? void 0 : _a.status) === 404) {
7238
- return null;
7239
- }
7240
- throw error;
7241
- }
7242
- });
7243
- }
7244
- updateDBRecord() {
7245
- return __awaiter(this, void 0, void 0, function* () {
7246
- this.throwErrorIfAPIURLNotSet();
7247
- this.throwErrorIfNotRecorded();
7248
- const data = this.toDTO();
7249
- const cleanData = JSON.parse(JSON.stringify(data));
7250
- const cls = this.constructor;
7251
- const apiClient = axios__WEBPACK_IMPORTED_MODULE_4__["default"].create({
7252
- baseURL: cls.API_URL,
7253
- headers: {
7254
- "Content-Type": "application/json",
7255
- },
7256
- });
7257
- if (cls.BEARER_TOKEN) {
7258
- apiClient.defaults.headers.common["Authorization"] = `Bearer ${cls.BEARER_TOKEN}`;
7259
- }
7260
- let response;
7261
- try {
7262
- response = yield apiClient.post("", cleanData);
7263
- }
7264
- catch (error) {
7265
- (0,_core_util__WEBPACK_IMPORTED_MODULE_2__.handleAxiosError)(error);
7266
- }
7267
- yield this.populateFromDTO(response.data);
7268
- });
7269
- }
7270
- deleteDBRecord() {
7271
- return __awaiter(this, void 0, void 0, function* () {
7272
- this.throwErrorIfAPIURLNotSet();
7273
- this.throwErrorIfNotRecorded();
7274
- const cls = this.constructor;
7275
- const apiClient = axios__WEBPACK_IMPORTED_MODULE_4__["default"].create({
7276
- baseURL: `${cls.API_URL}/`,
7277
- headers: {
7278
- "Content-Type": "application/json",
7279
- },
7280
- });
7281
- if (cls.BEARER_TOKEN) {
7282
- apiClient.defaults.headers.common["Authorization"] = `Bearer ${cls.BEARER_TOKEN}`;
7283
- }
7284
- let response;
7285
- try {
7286
- response = yield apiClient.delete(`${this.ID}`);
7287
- }
7288
- catch (error) {
7289
- (0,_core_util__WEBPACK_IMPORTED_MODULE_2__.handleAxiosError)(error);
7290
- }
7291
- if (response.status === 204) {
7292
- (0,_core_util__WEBPACK_IMPORTED_MODULE_2__.destroy)(this); // Nullify the instance
7293
- }
7294
- else {
7295
- throw new _core_error__WEBPACK_IMPORTED_MODULE_0__.DeleteRecordFailError();
7296
- }
7297
- });
7298
- }
7299
- get createdAt() {
7300
- return this.CreatedAt;
7301
- }
7302
- get updatedAt() {
7303
- return this.UpdatedAt;
7304
- }
7305
- }
7306
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (DCAT_MODEL);
7307
-
7308
-
7309
7075
  /***/ }),
7310
7076
 
7311
7077
  /***/ "./lib/SODAS_SDK_CLASS/dictionary/term.ts":
@@ -7854,16 +7620,267 @@ class GOVERNANCE_MODEL extends _sodasSDKClass__WEBPACK_IMPORTED_MODULE_3__["defa
7854
7620
 
7855
7621
  /***/ }),
7856
7622
 
7857
- /***/ "./lib/SODAS_SDK_CLASS/sodasSDKClass.ts":
7858
- /*!**********************************************!*\
7859
- !*** ./lib/SODAS_SDK_CLASS/sodasSDKClass.ts ***!
7860
- \**********************************************/
7623
+ /***/ "./lib/SODAS_SDK_CLASS/profileModel.ts":
7624
+ /*!*********************************************!*\
7625
+ !*** ./lib/SODAS_SDK_CLASS/profileModel.ts ***!
7626
+ \*********************************************/
7861
7627
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7862
7628
 
7863
7629
  __webpack_require__.r(__webpack_exports__);
7864
7630
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7865
- /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__),
7866
- /* harmony export */ throwErrorIfAPIURLNotSetForStatic: () => (/* binding */ throwErrorIfAPIURLNotSetForStatic)
7631
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
7632
+ /* harmony export */ });
7633
+ /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! axios */ "./node_modules/axios/lib/axios.js");
7634
+ /* harmony import */ var _core_error__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/error */ "./lib/core/error.ts");
7635
+ /* harmony import */ var _core_type__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/type */ "./lib/core/type.ts");
7636
+ /* harmony import */ var _core_util__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/util */ "./lib/core/util.ts");
7637
+ /* harmony import */ var _sodasSDKClass__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./sodasSDKClass */ "./lib/SODAS_SDK_CLASS/sodasSDKClass.ts");
7638
+ var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
7639
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
7640
+ return new (P || (P = Promise))(function (resolve, reject) {
7641
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
7642
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7643
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7644
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
7645
+ });
7646
+ };
7647
+
7648
+
7649
+
7650
+
7651
+
7652
+ class PROFILE_MODEL extends _sodasSDKClass__WEBPACK_IMPORTED_MODULE_3__["default"] {
7653
+ toDTO() {
7654
+ return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, (this.ID && { ID: this.ID })), (this.IRI && { IRI: this.IRI })), (this.Issued && { Issued: this.Issued.toISOString() })), (this.Modified && { Modified: this.Modified.toISOString() })), (this.CreatedAt && { CreatedAt: this.CreatedAt.toISOString() })), (this.UpdatedAt && { UpdatedAt: this.UpdatedAt.toISOString() }));
7655
+ }
7656
+ hasDBRecord() {
7657
+ if (this.ID && this.IRI) {
7658
+ return true;
7659
+ }
7660
+ else {
7661
+ return false;
7662
+ }
7663
+ }
7664
+ populateFromDTO(dto) {
7665
+ return __awaiter(this, void 0, void 0, function* () {
7666
+ dto.ID && (this.ID = (0,_core_type__WEBPACK_IMPORTED_MODULE_1__.asID)(dto.ID));
7667
+ dto.IRI && (this.IRI = (0,_core_type__WEBPACK_IMPORTED_MODULE_1__.asIRI)(dto.IRI));
7668
+ dto.Issued && (this.Issued = new Date(dto.Issued));
7669
+ dto.Modified && (this.Modified = new Date(dto.Modified));
7670
+ dto.CreatedAt && (this.CreatedAt = new Date(dto.CreatedAt));
7671
+ dto.UpdatedAt && (this.UpdatedAt = new Date(dto.UpdatedAt));
7672
+ });
7673
+ }
7674
+ static listDBRecords() {
7675
+ return __awaiter(this, arguments, void 0, function* (pageNumber = 1, pageSize = 10, sortOrder = _core_type__WEBPACK_IMPORTED_MODULE_1__.SortOrder.DESC) {
7676
+ //@ts-ignore
7677
+ (0,_sodasSDKClass__WEBPACK_IMPORTED_MODULE_3__.throwErrorIfAPIURLNotSetForStatic)(this);
7678
+ let response;
7679
+ try {
7680
+ response = yield axios__WEBPACK_IMPORTED_MODULE_4__["default"].get(this.prototype.constructor.LIST_URL, {
7681
+ params: { pageNumber, pageSize, sortOrder },
7682
+ });
7683
+ }
7684
+ catch (error) {
7685
+ (0,_core_util__WEBPACK_IMPORTED_MODULE_2__.handleAxiosError)(error);
7686
+ }
7687
+ if (response.data.total != null && Array.isArray(response.data.list)) {
7688
+ const list = yield Promise.all(response.data.list.map((item) => __awaiter(this, void 0, void 0, function* () {
7689
+ const dcatResource = new this();
7690
+ yield dcatResource.populateFromDTO(item);
7691
+ return dcatResource;
7692
+ })));
7693
+ return {
7694
+ total: response.data.total,
7695
+ list,
7696
+ };
7697
+ }
7698
+ else {
7699
+ throw new _core_error__WEBPACK_IMPORTED_MODULE_0__.UnexpectedResponseFormatError(response);
7700
+ }
7701
+ });
7702
+ }
7703
+ static getAllDBRecords() {
7704
+ return __awaiter(this, void 0, void 0, function* () {
7705
+ const paginatedResponse = yield this.listDBRecords(1, _core_util__WEBPACK_IMPORTED_MODULE_2__.LARGE_ENOUGH_NUMBER);
7706
+ return paginatedResponse.list;
7707
+ });
7708
+ }
7709
+ createDBRecord() {
7710
+ return __awaiter(this, void 0, void 0, function* () {
7711
+ this.throwErrorIfAPIURLNotSet();
7712
+ this.throwErrorIfRecorded();
7713
+ const data = this.toDTO();
7714
+ const cleanData = JSON.parse(JSON.stringify(data));
7715
+ const cls = this.constructor;
7716
+ const apiClient = axios__WEBPACK_IMPORTED_MODULE_4__["default"].create({
7717
+ baseURL: cls.API_URL,
7718
+ headers: {
7719
+ "Content-Type": "application/json",
7720
+ },
7721
+ });
7722
+ if (cls.BEARER_TOKEN) {
7723
+ apiClient.defaults.headers.common["Authorization"] =
7724
+ `Bearer ${cls.BEARER_TOKEN}`;
7725
+ }
7726
+ let response;
7727
+ try {
7728
+ response = yield apiClient.post("", cleanData);
7729
+ }
7730
+ catch (error) {
7731
+ (0,_core_util__WEBPACK_IMPORTED_MODULE_2__.handleAxiosError)(error);
7732
+ }
7733
+ yield this.populateFromDTO(response.data);
7734
+ });
7735
+ }
7736
+ static getDBRecord(ID) {
7737
+ return __awaiter(this, void 0, void 0, function* () {
7738
+ //@ts-ignore
7739
+ (0,_sodasSDKClass__WEBPACK_IMPORTED_MODULE_3__.throwErrorIfAPIURLNotSetForStatic)(this);
7740
+ const url = `${this.prototype.constructor.API_URL}/${ID}`;
7741
+ let response;
7742
+ try {
7743
+ response = yield axios__WEBPACK_IMPORTED_MODULE_4__["default"].get(url, {
7744
+ headers: { "Content-Type": "application/json" },
7745
+ });
7746
+ }
7747
+ catch (error) {
7748
+ (0,_core_util__WEBPACK_IMPORTED_MODULE_2__.handleAxiosError)(error);
7749
+ }
7750
+ if (response.data) {
7751
+ const dcatResource = new this();
7752
+ yield dcatResource.populateFromDTO(response.data);
7753
+ return dcatResource;
7754
+ }
7755
+ else {
7756
+ throw new _core_error__WEBPACK_IMPORTED_MODULE_0__.RecordNotFoundError();
7757
+ }
7758
+ });
7759
+ }
7760
+ static getDBRecordByAssetID(assetID) {
7761
+ return __awaiter(this, void 0, void 0, function* () {
7762
+ //@ts-ignore
7763
+ (0,_sodasSDKClass__WEBPACK_IMPORTED_MODULE_3__.throwErrorIfAPIURLNotSetForStatic)(this);
7764
+ const url = `${this.prototype.constructor.API_URL}/asset/${assetID}`;
7765
+ let response;
7766
+ try {
7767
+ response = yield axios__WEBPACK_IMPORTED_MODULE_4__["default"].get(url, {
7768
+ headers: { "Content-Type": "application/json" },
7769
+ });
7770
+ }
7771
+ catch (error) {
7772
+ (0,_core_util__WEBPACK_IMPORTED_MODULE_2__.handleAxiosError)(error);
7773
+ }
7774
+ if (response.data) {
7775
+ const dcatResource = new this();
7776
+ yield dcatResource.populateFromDTO(response.data);
7777
+ return dcatResource;
7778
+ }
7779
+ else {
7780
+ throw new _core_error__WEBPACK_IMPORTED_MODULE_0__.RecordNotFoundError();
7781
+ }
7782
+ });
7783
+ }
7784
+ /**
7785
+ * Checks whether a DB record exists for the given AssetID and returns its ID.
7786
+ *
7787
+ * This method wraps getDBRecordByAssetID and converts a 404 response to `null`,
7788
+ * while rethrowing any other kind of error.
7789
+ */
7790
+ static checkDBRecordOfAssetID(assetID) {
7791
+ return __awaiter(this, void 0, void 0, function* () {
7792
+ var _a;
7793
+ try {
7794
+ const record = (yield this.getDBRecordByAssetID(assetID));
7795
+ return record.id;
7796
+ }
7797
+ catch (error) {
7798
+ if (axios__WEBPACK_IMPORTED_MODULE_4__["default"].isAxiosError(error) && ((_a = error.response) === null || _a === void 0 ? void 0 : _a.status) === 404) {
7799
+ return null;
7800
+ }
7801
+ throw error;
7802
+ }
7803
+ });
7804
+ }
7805
+ updateDBRecord() {
7806
+ return __awaiter(this, void 0, void 0, function* () {
7807
+ this.throwErrorIfAPIURLNotSet();
7808
+ this.throwErrorIfNotRecorded();
7809
+ const data = this.toDTO();
7810
+ const cleanData = JSON.parse(JSON.stringify(data));
7811
+ const cls = this.constructor;
7812
+ const apiClient = axios__WEBPACK_IMPORTED_MODULE_4__["default"].create({
7813
+ baseURL: cls.API_URL,
7814
+ headers: {
7815
+ "Content-Type": "application/json",
7816
+ },
7817
+ });
7818
+ if (cls.BEARER_TOKEN) {
7819
+ apiClient.defaults.headers.common["Authorization"] =
7820
+ `Bearer ${cls.BEARER_TOKEN}`;
7821
+ }
7822
+ let response;
7823
+ try {
7824
+ response = yield apiClient.post("", cleanData);
7825
+ }
7826
+ catch (error) {
7827
+ (0,_core_util__WEBPACK_IMPORTED_MODULE_2__.handleAxiosError)(error);
7828
+ }
7829
+ yield this.populateFromDTO(response.data);
7830
+ });
7831
+ }
7832
+ deleteDBRecord() {
7833
+ return __awaiter(this, void 0, void 0, function* () {
7834
+ this.throwErrorIfAPIURLNotSet();
7835
+ this.throwErrorIfNotRecorded();
7836
+ const cls = this.constructor;
7837
+ const apiClient = axios__WEBPACK_IMPORTED_MODULE_4__["default"].create({
7838
+ baseURL: `${cls.API_URL}/`,
7839
+ headers: {
7840
+ "Content-Type": "application/json",
7841
+ },
7842
+ });
7843
+ if (cls.BEARER_TOKEN) {
7844
+ apiClient.defaults.headers.common["Authorization"] =
7845
+ `Bearer ${cls.BEARER_TOKEN}`;
7846
+ }
7847
+ let response;
7848
+ try {
7849
+ response = yield apiClient.delete(`${this.ID}`);
7850
+ }
7851
+ catch (error) {
7852
+ (0,_core_util__WEBPACK_IMPORTED_MODULE_2__.handleAxiosError)(error);
7853
+ }
7854
+ if (response.status === 204) {
7855
+ (0,_core_util__WEBPACK_IMPORTED_MODULE_2__.destroy)(this); // Nullify the instance
7856
+ }
7857
+ else {
7858
+ throw new _core_error__WEBPACK_IMPORTED_MODULE_0__.DeleteRecordFailError();
7859
+ }
7860
+ });
7861
+ }
7862
+ get createdAt() {
7863
+ return this.CreatedAt;
7864
+ }
7865
+ get updatedAt() {
7866
+ return this.UpdatedAt;
7867
+ }
7868
+ }
7869
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (PROFILE_MODEL);
7870
+
7871
+
7872
+ /***/ }),
7873
+
7874
+ /***/ "./lib/SODAS_SDK_CLASS/sodasSDKClass.ts":
7875
+ /*!**********************************************!*\
7876
+ !*** ./lib/SODAS_SDK_CLASS/sodasSDKClass.ts ***!
7877
+ \**********************************************/
7878
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7879
+
7880
+ __webpack_require__.r(__webpack_exports__);
7881
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7882
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__),
7883
+ /* harmony export */ throwErrorIfAPIURLNotSetForStatic: () => (/* binding */ throwErrorIfAPIURLNotSetForStatic)
7867
7884
  /* harmony export */ });
7868
7885
  /* harmony import */ var _core_error__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/error */ "./lib/core/error.ts");
7869
7886
  /* harmony import */ var _core_type__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/type */ "./lib/core/type.ts");
@@ -7936,16 +7953,10 @@ class SODAS_SDK_CLASS {
7936
7953
 
7937
7954
  __webpack_require__.r(__webpack_exports__);
7938
7955
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7939
- /* harmony export */ EXPECTED_TYPE: () => (/* binding */ EXPECTED_TYPE),
7940
- /* harmony export */ VALIDATION_TYPE: () => (/* binding */ VALIDATION_TYPE),
7941
7956
  /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
7942
7957
  /* harmony export */ });
7943
- /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! axios */ "./node_modules/axios/lib/axios.js");
7944
- /* harmony import */ var _core_error__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../core/error */ "./lib/core/error.ts");
7945
- /* harmony import */ var _core_type__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../core/type */ "./lib/core/type.ts");
7946
- /* harmony import */ var _core_util__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../core/util */ "./lib/core/util.ts");
7947
- /* harmony import */ var _governanceClass__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../governanceClass */ "./lib/SODAS_SDK_CLASS/governanceClass.ts");
7948
- /* harmony import */ var _sodasSDKClass__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../sodasSDKClass */ "./lib/SODAS_SDK_CLASS/sodasSDKClass.ts");
7958
+ /* harmony import */ var _profileModel__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../profileModel */ "./lib/SODAS_SDK_CLASS/profileModel.ts");
7959
+ /* harmony import */ var _validationType__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./validationType */ "./lib/SODAS_SDK_CLASS/template/validationType.ts");
7949
7960
  var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
7950
7961
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
7951
7962
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -7954,48 +7965,17 @@ var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _argume
7954
7965
  function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7955
7966
  step((generator = generator.apply(thisArg, _arguments || [])).next());
7956
7967
  });
7957
- };
7958
-
7959
-
7960
-
7961
-
7962
-
7963
-
7964
- var VALIDATION_TYPE;
7965
- (function (VALIDATION_TYPE) {
7966
- VALIDATION_TYPE["DATA_TYPE"] = "data_type";
7967
- VALIDATION_TYPE["RANGE"] = "range";
7968
- VALIDATION_TYPE["PATTERN"] = "pattern";
7969
- VALIDATION_TYPE["UNIQUENESS"] = "uniqueness";
7970
- VALIDATION_TYPE["COMPLETENESS"] = "completeness";
7971
- VALIDATION_TYPE["LENGTH"] = "length";
7972
- VALIDATION_TYPE["ALLOWED_VALUES"] = "allowed_values";
7973
- VALIDATION_TYPE["OUTLIER"] = "outlier";
7974
- VALIDATION_TYPE["STATISTICAL"] = "statistical";
7975
- })(VALIDATION_TYPE || (VALIDATION_TYPE = {}));
7976
- var EXPECTED_TYPE;
7977
- (function (EXPECTED_TYPE) {
7978
- EXPECTED_TYPE["NUMERIC"] = "numeric";
7979
- EXPECTED_TYPE["STRING"] = "string";
7980
- EXPECTED_TYPE["DATETIME"] = "datetime";
7981
- })(EXPECTED_TYPE || (EXPECTED_TYPE = {}));
7982
- class ValidationTemplate extends _governanceClass__WEBPACK_IMPORTED_MODULE_3__["default"] {
7968
+ };
7969
+
7970
+
7971
+ class ValidationTemplate extends _profileModel__WEBPACK_IMPORTED_MODULE_0__["default"] {
7983
7972
  static configureAPIURL(url) {
7984
- const PREFIX = "api/v1/governance/template";
7985
- ValidationTemplate.API_URL = `${url}/${PREFIX}/validation`;
7973
+ ValidationTemplate.API_URL = `${url}/validation-template`;
7986
7974
  ValidationTemplate.LIST_URL = `${ValidationTemplate.API_URL}/list`;
7987
- ValidationTemplate.GET_URL = `${ValidationTemplate.API_URL}/get`;
7988
- ValidationTemplate.CREATE_URL = `${ValidationTemplate.API_URL}/create`;
7989
- ValidationTemplate.UPDATE_URL = `${ValidationTemplate.API_URL}/update`;
7990
- ValidationTemplate.DELETE_URL = `${ValidationTemplate.API_URL}/remove`;
7991
7975
  }
7992
7976
  toDTO() {
7993
- return Object.assign(Object.assign(Object.assign(Object.assign({}, super.toDTO()), { name: this.Name }), (this.ValidationRules && { validationRules: this.ValidationRules })), (this.Description && { description: this.Description }));
7994
- }
7995
- populateFromFormData(data) {
7996
- return __awaiter(this, void 0, void 0, function* () {
7997
- throw new _core_error__WEBPACK_IMPORTED_MODULE_0__.NeedToImplementError();
7998
- });
7977
+ var _a;
7978
+ return Object.assign(Object.assign({}, super.toDTO()), { Name: this.Name, Description: this.Description, ValidationRules: (_a = this.ValidationRules) === null || _a === void 0 ? void 0 : _a.map((rule) => rule.toDTO()) });
7999
7979
  }
8000
7980
  populateFromDTO(dto) {
8001
7981
  const _super = Object.create(null, {
@@ -8004,28 +7984,11 @@ class ValidationTemplate extends _governanceClass__WEBPACK_IMPORTED_MODULE_3__["
8004
7984
  return __awaiter(this, void 0, void 0, function* () {
8005
7985
  yield _super.populateFromDTO.call(this, dto);
8006
7986
  const validationTemplateDTO = dto;
8007
- this.ValidationRules = validationTemplateDTO.validationRules;
8008
- this.Name = validationTemplateDTO.name;
8009
- this.Description = validationTemplateDTO.description;
8010
- });
8011
- }
8012
- static listDBRecords() {
8013
- return __awaiter(this, arguments, void 0, function* (pageNumber = 1, pageSize = 10, sortOrder = _core_type__WEBPACK_IMPORTED_MODULE_1__.SortOrder.DESC, vocabularyID) {
8014
- (0,_sodasSDKClass__WEBPACK_IMPORTED_MODULE_4__.throwErrorIfAPIURLNotSetForStatic)(ValidationTemplate);
8015
- try {
8016
- const response = yield axios__WEBPACK_IMPORTED_MODULE_5__["default"].get(ValidationTemplate.LIST_URL, {
8017
- params: {
8018
- offset: (pageNumber - 1) * pageSize,
8019
- limit: pageSize,
8020
- ordered: sortOrder,
8021
- vocabularyId: vocabularyID,
8022
- },
8023
- // headers,
8024
- });
8025
- return yield ValidationTemplate.listResponseToPaginatedResponse(response);
8026
- }
8027
- catch (error) {
8028
- (0,_core_util__WEBPACK_IMPORTED_MODULE_2__.handleAxiosError)(error);
7987
+ validationTemplateDTO.Name && (this.Name = validationTemplateDTO.Name);
7988
+ validationTemplateDTO.Description &&
7989
+ (this.Description = validationTemplateDTO.Description);
7990
+ if (validationTemplateDTO.ValidationRules !== undefined) {
7991
+ this.ValidationRules = ValidationTemplate.parseValidationRules(validationTemplateDTO.ValidationRules);
8029
7992
  }
8030
7993
  });
8031
7994
  }
@@ -8048,24 +8011,62 @@ class ValidationTemplate extends _governanceClass__WEBPACK_IMPORTED_MODULE_3__["
8048
8011
  this.ValidationRules = value;
8049
8012
  }
8050
8013
  static parseValidationRules(rawRules) {
8014
+ if (rawRules === null || rawRules === undefined) {
8015
+ return [];
8016
+ }
8051
8017
  return rawRules.map((rule) => {
8052
- const baseRule = {
8053
- column: rule.column,
8054
- name: rule.name,
8055
- type: rule.type,
8056
- };
8018
+ let validationRule;
8057
8019
  switch (rule.type) {
8058
- case VALIDATION_TYPE.COMPLETENESS:
8059
- return Object.assign(Object.assign({}, baseRule), { type: VALIDATION_TYPE.COMPLETENESS, min_completeness: rule.min_completeness, weight: rule.weight });
8060
- case VALIDATION_TYPE.DATA_TYPE:
8061
- return Object.assign(Object.assign({}, baseRule), { type: VALIDATION_TYPE.DATA_TYPE, expected_type: rule.expected_type, weight: rule.weight });
8062
- case VALIDATION_TYPE.PATTERN:
8063
- return Object.assign(Object.assign({}, baseRule), { type: VALIDATION_TYPE.PATTERN, pattern: rule.pattern, weight: rule.weight });
8064
- case VALIDATION_TYPE.UNIQUENESS:
8065
- return Object.assign(Object.assign({}, baseRule), { type: VALIDATION_TYPE.UNIQUENESS, weight: rule.weight });
8020
+ case _validationType__WEBPACK_IMPORTED_MODULE_1__.VALIDATION_TYPE.COMPLETENESS:
8021
+ validationRule = new _validationType__WEBPACK_IMPORTED_MODULE_1__.CompletenessValidationRule();
8022
+ validationRule.populateFromDTO(rule);
8023
+ break;
8024
+ case _validationType__WEBPACK_IMPORTED_MODULE_1__.VALIDATION_TYPE.DATA_TYPE:
8025
+ validationRule = new _validationType__WEBPACK_IMPORTED_MODULE_1__.DataTypeValidationRule();
8026
+ validationRule.populateFromDTO(rule);
8027
+ break;
8028
+ case _validationType__WEBPACK_IMPORTED_MODULE_1__.VALIDATION_TYPE.PATTERN:
8029
+ validationRule = new _validationType__WEBPACK_IMPORTED_MODULE_1__.PatternValidationRule();
8030
+ validationRule.populateFromDTO(rule);
8031
+ break;
8032
+ case _validationType__WEBPACK_IMPORTED_MODULE_1__.VALIDATION_TYPE.UNIQUENESS:
8033
+ validationRule = new _validationType__WEBPACK_IMPORTED_MODULE_1__.UniquenessValidationRule();
8034
+ validationRule.populateFromDTO(rule);
8035
+ break;
8036
+ case _validationType__WEBPACK_IMPORTED_MODULE_1__.VALIDATION_TYPE.RANGE:
8037
+ validationRule = new _validationType__WEBPACK_IMPORTED_MODULE_1__.RangeValidationRule();
8038
+ validationRule.populateFromDTO(rule);
8039
+ break;
8040
+ case _validationType__WEBPACK_IMPORTED_MODULE_1__.VALIDATION_TYPE.CUSTOM:
8041
+ validationRule = new _validationType__WEBPACK_IMPORTED_MODULE_1__.CustomValidationRule();
8042
+ validationRule.populateFromDTO(rule);
8043
+ break;
8044
+ case _validationType__WEBPACK_IMPORTED_MODULE_1__.VALIDATION_TYPE.LENGTH:
8045
+ validationRule = new _validationType__WEBPACK_IMPORTED_MODULE_1__.LengthValidationRule();
8046
+ validationRule.populateFromDTO(rule);
8047
+ break;
8048
+ case _validationType__WEBPACK_IMPORTED_MODULE_1__.VALIDATION_TYPE.ALLOWED_VALUES:
8049
+ validationRule = new _validationType__WEBPACK_IMPORTED_MODULE_1__.AllowedValuesValidationRule();
8050
+ validationRule.populateFromDTO(rule);
8051
+ break;
8052
+ case _validationType__WEBPACK_IMPORTED_MODULE_1__.VALIDATION_TYPE.OUTLIER:
8053
+ validationRule = new _validationType__WEBPACK_IMPORTED_MODULE_1__.OutlierValidationRule();
8054
+ validationRule.populateFromDTO(rule);
8055
+ break;
8056
+ case _validationType__WEBPACK_IMPORTED_MODULE_1__.VALIDATION_TYPE.STATISTICAL:
8057
+ validationRule = new _validationType__WEBPACK_IMPORTED_MODULE_1__.StatisticalValidationRule();
8058
+ validationRule.populateFromDTO(rule);
8059
+ break;
8066
8060
  default:
8067
- return baseRule;
8061
+ // For unknown types, create a base ValidationRule
8062
+ validationRule = new (class extends _validationType__WEBPACK_IMPORTED_MODULE_1__.ValidationRule {
8063
+ constructor() {
8064
+ super(rule.type);
8065
+ }
8066
+ })();
8067
+ validationRule.populateFromDTO(rule);
8068
8068
  }
8069
+ return validationRule;
8069
8070
  });
8070
8071
  }
8071
8072
  ensureValidationRulesInitialized() {
@@ -8073,63 +8074,141 @@ class ValidationTemplate extends _governanceClass__WEBPACK_IMPORTED_MODULE_3__["
8073
8074
  this.ValidationRules = [];
8074
8075
  }
8075
8076
  }
8076
- createRule(type) {
8077
+ // Type-specific creator methods
8078
+ createRangeRule() {
8077
8079
  this.ensureValidationRulesInitialized();
8078
- let rule;
8079
- const baseRule = {
8080
- column: "",
8081
- name: "",
8082
- type,
8083
- };
8084
- switch (type) {
8085
- case VALIDATION_TYPE.COMPLETENESS:
8086
- rule = Object.assign(Object.assign({}, baseRule), { min_completeness: 0, weight: 0 });
8087
- break;
8088
- case VALIDATION_TYPE.DATA_TYPE:
8089
- rule = Object.assign(Object.assign({}, baseRule), { expected_type: EXPECTED_TYPE.STRING, weight: 0 });
8090
- break;
8091
- case VALIDATION_TYPE.PATTERN:
8092
- rule = Object.assign(Object.assign({}, baseRule), { pattern: "", weight: 0 });
8093
- break;
8094
- case VALIDATION_TYPE.UNIQUENESS:
8095
- rule = Object.assign(Object.assign({}, baseRule), { weight: 0 });
8096
- break;
8097
- default:
8098
- rule = baseRule;
8099
- }
8080
+ const rule = new _validationType__WEBPACK_IMPORTED_MODULE_1__.RangeValidationRule();
8081
+ this.ValidationRules.push(rule);
8082
+ return rule;
8083
+ }
8084
+ createPatternRule() {
8085
+ this.ensureValidationRulesInitialized();
8086
+ const rule = new _validationType__WEBPACK_IMPORTED_MODULE_1__.PatternValidationRule();
8087
+ this.ValidationRules.push(rule);
8088
+ return rule;
8089
+ }
8090
+ createCompletenessRule() {
8091
+ this.ensureValidationRulesInitialized();
8092
+ const rule = new _validationType__WEBPACK_IMPORTED_MODULE_1__.CompletenessValidationRule();
8093
+ this.ValidationRules.push(rule);
8094
+ return rule;
8095
+ }
8096
+ createDataTypeRule() {
8097
+ this.ensureValidationRulesInitialized();
8098
+ const rule = new _validationType__WEBPACK_IMPORTED_MODULE_1__.DataTypeValidationRule();
8099
+ this.ValidationRules.push(rule);
8100
+ return rule;
8101
+ }
8102
+ createUniquenessRule() {
8103
+ this.ensureValidationRulesInitialized();
8104
+ const rule = new _validationType__WEBPACK_IMPORTED_MODULE_1__.UniquenessValidationRule();
8105
+ this.ValidationRules.push(rule);
8106
+ return rule;
8107
+ }
8108
+ createCustomRule() {
8109
+ this.ensureValidationRulesInitialized();
8110
+ const rule = new _validationType__WEBPACK_IMPORTED_MODULE_1__.CustomValidationRule();
8111
+ this.ValidationRules.push(rule);
8112
+ return rule;
8113
+ }
8114
+ createLengthRule() {
8115
+ this.ensureValidationRulesInitialized();
8116
+ const rule = new _validationType__WEBPACK_IMPORTED_MODULE_1__.LengthValidationRule();
8117
+ this.ValidationRules.push(rule);
8118
+ return rule;
8119
+ }
8120
+ createAllowedValuesRule() {
8121
+ this.ensureValidationRulesInitialized();
8122
+ const rule = new _validationType__WEBPACK_IMPORTED_MODULE_1__.AllowedValuesValidationRule();
8123
+ this.ValidationRules.push(rule);
8124
+ return rule;
8125
+ }
8126
+ createOutlierRule() {
8127
+ this.ensureValidationRulesInitialized();
8128
+ const rule = new _validationType__WEBPACK_IMPORTED_MODULE_1__.OutlierValidationRule();
8129
+ this.ValidationRules.push(rule);
8130
+ return rule;
8131
+ }
8132
+ createStatisticalRule() {
8133
+ this.ensureValidationRulesInitialized();
8134
+ const rule = new _validationType__WEBPACK_IMPORTED_MODULE_1__.StatisticalValidationRule();
8100
8135
  this.ValidationRules.push(rule);
8101
8136
  return rule;
8102
8137
  }
8103
- deleteRuleAt(index) {
8138
+ // Type-specific getter methods
8139
+ getRangeRules() {
8104
8140
  if (!this.ValidationRules) {
8105
- return;
8141
+ return [];
8106
8142
  }
8107
- if (index < 0 || index >= this.ValidationRules.length) {
8108
- return;
8143
+ return this.ValidationRules.filter((rule) => rule.getType === _validationType__WEBPACK_IMPORTED_MODULE_1__.VALIDATION_TYPE.RANGE);
8144
+ }
8145
+ getPatternRules() {
8146
+ if (!this.ValidationRules) {
8147
+ return [];
8109
8148
  }
8110
- this.ValidationRules.splice(index, 1);
8149
+ return this.ValidationRules.filter((rule) => rule.getType === _validationType__WEBPACK_IMPORTED_MODULE_1__.VALIDATION_TYPE.PATTERN);
8111
8150
  }
8112
- deleteRuleByTypeAt(type, index) {
8151
+ getCompletenessRules() {
8113
8152
  if (!this.ValidationRules) {
8114
- return;
8153
+ return [];
8115
8154
  }
8116
- if (index < 0) {
8155
+ return this.ValidationRules.filter((rule) => rule.getType === _validationType__WEBPACK_IMPORTED_MODULE_1__.VALIDATION_TYPE.COMPLETENESS);
8156
+ }
8157
+ getDataTypeRules() {
8158
+ if (!this.ValidationRules) {
8159
+ return [];
8160
+ }
8161
+ return this.ValidationRules.filter((rule) => rule.getType === _validationType__WEBPACK_IMPORTED_MODULE_1__.VALIDATION_TYPE.DATA_TYPE);
8162
+ }
8163
+ getUniquenessRules() {
8164
+ if (!this.ValidationRules) {
8165
+ return [];
8166
+ }
8167
+ return this.ValidationRules.filter((rule) => rule.getType === _validationType__WEBPACK_IMPORTED_MODULE_1__.VALIDATION_TYPE.UNIQUENESS);
8168
+ }
8169
+ getCustomRules() {
8170
+ if (!this.ValidationRules) {
8171
+ return [];
8172
+ }
8173
+ return this.ValidationRules.filter((rule) => rule.getType === _validationType__WEBPACK_IMPORTED_MODULE_1__.VALIDATION_TYPE.CUSTOM);
8174
+ }
8175
+ getLengthRules() {
8176
+ if (!this.ValidationRules) {
8177
+ return [];
8178
+ }
8179
+ return this.ValidationRules.filter((rule) => rule.getType === _validationType__WEBPACK_IMPORTED_MODULE_1__.VALIDATION_TYPE.LENGTH);
8180
+ }
8181
+ getAllowedValuesRules() {
8182
+ if (!this.ValidationRules) {
8183
+ return [];
8184
+ }
8185
+ return this.ValidationRules.filter((rule) => rule.getType === _validationType__WEBPACK_IMPORTED_MODULE_1__.VALIDATION_TYPE.ALLOWED_VALUES);
8186
+ }
8187
+ getOutlierRules() {
8188
+ if (!this.ValidationRules) {
8189
+ return [];
8190
+ }
8191
+ return this.ValidationRules.filter((rule) => rule.getType === _validationType__WEBPACK_IMPORTED_MODULE_1__.VALIDATION_TYPE.OUTLIER);
8192
+ }
8193
+ getStatisticalRules() {
8194
+ if (!this.ValidationRules) {
8195
+ return [];
8196
+ }
8197
+ return this.ValidationRules.filter((rule) => rule.getType === _validationType__WEBPACK_IMPORTED_MODULE_1__.VALIDATION_TYPE.STATISTICAL);
8198
+ }
8199
+ // Delete rule method
8200
+ deleteRule(rule) {
8201
+ if (!this.ValidationRules) {
8117
8202
  return;
8118
8203
  }
8119
- let current = 0;
8120
- for (let i = 0; i < this.ValidationRules.length; i++) {
8121
- if (this.ValidationRules[i].type === type) {
8122
- if (current === index) {
8123
- this.ValidationRules.splice(i, 1);
8124
- return;
8125
- }
8126
- current++;
8127
- }
8204
+ const index = this.ValidationRules.indexOf(rule);
8205
+ if (index !== -1) {
8206
+ this.ValidationRules.splice(index, 1);
8128
8207
  }
8129
8208
  }
8130
8209
  static groupValidationRulesByColumn(rules) {
8131
8210
  return rules.reduce((acc, rule) => {
8132
- const column = rule.column;
8211
+ const column = rule.getColumn;
8133
8212
  if (!acc[column]) {
8134
8213
  acc[column] = [];
8135
8214
  }
@@ -8139,7 +8218,7 @@ class ValidationTemplate extends _governanceClass__WEBPACK_IMPORTED_MODULE_3__["
8139
8218
  }
8140
8219
  static groupValidationRulesByType(rules) {
8141
8220
  return rules.reduce((acc, rule) => {
8142
- const type = rule.type;
8221
+ const type = rule.getType;
8143
8222
  if (!acc[type]) {
8144
8223
  acc[type] = [];
8145
8224
  }
@@ -8232,30 +8311,8 @@ class ValidationTemplate extends _governanceClass__WEBPACK_IMPORTED_MODULE_3__["
8232
8311
  * @returns Escaped JSON string with format: "{\"validation_rules\":[...]}"
8233
8312
  */
8234
8313
  static stringifyValidationRulesToEscapedString(rules) {
8235
- // Convert ValidationRule[] to plain objects for JSON serialization
8236
- const plainRules = rules.map((rule) => {
8237
- const plainRule = {
8238
- column: rule.column,
8239
- name: rule.name,
8240
- type: rule.type,
8241
- };
8242
- switch (rule.type) {
8243
- case VALIDATION_TYPE.COMPLETENESS:
8244
- const completenessRule = rule;
8245
- return Object.assign(Object.assign({}, plainRule), { min_completeness: completenessRule.min_completeness, weight: completenessRule.weight });
8246
- case VALIDATION_TYPE.DATA_TYPE:
8247
- const dataTypeRule = rule;
8248
- return Object.assign(Object.assign({}, plainRule), { expected_type: dataTypeRule.expected_type, weight: dataTypeRule.weight });
8249
- case VALIDATION_TYPE.PATTERN:
8250
- const patternRule = rule;
8251
- return Object.assign(Object.assign({}, plainRule), { pattern: patternRule.pattern, weight: patternRule.weight });
8252
- case VALIDATION_TYPE.UNIQUENESS:
8253
- const uniquenessRule = rule;
8254
- return Object.assign(Object.assign({}, plainRule), { weight: uniquenessRule.weight });
8255
- default:
8256
- return plainRule;
8257
- }
8258
- });
8314
+ // Convert ValidationRule[] to plain objects for JSON serialization using toDTO
8315
+ const plainRules = rules.map((rule) => rule.toDTO());
8259
8316
  // Create object with validation_rules property
8260
8317
  if (rules._escapedString) {
8261
8318
  return rules._escapedString;
@@ -8265,13 +8322,410 @@ class ValidationTemplate extends _governanceClass__WEBPACK_IMPORTED_MODULE_3__["
8265
8322
  const escaped = jsonString.replace(/"/g, '\\"');
8266
8323
  return '"' + escaped + '"';
8267
8324
  }
8268
- get rules() {
8269
- return this.ValidationRules;
8270
- }
8271
8325
  }
8272
8326
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ValidationTemplate);
8273
8327
 
8274
8328
 
8329
+ /***/ }),
8330
+
8331
+ /***/ "./lib/SODAS_SDK_CLASS/template/validationType.ts":
8332
+ /*!********************************************************!*\
8333
+ !*** ./lib/SODAS_SDK_CLASS/template/validationType.ts ***!
8334
+ \********************************************************/
8335
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
8336
+
8337
+ __webpack_require__.r(__webpack_exports__);
8338
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
8339
+ /* harmony export */ AllowedValuesValidationRule: () => (/* binding */ AllowedValuesValidationRule),
8340
+ /* harmony export */ COMPARISION_OPERATOR: () => (/* binding */ COMPARISION_OPERATOR),
8341
+ /* harmony export */ CUSTOM_CONDITION_TYPE: () => (/* binding */ CUSTOM_CONDITION_TYPE),
8342
+ /* harmony export */ CompletenessValidationRule: () => (/* binding */ CompletenessValidationRule),
8343
+ /* harmony export */ CustomValidationRule: () => (/* binding */ CustomValidationRule),
8344
+ /* harmony export */ DATETIME_FORMAT_TYPE: () => (/* binding */ DATETIME_FORMAT_TYPE),
8345
+ /* harmony export */ DataTypeValidationRule: () => (/* binding */ DataTypeValidationRule),
8346
+ /* harmony export */ EXPECTED_TYPE: () => (/* binding */ EXPECTED_TYPE),
8347
+ /* harmony export */ LengthValidationRule: () => (/* binding */ LengthValidationRule),
8348
+ /* harmony export */ OUTLIER_METHOD: () => (/* binding */ OUTLIER_METHOD),
8349
+ /* harmony export */ OutlierValidationRule: () => (/* binding */ OutlierValidationRule),
8350
+ /* harmony export */ PatternValidationRule: () => (/* binding */ PatternValidationRule),
8351
+ /* harmony export */ RangeValidationRule: () => (/* binding */ RangeValidationRule),
8352
+ /* harmony export */ StatisticalValidationRule: () => (/* binding */ StatisticalValidationRule),
8353
+ /* harmony export */ UniquenessValidationRule: () => (/* binding */ UniquenessValidationRule),
8354
+ /* harmony export */ VALIDATION_TYPE: () => (/* binding */ VALIDATION_TYPE),
8355
+ /* harmony export */ ValidationRule: () => (/* binding */ ValidationRule)
8356
+ /* harmony export */ });
8357
+ var VALIDATION_TYPE;
8358
+ (function (VALIDATION_TYPE) {
8359
+ VALIDATION_TYPE["DATA_TYPE"] = "data_type";
8360
+ VALIDATION_TYPE["RANGE"] = "range";
8361
+ VALIDATION_TYPE["PATTERN"] = "pattern";
8362
+ VALIDATION_TYPE["UNIQUENESS"] = "uniqueness";
8363
+ VALIDATION_TYPE["CUSTOM"] = "custom";
8364
+ VALIDATION_TYPE["COMPLETENESS"] = "completeness";
8365
+ VALIDATION_TYPE["LENGTH"] = "length";
8366
+ VALIDATION_TYPE["ALLOWED_VALUES"] = "allowed_values";
8367
+ VALIDATION_TYPE["OUTLIER"] = "outlier";
8368
+ VALIDATION_TYPE["STATISTICAL"] = "statistical";
8369
+ })(VALIDATION_TYPE || (VALIDATION_TYPE = {}));
8370
+ var EXPECTED_TYPE;
8371
+ (function (EXPECTED_TYPE) {
8372
+ EXPECTED_TYPE["NUMERIC"] = "numeric";
8373
+ EXPECTED_TYPE["STRING"] = "string";
8374
+ EXPECTED_TYPE["DATETIME"] = "datetime";
8375
+ })(EXPECTED_TYPE || (EXPECTED_TYPE = {}));
8376
+ class ValidationRule {
8377
+ constructor(type) {
8378
+ this.column = "";
8379
+ this.name = "";
8380
+ this.weight = 0;
8381
+ this.type = type;
8382
+ }
8383
+ toDTO() {
8384
+ return {
8385
+ column: this.column,
8386
+ name: this.name,
8387
+ type: this.type,
8388
+ weight: this.weight,
8389
+ };
8390
+ }
8391
+ populateFromDTO(dto) {
8392
+ this.column = dto.column || "";
8393
+ this.name = dto.name || "";
8394
+ this.weight = dto.weight || 0;
8395
+ }
8396
+ // Common setters with chaining
8397
+ setColumn(column) {
8398
+ this.column = column;
8399
+ return this;
8400
+ }
8401
+ setName(name) {
8402
+ this.name = name;
8403
+ return this;
8404
+ }
8405
+ setWeight(weight) {
8406
+ this.weight = weight;
8407
+ return this;
8408
+ }
8409
+ // Getters
8410
+ get getColumn() {
8411
+ return this.column;
8412
+ }
8413
+ get getName() {
8414
+ return this.name;
8415
+ }
8416
+ get getType() {
8417
+ return this.type;
8418
+ }
8419
+ get getWeight() {
8420
+ return this.weight;
8421
+ }
8422
+ }
8423
+ class UniquenessValidationRule extends ValidationRule {
8424
+ constructor() {
8425
+ super(VALIDATION_TYPE.UNIQUENESS);
8426
+ this.unique = false;
8427
+ }
8428
+ toDTO() {
8429
+ return Object.assign(Object.assign({}, super.toDTO()), { unique: this.unique });
8430
+ }
8431
+ populateFromDTO(dto) {
8432
+ var _a;
8433
+ super.populateFromDTO(dto);
8434
+ this.unique = (_a = dto.unique) !== null && _a !== void 0 ? _a : false;
8435
+ }
8436
+ setUnique(unique) {
8437
+ this.unique = unique;
8438
+ return this;
8439
+ }
8440
+ get getUnique() {
8441
+ return this.unique;
8442
+ }
8443
+ }
8444
+ class PatternValidationRule extends ValidationRule {
8445
+ constructor() {
8446
+ super(VALIDATION_TYPE.PATTERN);
8447
+ this.pattern = "";
8448
+ }
8449
+ toDTO() {
8450
+ return Object.assign(Object.assign({}, super.toDTO()), { pattern: this.pattern });
8451
+ }
8452
+ populateFromDTO(dto) {
8453
+ super.populateFromDTO(dto);
8454
+ this.pattern = dto.pattern || "";
8455
+ }
8456
+ setPattern(pattern) {
8457
+ this.pattern = pattern;
8458
+ return this;
8459
+ }
8460
+ get getPattern() {
8461
+ return this.pattern;
8462
+ }
8463
+ }
8464
+ class RangeValidationRule extends ValidationRule {
8465
+ constructor() {
8466
+ super(VALIDATION_TYPE.RANGE);
8467
+ this.min_value = 0;
8468
+ this.max_value = 0;
8469
+ }
8470
+ toDTO() {
8471
+ return Object.assign(Object.assign({}, super.toDTO()), { min_value: this.min_value, max_value: this.max_value });
8472
+ }
8473
+ populateFromDTO(dto) {
8474
+ var _a, _b;
8475
+ super.populateFromDTO(dto);
8476
+ this.min_value = (_a = dto.min_value) !== null && _a !== void 0 ? _a : 0;
8477
+ this.max_value = (_b = dto.max_value) !== null && _b !== void 0 ? _b : 0;
8478
+ }
8479
+ setMinValue(minValue) {
8480
+ this.min_value = minValue;
8481
+ return this;
8482
+ }
8483
+ setMaxValue(maxValue) {
8484
+ this.max_value = maxValue;
8485
+ return this;
8486
+ }
8487
+ get getMinValue() {
8488
+ return this.min_value;
8489
+ }
8490
+ get getMaxValue() {
8491
+ return this.max_value;
8492
+ }
8493
+ }
8494
+ var COMPARISION_OPERATOR;
8495
+ (function (COMPARISION_OPERATOR) {
8496
+ COMPARISION_OPERATOR["EQUAL"] = "==";
8497
+ COMPARISION_OPERATOR["NOT_EQUAL"] = "!=";
8498
+ COMPARISION_OPERATOR["GREATER_THAN"] = ">";
8499
+ COMPARISION_OPERATOR["LESS_THAN"] = "<";
8500
+ COMPARISION_OPERATOR["GREATER_THAN_OR_EQUAL"] = ">=";
8501
+ COMPARISION_OPERATOR["LESS_THAN_OR_EQUAL"] = "<=";
8502
+ })(COMPARISION_OPERATOR || (COMPARISION_OPERATOR = {}));
8503
+ var CUSTOM_CONDITION_TYPE;
8504
+ (function (CUSTOM_CONDITION_TYPE) {
8505
+ CUSTOM_CONDITION_TYPE["ALL"] = "all";
8506
+ CUSTOM_CONDITION_TYPE["ANY"] = "any";
8507
+ CUSTOM_CONDITION_TYPE["MIN"] = "min";
8508
+ CUSTOM_CONDITION_TYPE["MAX"] = "max";
8509
+ CUSTOM_CONDITION_TYPE["MEAN"] = "mean";
8510
+ CUSTOM_CONDITION_TYPE["RATIO"] = "ratio";
8511
+ })(CUSTOM_CONDITION_TYPE || (CUSTOM_CONDITION_TYPE = {}));
8512
+ class CustomValidationRule extends ValidationRule {
8513
+ constructor() {
8514
+ super(VALIDATION_TYPE.CUSTOM);
8515
+ this.condition = {
8516
+ type: CUSTOM_CONDITION_TYPE.ALL,
8517
+ threholder: 0,
8518
+ comparision: COMPARISION_OPERATOR.EQUAL,
8519
+ };
8520
+ }
8521
+ toDTO() {
8522
+ return Object.assign(Object.assign({}, super.toDTO()), { condition: this.condition });
8523
+ }
8524
+ populateFromDTO(dto) {
8525
+ var _a;
8526
+ super.populateFromDTO(dto);
8527
+ if (dto.condition) {
8528
+ this.condition = {
8529
+ type: dto.condition.type || CUSTOM_CONDITION_TYPE.ALL,
8530
+ threholder: (_a = dto.condition.threholder) !== null && _a !== void 0 ? _a : 0,
8531
+ comparision: dto.condition.comparision || COMPARISION_OPERATOR.EQUAL,
8532
+ };
8533
+ }
8534
+ }
8535
+ setCondition(condition) {
8536
+ this.condition = condition;
8537
+ return this;
8538
+ }
8539
+ get getCondition() {
8540
+ return this.condition;
8541
+ }
8542
+ }
8543
+ class LengthValidationRule extends ValidationRule {
8544
+ constructor() {
8545
+ super(VALIDATION_TYPE.LENGTH);
8546
+ this.min_length = 0;
8547
+ this.max_length = 0;
8548
+ }
8549
+ toDTO() {
8550
+ return Object.assign(Object.assign({}, super.toDTO()), { min_length: this.min_length, max_length: this.max_length });
8551
+ }
8552
+ populateFromDTO(dto) {
8553
+ var _a, _b;
8554
+ super.populateFromDTO(dto);
8555
+ this.min_length = (_a = dto.min_length) !== null && _a !== void 0 ? _a : 0;
8556
+ this.max_length = (_b = dto.max_length) !== null && _b !== void 0 ? _b : 0;
8557
+ }
8558
+ setMinLength(minLength) {
8559
+ this.min_length = minLength;
8560
+ return this;
8561
+ }
8562
+ setMaxLength(maxLength) {
8563
+ this.max_length = maxLength;
8564
+ return this;
8565
+ }
8566
+ get getMinLength() {
8567
+ return this.min_length;
8568
+ }
8569
+ get getMaxLength() {
8570
+ return this.max_length;
8571
+ }
8572
+ }
8573
+ class AllowedValuesValidationRule extends ValidationRule {
8574
+ constructor() {
8575
+ super(VALIDATION_TYPE.ALLOWED_VALUES);
8576
+ this.allowed_values = [];
8577
+ }
8578
+ toDTO() {
8579
+ return Object.assign(Object.assign({}, super.toDTO()), { allowed_values: this.allowed_values });
8580
+ }
8581
+ populateFromDTO(dto) {
8582
+ super.populateFromDTO(dto);
8583
+ this.allowed_values = dto.allowed_values || [];
8584
+ }
8585
+ setAllowedValues(allowedValues) {
8586
+ this.allowed_values = allowedValues;
8587
+ return this;
8588
+ }
8589
+ get getAllowedValues() {
8590
+ return this.allowed_values;
8591
+ }
8592
+ }
8593
+ var OUTLIER_METHOD;
8594
+ (function (OUTLIER_METHOD) {
8595
+ OUTLIER_METHOD["Z_SCORE"] = "zscore";
8596
+ OUTLIER_METHOD["IQR"] = "iqr";
8597
+ OUTLIER_METHOD["ISOLATION"] = "isolation";
8598
+ })(OUTLIER_METHOD || (OUTLIER_METHOD = {}));
8599
+ class OutlierValidationRule extends ValidationRule {
8600
+ constructor() {
8601
+ super(VALIDATION_TYPE.OUTLIER);
8602
+ this.method = OUTLIER_METHOD.Z_SCORE;
8603
+ this.threshold = 0;
8604
+ }
8605
+ toDTO() {
8606
+ return Object.assign(Object.assign({}, super.toDTO()), { method: this.method, threshold: this.threshold });
8607
+ }
8608
+ populateFromDTO(dto) {
8609
+ var _a;
8610
+ super.populateFromDTO(dto);
8611
+ this.method = dto.method || OUTLIER_METHOD.Z_SCORE;
8612
+ this.threshold = (_a = dto.threshold) !== null && _a !== void 0 ? _a : 0;
8613
+ }
8614
+ setMethod(method) {
8615
+ this.method = method;
8616
+ return this;
8617
+ }
8618
+ setThreshold(threshold) {
8619
+ this.threshold = threshold;
8620
+ return this;
8621
+ }
8622
+ get getMethod() {
8623
+ return this.method;
8624
+ }
8625
+ get getThreshold() {
8626
+ return this.threshold;
8627
+ }
8628
+ }
8629
+ class StatisticalValidationRule extends ValidationRule {
8630
+ constructor() {
8631
+ super(VALIDATION_TYPE.STATISTICAL);
8632
+ this.check = "";
8633
+ this.threshold = 0;
8634
+ this.comparision = COMPARISION_OPERATOR.EQUAL;
8635
+ }
8636
+ toDTO() {
8637
+ return Object.assign(Object.assign({}, super.toDTO()), { check: this.check, threshold: this.threshold, comparision: this.comparision });
8638
+ }
8639
+ populateFromDTO(dto) {
8640
+ var _a;
8641
+ super.populateFromDTO(dto);
8642
+ this.check = dto.check || "";
8643
+ this.threshold = (_a = dto.threshold) !== null && _a !== void 0 ? _a : 0;
8644
+ this.comparision = dto.comparision || COMPARISION_OPERATOR.EQUAL;
8645
+ }
8646
+ setCheck(check) {
8647
+ this.check = check;
8648
+ return this;
8649
+ }
8650
+ setThreshold(threshold) {
8651
+ this.threshold = threshold;
8652
+ return this;
8653
+ }
8654
+ setComparision(comparision) {
8655
+ this.comparision = comparision;
8656
+ return this;
8657
+ }
8658
+ get getCheck() {
8659
+ return this.check;
8660
+ }
8661
+ get getThreshold() {
8662
+ return this.threshold;
8663
+ }
8664
+ get getComparision() {
8665
+ return this.comparision;
8666
+ }
8667
+ }
8668
+ class CompletenessValidationRule extends ValidationRule {
8669
+ constructor() {
8670
+ super(VALIDATION_TYPE.COMPLETENESS);
8671
+ this.min_completeness = 0;
8672
+ }
8673
+ toDTO() {
8674
+ return Object.assign(Object.assign({}, super.toDTO()), { min_completeness: this.min_completeness });
8675
+ }
8676
+ populateFromDTO(dto) {
8677
+ var _a;
8678
+ super.populateFromDTO(dto);
8679
+ this.min_completeness = (_a = dto.min_completeness) !== null && _a !== void 0 ? _a : 0;
8680
+ }
8681
+ setMinCompleteness(minCompleteness) {
8682
+ this.min_completeness = minCompleteness;
8683
+ return this;
8684
+ }
8685
+ get getMinCompleteness() {
8686
+ return this.min_completeness;
8687
+ }
8688
+ }
8689
+ var DATETIME_FORMAT_TYPE;
8690
+ (function (DATETIME_FORMAT_TYPE) {
8691
+ DATETIME_FORMAT_TYPE["YYYY_MM_DD_HH_MM_SS"] = "%Y-%m-%d %H:%M:%S";
8692
+ DATETIME_FORMAT_TYPE["YYYY_MM_DD"] = "%Y-%m-%d";
8693
+ DATETIME_FORMAT_TYPE["YYYY_MM_DD_SLASH"] = "%Y/%m/%d";
8694
+ DATETIME_FORMAT_TYPE["DD_MM_YYYY"] = "%d-%m-%Y";
8695
+ DATETIME_FORMAT_TYPE["YYYY_MM_DD_T_HH_MM_SS"] = "%Y-%m-%dT%H:%M:%S";
8696
+ })(DATETIME_FORMAT_TYPE || (DATETIME_FORMAT_TYPE = {}));
8697
+ class DataTypeValidationRule extends ValidationRule {
8698
+ constructor() {
8699
+ super(VALIDATION_TYPE.DATA_TYPE);
8700
+ this.expected_type = EXPECTED_TYPE.STRING;
8701
+ this.datetime_format = DATETIME_FORMAT_TYPE.YYYY_MM_DD_HH_MM_SS;
8702
+ }
8703
+ toDTO() {
8704
+ return Object.assign(Object.assign({}, super.toDTO()), { expected_type: this.expected_type, datetime_format: this.datetime_format });
8705
+ }
8706
+ populateFromDTO(dto) {
8707
+ super.populateFromDTO(dto);
8708
+ this.expected_type = dto.expected_type || EXPECTED_TYPE.STRING;
8709
+ this.datetime_format =
8710
+ dto.datetime_format || DATETIME_FORMAT_TYPE.YYYY_MM_DD_HH_MM_SS;
8711
+ }
8712
+ setExpectedType(expectedType) {
8713
+ this.expected_type = expectedType;
8714
+ return this;
8715
+ }
8716
+ setDatetimeFormat(datetimeFormat) {
8717
+ this.datetime_format = datetimeFormat;
8718
+ return this;
8719
+ }
8720
+ get getExpectedType() {
8721
+ return this.expected_type;
8722
+ }
8723
+ get getDatetimeFormat() {
8724
+ return this.datetime_format;
8725
+ }
8726
+ }
8727
+
8728
+
8275
8729
  /***/ }),
8276
8730
 
8277
8731
  /***/ "./lib/SODAS_SDK_FILE/dataFile.ts":
@@ -8568,7 +9022,7 @@ var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _argume
8568
9022
 
8569
9023
 
8570
9024
  class Config {
8571
- constructor(governanceBaseUrl, sodasProfileBaseUrl, legacyDatahubBaseUrl) {
9025
+ constructor(sodasProfileBaseUrl, legacyDatahubBaseUrl, governanceBaseUrl) {
8572
9026
  this.governanceToken = null;
8573
9027
  this.legacyDatahubToken = null;
8574
9028
  this.governanceBaseUrl = governanceBaseUrl.replace(/\/$/, "");
@@ -8580,9 +9034,9 @@ class Config {
8580
9034
  * Explicitly configure the SDK with the given API URLs.
8581
9035
  * This is the preferred way to set API URLs instead of using configureAPIURL.
8582
9036
  */
8583
- static configure(datahubApiUrl, governanceApiUrl, legacyDatahubApiUrl) {
9037
+ static configure(datahubApiUrl, legacyDatahubApiUrl, governanceApiUrl) {
8584
9038
  if (!Config.instance) {
8585
- Config.instance = new Config(governanceApiUrl, datahubApiUrl, legacyDatahubApiUrl);
9039
+ Config.instance = new Config(datahubApiUrl, legacyDatahubApiUrl, governanceApiUrl);
8586
9040
  }
8587
9041
  else {
8588
9042
  Config.instance.governanceBaseUrl = governanceApiUrl.replace(/\/$/, "");
@@ -8626,6 +9080,7 @@ class Config {
8626
9080
  _SODAS_SDK_CLASS_DCAT_dataService__WEBPACK_IMPORTED_MODULE_0__["default"].configureAPIURL(SLASH_DELETED_SODAS_PROFILE_BASE_URL);
8627
9081
  _SODAS_SDK_FILE_thumbnailFile__WEBPACK_IMPORTED_MODULE_8__["default"].configureAPIURL(SLASH_DELETED_SODAS_PROFILE_BASE_URL);
8628
9082
  _SODAS_SDK_FILE_dataFile__WEBPACK_IMPORTED_MODULE_7__["default"].configureAPIURL(SLASH_DELETED_SODAS_PROFILE_BASE_URL);
9083
+ _SODAS_SDK_CLASS_template_validation__WEBPACK_IMPORTED_MODULE_6__["default"].configureAPIURL(SLASH_DELETED_SODAS_PROFILE_BASE_URL);
8629
9084
  }
8630
9085
  else {
8631
9086
  console.error("DATAHUB_API_URL not found in config");
@@ -8633,7 +9088,6 @@ class Config {
8633
9088
  if (this.governanceBaseUrl) {
8634
9089
  _SODAS_SDK_CLASS_dictionary_vocabulary__WEBPACK_IMPORTED_MODULE_5__["default"].configureAPIURL(SLASH_DELETED_GOVERNANCE_PORTAL_API_URL);
8635
9090
  _SODAS_SDK_CLASS_dictionary_term__WEBPACK_IMPORTED_MODULE_4__["default"].configureAPIURL(SLASH_DELETED_GOVERNANCE_PORTAL_API_URL);
8636
- _SODAS_SDK_CLASS_template_validation__WEBPACK_IMPORTED_MODULE_6__["default"].configureAPIURL(SLASH_DELETED_GOVERNANCE_PORTAL_API_URL);
8637
9091
  }
8638
9092
  else {
8639
9093
  console.error("GOVERNANCE_API_URL not found in config");
@@ -8769,8 +9223,6 @@ __webpack_require__.r(__webpack_exports__);
8769
9223
  /* harmony export */ NotRecordedYetError: () => (/* binding */ NotRecordedYetError),
8770
9224
  /* harmony export */ RecordNotFoundError: () => (/* binding */ RecordNotFoundError),
8771
9225
  /* harmony export */ RequirementsNotSetError: () => (/* binding */ RequirementsNotSetError),
8772
- /* harmony export */ ResourceRoleDescriptorAlreadyExist: () => (/* binding */ ResourceRoleDescriptorAlreadyExist),
8773
- /* harmony export */ ResourceRoleDescriptorNotExist: () => (/* binding */ ResourceRoleDescriptorNotExist),
8774
9226
  /* harmony export */ RetryLimitReachedError: () => (/* binding */ RetryLimitReachedError),
8775
9227
  /* harmony export */ SwitchSameIndexError: () => (/* binding */ SwitchSameIndexError),
8776
9228
  /* harmony export */ UnexpectedResponseFormatError: () => (/* binding */ UnexpectedResponseFormatError)
@@ -8861,16 +9313,6 @@ class RequirementsNotSetError extends Error {
8861
9313
  super(`Requirements are not set`);
8862
9314
  }
8863
9315
  }
8864
- class ResourceRoleDescriptorAlreadyExist extends Error {
8865
- constructor(role) {
8866
- super(`Resource Descripotor with specific role : ${role} already exists.`);
8867
- }
8868
- }
8869
- class ResourceRoleDescriptorNotExist extends Error {
8870
- constructor(role) {
8871
- super(`Resource Descripotor with specific role : ${role} doesn't exists.`);
8872
- }
8873
- }
8874
9316
  class RetryLimitReachedError extends Error {
8875
9317
  constructor(max) {
8876
9318
  super(`Max retries[${max}] reached`);
@@ -8924,13 +9366,13 @@ __webpack_require__.r(__webpack_exports__);
8924
9366
  function setGovernanceBearerToken(token) {
8925
9367
  _SODAS_SDK_CLASS_dictionary_vocabulary__WEBPACK_IMPORTED_MODULE_5__["default"].BEARER_TOKEN = token;
8926
9368
  _SODAS_SDK_CLASS_dictionary_term__WEBPACK_IMPORTED_MODULE_4__["default"].BEARER_TOKEN = token;
8927
- _SODAS_SDK_CLASS_template_validation__WEBPACK_IMPORTED_MODULE_6__["default"].BEARER_TOKEN = token;
8928
9369
  }
8929
9370
  function setLegacyDatahubBearerToken(token) {
8930
9371
  _SODAS_SDK_CLASS_DCAT_dataset__WEBPACK_IMPORTED_MODULE_1__["default"].BEARER_TOKEN = token;
8931
9372
  _SODAS_SDK_CLASS_DCAT_dataService__WEBPACK_IMPORTED_MODULE_0__["default"].BEARER_TOKEN = token;
8932
9373
  _SODAS_SDK_CLASS_DCAT_datasetSeries__WEBPACK_IMPORTED_MODULE_2__["default"].BEARER_TOKEN = token;
8933
9374
  _SODAS_SDK_CLASS_DCAT_distribution__WEBPACK_IMPORTED_MODULE_3__["default"].BEARER_TOKEN = token;
9375
+ _SODAS_SDK_CLASS_template_validation__WEBPACK_IMPORTED_MODULE_6__["default"].BEARER_TOKEN = token;
8934
9376
  }
8935
9377
 
8936
9378
 
@@ -8944,10 +9386,7 @@ function setLegacyDatahubBearerToken(token) {
8944
9386
 
8945
9387
  __webpack_require__.r(__webpack_exports__);
8946
9388
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
8947
- /* harmony export */ ArtifactType: () => (/* binding */ ArtifactType),
8948
- /* harmony export */ ResourceDescriptorRole: () => (/* binding */ ResourceDescriptorRole),
8949
9389
  /* harmony export */ SortOrder: () => (/* binding */ SortOrder),
8950
- /* harmony export */ TemplateDetailFunctionality: () => (/* binding */ TemplateDetailFunctionality),
8951
9390
  /* harmony export */ asID: () => (/* binding */ asID),
8952
9391
  /* harmony export */ asIDs: () => (/* binding */ asIDs),
8953
9392
  /* harmony export */ asIRI: () => (/* binding */ asIRI),
@@ -9002,51 +9441,6 @@ function toDate(dateString) {
9002
9441
  }
9003
9442
  return date;
9004
9443
  }
9005
- var ResourceDescriptorRole;
9006
- (function (ResourceDescriptorRole) {
9007
- ResourceDescriptorRole["VOCABULARY"] = "vocabulary";
9008
- ResourceDescriptorRole["TYPE"] = "type";
9009
- ResourceDescriptorRole["SCHEMA"] = "schema";
9010
- ResourceDescriptorRole["CONSTRAINT"] = "constraint";
9011
- ResourceDescriptorRole["VALIDATION"] = "validation";
9012
- ResourceDescriptorRole["MAPPING"] = "mapping";
9013
- ResourceDescriptorRole["EXAMPLE"] = "example";
9014
- ResourceDescriptorRole["SPECIFICATION"] = "specification";
9015
- ResourceDescriptorRole["GUIDANCE"] = "guidance";
9016
- })(ResourceDescriptorRole || (ResourceDescriptorRole = {}));
9017
- var ArtifactType;
9018
- (function (ArtifactType) {
9019
- ArtifactType["TEMPLATE"] = "template";
9020
- ArtifactType["FILE"] = "file";
9021
- })(ArtifactType || (ArtifactType = {}));
9022
- var TemplateDetailFunctionality;
9023
- (function (TemplateDetailFunctionality) {
9024
- //VOCABULARY
9025
- TemplateDetailFunctionality["ORIGIN"] = "origin";
9026
- TemplateDetailFunctionality["NAMESPACE"] = "namespaceIRI";
9027
- TemplateDetailFunctionality["TERM"] = "term";
9028
- TemplateDetailFunctionality["DESCRIPTION"] = "description";
9029
- //TYPE
9030
- TemplateDetailFunctionality["NAME"] = "name";
9031
- TemplateDetailFunctionality["LABEL"] = "label";
9032
- TemplateDetailFunctionality["VALUE"] = "value";
9033
- //SCHEMA
9034
- TemplateDetailFunctionality["TYPE"] = "type";
9035
- TemplateDetailFunctionality["REQUIRED"] = "required";
9036
- TemplateDetailFunctionality["FIELD_TERM"] = "fieldTerm";
9037
- //CONSTRAINT
9038
- TemplateDetailFunctionality["FIELD"] = "field";
9039
- TemplateDetailFunctionality["REGEX"] = "regex";
9040
- //VALIDATION
9041
- TemplateDetailFunctionality["MEASURE"] = "measure";
9042
- //MAPPING
9043
- TemplateDetailFunctionality["TARGET_PROFILE"] = "targetProfile";
9044
- TemplateDetailFunctionality["TARGET_FIELD"] = "targetField";
9045
- //EXAMPLE : FIELD, VALUE, DESCIRPTION
9046
- //SPECIFICATION
9047
- TemplateDetailFunctionality["CONVERSION"] = "conversion";
9048
- //GUIDANCE : I think I need to remove it
9049
- })(TemplateDetailFunctionality || (TemplateDetailFunctionality = {}));
9050
9444
  var SortOrder;
9051
9445
  (function (SortOrder) {
9052
9446
  SortOrder["ASC"] = "ASC";
@@ -15383,35 +15777,50 @@ var __webpack_exports__ = {};
15383
15777
  \**********************/
15384
15778
  __webpack_require__.r(__webpack_exports__);
15385
15779
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
15386
- /* harmony export */ ArtifactType: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_7__.ArtifactType),
15387
- /* harmony export */ BASIC_TYPE_VALUES: () => (/* reexport safe */ _core_values__WEBPACK_IMPORTED_MODULE_8__.BASIC_TYPE_VALUES),
15388
- /* harmony export */ CONVERSION_VALUES: () => (/* reexport safe */ _core_values__WEBPACK_IMPORTED_MODULE_8__.CONVERSION_VALUES),
15389
- /* harmony export */ Config: () => (/* reexport safe */ _core_auth__WEBPACK_IMPORTED_MODULE_5__["default"]),
15780
+ /* harmony export */ AllowedValuesValidationRule: () => (/* reexport safe */ _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.AllowedValuesValidationRule),
15781
+ /* harmony export */ BASIC_TYPE_VALUES: () => (/* reexport safe */ _core_values__WEBPACK_IMPORTED_MODULE_9__.BASIC_TYPE_VALUES),
15782
+ /* harmony export */ COMPARISION_OPERATOR: () => (/* reexport safe */ _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.COMPARISION_OPERATOR),
15783
+ /* harmony export */ CONVERSION_VALUES: () => (/* reexport safe */ _core_values__WEBPACK_IMPORTED_MODULE_9__.CONVERSION_VALUES),
15784
+ /* harmony export */ CUSTOM_CONDITION_TYPE: () => (/* reexport safe */ _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.CUSTOM_CONDITION_TYPE),
15785
+ /* harmony export */ CompletenessValidationRule: () => (/* reexport safe */ _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.CompletenessValidationRule),
15786
+ /* harmony export */ Config: () => (/* reexport safe */ _core_auth__WEBPACK_IMPORTED_MODULE_6__["default"]),
15787
+ /* harmony export */ CustomValidationRule: () => (/* reexport safe */ _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.CustomValidationRule),
15788
+ /* harmony export */ DATETIME_FORMAT_TYPE: () => (/* reexport safe */ _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.DATETIME_FORMAT_TYPE),
15390
15789
  /* harmony export */ DataService: () => (/* reexport safe */ _SODAS_SDK_CLASS_DCAT_dataService__WEBPACK_IMPORTED_MODULE_0__["default"]),
15790
+ /* harmony export */ DataTypeValidationRule: () => (/* reexport safe */ _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.DataTypeValidationRule),
15391
15791
  /* harmony export */ Dataset: () => (/* reexport safe */ _SODAS_SDK_CLASS_DCAT_dataset__WEBPACK_IMPORTED_MODULE_1__["default"]),
15392
15792
  /* harmony export */ DatasetSeries: () => (/* reexport safe */ _SODAS_SDK_CLASS_DCAT_datasetSeries__WEBPACK_IMPORTED_MODULE_2__["default"]),
15393
15793
  /* harmony export */ Distribution: () => (/* reexport safe */ _SODAS_SDK_CLASS_DCAT_distribution__WEBPACK_IMPORTED_MODULE_3__["default"]),
15394
- /* harmony export */ MEASURE_VALUES: () => (/* reexport safe */ _core_values__WEBPACK_IMPORTED_MODULE_8__.MEASURE_VALUES),
15395
- /* harmony export */ ORIGIN_VALUES: () => (/* reexport safe */ _core_values__WEBPACK_IMPORTED_MODULE_8__.ORIGIN_VALUES),
15396
- /* harmony export */ ResourceDescriptorRole: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_7__.ResourceDescriptorRole),
15397
- /* harmony export */ SortOrder: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_7__.SortOrder),
15398
- /* harmony export */ TemplateDetailFunctionality: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_7__.TemplateDetailFunctionality),
15794
+ /* harmony export */ EXPECTED_TYPE: () => (/* reexport safe */ _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.EXPECTED_TYPE),
15795
+ /* harmony export */ LengthValidationRule: () => (/* reexport safe */ _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.LengthValidationRule),
15796
+ /* harmony export */ MEASURE_VALUES: () => (/* reexport safe */ _core_values__WEBPACK_IMPORTED_MODULE_9__.MEASURE_VALUES),
15797
+ /* harmony export */ ORIGIN_VALUES: () => (/* reexport safe */ _core_values__WEBPACK_IMPORTED_MODULE_9__.ORIGIN_VALUES),
15798
+ /* harmony export */ OUTLIER_METHOD: () => (/* reexport safe */ _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.OUTLIER_METHOD),
15799
+ /* harmony export */ OutlierValidationRule: () => (/* reexport safe */ _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.OutlierValidationRule),
15800
+ /* harmony export */ PatternValidationRule: () => (/* reexport safe */ _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.PatternValidationRule),
15801
+ /* harmony export */ RangeValidationRule: () => (/* reexport safe */ _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.RangeValidationRule),
15802
+ /* harmony export */ SortOrder: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_8__.SortOrder),
15803
+ /* harmony export */ StatisticalValidationRule: () => (/* reexport safe */ _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.StatisticalValidationRule),
15804
+ /* harmony export */ UniquenessValidationRule: () => (/* reexport safe */ _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.UniquenessValidationRule),
15805
+ /* harmony export */ VALIDATION_TYPE: () => (/* reexport safe */ _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.VALIDATION_TYPE),
15806
+ /* harmony export */ ValidationRule: () => (/* reexport safe */ _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.ValidationRule),
15399
15807
  /* harmony export */ ValidationTemplate: () => (/* reexport safe */ _SODAS_SDK_CLASS_template_validation__WEBPACK_IMPORTED_MODULE_4__["default"]),
15400
- /* harmony export */ asID: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_7__.asID),
15401
- /* harmony export */ asIRI: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_7__.asIRI),
15808
+ /* harmony export */ asID: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_8__.asID),
15809
+ /* harmony export */ asIRI: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_8__.asIRI),
15402
15810
  /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__),
15403
- /* harmony export */ setGovernanceBearerToken: () => (/* reexport safe */ _core_init__WEBPACK_IMPORTED_MODULE_6__.setGovernanceBearerToken),
15404
- /* harmony export */ setLegacyDatahubBearerToken: () => (/* reexport safe */ _core_init__WEBPACK_IMPORTED_MODULE_6__.setLegacyDatahubBearerToken)
15811
+ /* harmony export */ setGovernanceBearerToken: () => (/* reexport safe */ _core_init__WEBPACK_IMPORTED_MODULE_7__.setGovernanceBearerToken),
15812
+ /* harmony export */ setLegacyDatahubBearerToken: () => (/* reexport safe */ _core_init__WEBPACK_IMPORTED_MODULE_7__.setLegacyDatahubBearerToken)
15405
15813
  /* harmony export */ });
15406
15814
  /* harmony import */ var _SODAS_SDK_CLASS_DCAT_dataService__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./SODAS_SDK_CLASS/DCAT/dataService */ "./lib/SODAS_SDK_CLASS/DCAT/dataService.ts");
15407
15815
  /* harmony import */ var _SODAS_SDK_CLASS_DCAT_dataset__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./SODAS_SDK_CLASS/DCAT/dataset */ "./lib/SODAS_SDK_CLASS/DCAT/dataset.ts");
15408
15816
  /* harmony import */ var _SODAS_SDK_CLASS_DCAT_datasetSeries__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./SODAS_SDK_CLASS/DCAT/datasetSeries */ "./lib/SODAS_SDK_CLASS/DCAT/datasetSeries.ts");
15409
15817
  /* harmony import */ var _SODAS_SDK_CLASS_DCAT_distribution__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./SODAS_SDK_CLASS/DCAT/distribution */ "./lib/SODAS_SDK_CLASS/DCAT/distribution.ts");
15410
15818
  /* harmony import */ var _SODAS_SDK_CLASS_template_validation__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./SODAS_SDK_CLASS/template/validation */ "./lib/SODAS_SDK_CLASS/template/validation.ts");
15411
- /* harmony import */ var _core_auth__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./core/auth */ "./lib/core/auth.ts");
15412
- /* harmony import */ var _core_init__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./core/init */ "./lib/core/init.ts");
15413
- /* harmony import */ var _core_type__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./core/type */ "./lib/core/type.ts");
15414
- /* harmony import */ var _core_values__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./core/values */ "./lib/core/values.ts");
15819
+ /* harmony import */ var _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./SODAS_SDK_CLASS/template/validationType */ "./lib/SODAS_SDK_CLASS/template/validationType.ts");
15820
+ /* harmony import */ var _core_auth__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./core/auth */ "./lib/core/auth.ts");
15821
+ /* harmony import */ var _core_init__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./core/init */ "./lib/core/init.ts");
15822
+ /* harmony import */ var _core_type__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./core/type */ "./lib/core/type.ts");
15823
+ /* harmony import */ var _core_values__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./core/values */ "./lib/core/values.ts");
15415
15824
  // Import named functions first
15416
15825
 
15417
15826
 
@@ -15422,53 +15831,82 @@ __webpack_require__.r(__webpack_exports__);
15422
15831
 
15423
15832
 
15424
15833
 
15834
+
15425
15835
  // ✅ Named exports (For ES module compatibility)
15426
15836
 
15427
15837
  // ✅ Default export (For CommonJS compatibility)
15428
15838
  const sdk = {
15429
- ArtifactType: _core_type__WEBPACK_IMPORTED_MODULE_7__.ArtifactType,
15430
- BASIC_TYPE_VALUES: _core_values__WEBPACK_IMPORTED_MODULE_8__.BASIC_TYPE_VALUES,
15431
- CONVERSION_VALUES: _core_values__WEBPACK_IMPORTED_MODULE_8__.CONVERSION_VALUES,
15432
- Config: _core_auth__WEBPACK_IMPORTED_MODULE_5__["default"],
15839
+ AllowedValuesValidationRule: _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.AllowedValuesValidationRule,
15840
+ BASIC_TYPE_VALUES: _core_values__WEBPACK_IMPORTED_MODULE_9__.BASIC_TYPE_VALUES,
15841
+ COMPARISION_OPERATOR: _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.COMPARISION_OPERATOR,
15842
+ CompletenessValidationRule: _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.CompletenessValidationRule,
15843
+ CONVERSION_VALUES: _core_values__WEBPACK_IMPORTED_MODULE_9__.CONVERSION_VALUES,
15844
+ Config: _core_auth__WEBPACK_IMPORTED_MODULE_6__["default"],
15845
+ CUSTOM_CONDITION_TYPE: _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.CUSTOM_CONDITION_TYPE,
15846
+ CustomValidationRule: _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.CustomValidationRule,
15847
+ DATETIME_FORMAT_TYPE: _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.DATETIME_FORMAT_TYPE,
15433
15848
  DataService: _SODAS_SDK_CLASS_DCAT_dataService__WEBPACK_IMPORTED_MODULE_0__["default"],
15849
+ DataTypeValidationRule: _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.DataTypeValidationRule,
15434
15850
  Dataset: _SODAS_SDK_CLASS_DCAT_dataset__WEBPACK_IMPORTED_MODULE_1__["default"],
15435
15851
  DatasetSeries: _SODAS_SDK_CLASS_DCAT_datasetSeries__WEBPACK_IMPORTED_MODULE_2__["default"],
15436
15852
  Distribution: _SODAS_SDK_CLASS_DCAT_distribution__WEBPACK_IMPORTED_MODULE_3__["default"],
15437
- MEASURE_VALUES: _core_values__WEBPACK_IMPORTED_MODULE_8__.MEASURE_VALUES,
15438
- ORIGIN_VALUES: _core_values__WEBPACK_IMPORTED_MODULE_8__.ORIGIN_VALUES,
15439
- ResourceDescriptorRole: _core_type__WEBPACK_IMPORTED_MODULE_7__.ResourceDescriptorRole,
15440
- SortOrder: _core_type__WEBPACK_IMPORTED_MODULE_7__.SortOrder,
15441
- TemplateDetailFunctionality: _core_type__WEBPACK_IMPORTED_MODULE_7__.TemplateDetailFunctionality,
15853
+ EXPECTED_TYPE: _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.EXPECTED_TYPE,
15854
+ LengthValidationRule: _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.LengthValidationRule,
15855
+ MEASURE_VALUES: _core_values__WEBPACK_IMPORTED_MODULE_9__.MEASURE_VALUES,
15856
+ ORIGIN_VALUES: _core_values__WEBPACK_IMPORTED_MODULE_9__.ORIGIN_VALUES,
15857
+ OutlierValidationRule: _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.OutlierValidationRule,
15858
+ OUTLIER_METHOD: _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.OUTLIER_METHOD,
15859
+ PatternValidationRule: _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.PatternValidationRule,
15860
+ RangeValidationRule: _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.RangeValidationRule,
15861
+ SortOrder: _core_type__WEBPACK_IMPORTED_MODULE_8__.SortOrder,
15862
+ StatisticalValidationRule: _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.StatisticalValidationRule,
15863
+ UniquenessValidationRule: _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.UniquenessValidationRule,
15864
+ VALIDATION_TYPE: _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.VALIDATION_TYPE,
15865
+ ValidationRule: _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.ValidationRule,
15442
15866
  ValidationTemplate: _SODAS_SDK_CLASS_template_validation__WEBPACK_IMPORTED_MODULE_4__["default"],
15443
- asID: _core_type__WEBPACK_IMPORTED_MODULE_7__.asID,
15444
- asIRI: _core_type__WEBPACK_IMPORTED_MODULE_7__.asIRI,
15445
- setGovernanceBearerToken: _core_init__WEBPACK_IMPORTED_MODULE_6__.setGovernanceBearerToken,
15446
- setLegacyDatahubBearerToken: _core_init__WEBPACK_IMPORTED_MODULE_6__.setLegacyDatahubBearerToken,
15867
+ asID: _core_type__WEBPACK_IMPORTED_MODULE_8__.asID,
15868
+ asIRI: _core_type__WEBPACK_IMPORTED_MODULE_8__.asIRI,
15869
+ setGovernanceBearerToken: _core_init__WEBPACK_IMPORTED_MODULE_7__.setGovernanceBearerToken,
15870
+ setLegacyDatahubBearerToken: _core_init__WEBPACK_IMPORTED_MODULE_7__.setLegacyDatahubBearerToken,
15447
15871
  };
15448
15872
  // ✅ Ensures `require("sodas-sdk")` works in CommonJS
15449
15873
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (sdk);
15450
15874
 
15451
15875
  })();
15452
15876
 
15453
- var __webpack_exports__ArtifactType = __webpack_exports__.ArtifactType;
15877
+ var __webpack_exports__AllowedValuesValidationRule = __webpack_exports__.AllowedValuesValidationRule;
15454
15878
  var __webpack_exports__BASIC_TYPE_VALUES = __webpack_exports__.BASIC_TYPE_VALUES;
15879
+ var __webpack_exports__COMPARISION_OPERATOR = __webpack_exports__.COMPARISION_OPERATOR;
15455
15880
  var __webpack_exports__CONVERSION_VALUES = __webpack_exports__.CONVERSION_VALUES;
15881
+ var __webpack_exports__CUSTOM_CONDITION_TYPE = __webpack_exports__.CUSTOM_CONDITION_TYPE;
15882
+ var __webpack_exports__CompletenessValidationRule = __webpack_exports__.CompletenessValidationRule;
15456
15883
  var __webpack_exports__Config = __webpack_exports__.Config;
15884
+ var __webpack_exports__CustomValidationRule = __webpack_exports__.CustomValidationRule;
15885
+ var __webpack_exports__DATETIME_FORMAT_TYPE = __webpack_exports__.DATETIME_FORMAT_TYPE;
15457
15886
  var __webpack_exports__DataService = __webpack_exports__.DataService;
15887
+ var __webpack_exports__DataTypeValidationRule = __webpack_exports__.DataTypeValidationRule;
15458
15888
  var __webpack_exports__Dataset = __webpack_exports__.Dataset;
15459
15889
  var __webpack_exports__DatasetSeries = __webpack_exports__.DatasetSeries;
15460
15890
  var __webpack_exports__Distribution = __webpack_exports__.Distribution;
15891
+ var __webpack_exports__EXPECTED_TYPE = __webpack_exports__.EXPECTED_TYPE;
15892
+ var __webpack_exports__LengthValidationRule = __webpack_exports__.LengthValidationRule;
15461
15893
  var __webpack_exports__MEASURE_VALUES = __webpack_exports__.MEASURE_VALUES;
15462
15894
  var __webpack_exports__ORIGIN_VALUES = __webpack_exports__.ORIGIN_VALUES;
15463
- var __webpack_exports__ResourceDescriptorRole = __webpack_exports__.ResourceDescriptorRole;
15895
+ var __webpack_exports__OUTLIER_METHOD = __webpack_exports__.OUTLIER_METHOD;
15896
+ var __webpack_exports__OutlierValidationRule = __webpack_exports__.OutlierValidationRule;
15897
+ var __webpack_exports__PatternValidationRule = __webpack_exports__.PatternValidationRule;
15898
+ var __webpack_exports__RangeValidationRule = __webpack_exports__.RangeValidationRule;
15464
15899
  var __webpack_exports__SortOrder = __webpack_exports__.SortOrder;
15465
- var __webpack_exports__TemplateDetailFunctionality = __webpack_exports__.TemplateDetailFunctionality;
15900
+ var __webpack_exports__StatisticalValidationRule = __webpack_exports__.StatisticalValidationRule;
15901
+ var __webpack_exports__UniquenessValidationRule = __webpack_exports__.UniquenessValidationRule;
15902
+ var __webpack_exports__VALIDATION_TYPE = __webpack_exports__.VALIDATION_TYPE;
15903
+ var __webpack_exports__ValidationRule = __webpack_exports__.ValidationRule;
15466
15904
  var __webpack_exports__ValidationTemplate = __webpack_exports__.ValidationTemplate;
15467
15905
  var __webpack_exports__asID = __webpack_exports__.asID;
15468
15906
  var __webpack_exports__asIRI = __webpack_exports__.asIRI;
15469
15907
  var __webpack_exports__default = __webpack_exports__["default"];
15470
15908
  var __webpack_exports__setGovernanceBearerToken = __webpack_exports__.setGovernanceBearerToken;
15471
15909
  var __webpack_exports__setLegacyDatahubBearerToken = __webpack_exports__.setLegacyDatahubBearerToken;
15472
- export { __webpack_exports__ArtifactType as ArtifactType, __webpack_exports__BASIC_TYPE_VALUES as BASIC_TYPE_VALUES, __webpack_exports__CONVERSION_VALUES as CONVERSION_VALUES, __webpack_exports__Config as Config, __webpack_exports__DataService as DataService, __webpack_exports__Dataset as Dataset, __webpack_exports__DatasetSeries as DatasetSeries, __webpack_exports__Distribution as Distribution, __webpack_exports__MEASURE_VALUES as MEASURE_VALUES, __webpack_exports__ORIGIN_VALUES as ORIGIN_VALUES, __webpack_exports__ResourceDescriptorRole as ResourceDescriptorRole, __webpack_exports__SortOrder as SortOrder, __webpack_exports__TemplateDetailFunctionality as TemplateDetailFunctionality, __webpack_exports__ValidationTemplate as ValidationTemplate, __webpack_exports__asID as asID, __webpack_exports__asIRI as asIRI, __webpack_exports__default as default, __webpack_exports__setGovernanceBearerToken as setGovernanceBearerToken, __webpack_exports__setLegacyDatahubBearerToken as setLegacyDatahubBearerToken };
15910
+ export { __webpack_exports__AllowedValuesValidationRule as AllowedValuesValidationRule, __webpack_exports__BASIC_TYPE_VALUES as BASIC_TYPE_VALUES, __webpack_exports__COMPARISION_OPERATOR as COMPARISION_OPERATOR, __webpack_exports__CONVERSION_VALUES as CONVERSION_VALUES, __webpack_exports__CUSTOM_CONDITION_TYPE as CUSTOM_CONDITION_TYPE, __webpack_exports__CompletenessValidationRule as CompletenessValidationRule, __webpack_exports__Config as Config, __webpack_exports__CustomValidationRule as CustomValidationRule, __webpack_exports__DATETIME_FORMAT_TYPE as DATETIME_FORMAT_TYPE, __webpack_exports__DataService as DataService, __webpack_exports__DataTypeValidationRule as DataTypeValidationRule, __webpack_exports__Dataset as Dataset, __webpack_exports__DatasetSeries as DatasetSeries, __webpack_exports__Distribution as Distribution, __webpack_exports__EXPECTED_TYPE as EXPECTED_TYPE, __webpack_exports__LengthValidationRule as LengthValidationRule, __webpack_exports__MEASURE_VALUES as MEASURE_VALUES, __webpack_exports__ORIGIN_VALUES as ORIGIN_VALUES, __webpack_exports__OUTLIER_METHOD as OUTLIER_METHOD, __webpack_exports__OutlierValidationRule as OutlierValidationRule, __webpack_exports__PatternValidationRule as PatternValidationRule, __webpack_exports__RangeValidationRule as RangeValidationRule, __webpack_exports__SortOrder as SortOrder, __webpack_exports__StatisticalValidationRule as StatisticalValidationRule, __webpack_exports__UniquenessValidationRule as UniquenessValidationRule, __webpack_exports__VALIDATION_TYPE as VALIDATION_TYPE, __webpack_exports__ValidationRule as ValidationRule, __webpack_exports__ValidationTemplate as ValidationTemplate, __webpack_exports__asID as asID, __webpack_exports__asIRI as asIRI, __webpack_exports__default as default, __webpack_exports__setGovernanceBearerToken as setGovernanceBearerToken, __webpack_exports__setLegacyDatahubBearerToken as setLegacyDatahubBearerToken };
15473
15911
 
15474
15912
  //# sourceMappingURL=index.node.js.map