sodas-sdk 1.5.2 → 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 -56
  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 -512
  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 -509
  22. package/dist/index.legacy.browser.js.map +1 -1
  23. package/dist/index.legacy.node.cjs +930 -508
  24. package/dist/index.legacy.node.cjs.map +1 -1
  25. package/dist/index.node.js +947 -512
  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) {
@@ -7953,49 +7964,18 @@ var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _argume
7953
7964
  function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
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
- });
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"] {
7967
+ });
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,14 +8322,408 @@ 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;
8325
+ }
8326
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ValidationTemplate);
8327
+
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;
8270
8404
  }
8271
- get escapedRules() {
8272
- return ValidationTemplate.stringifyValidationRulesToEscapedString(this.rules);
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;
8273
8725
  }
8274
8726
  }
8275
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ValidationTemplate);
8276
8727
 
8277
8728
 
8278
8729
  /***/ }),
@@ -8571,7 +9022,7 @@ var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _argume
8571
9022
 
8572
9023
 
8573
9024
  class Config {
8574
- constructor(governanceBaseUrl, sodasProfileBaseUrl, legacyDatahubBaseUrl) {
9025
+ constructor(sodasProfileBaseUrl, legacyDatahubBaseUrl, governanceBaseUrl) {
8575
9026
  this.governanceToken = null;
8576
9027
  this.legacyDatahubToken = null;
8577
9028
  this.governanceBaseUrl = governanceBaseUrl.replace(/\/$/, "");
@@ -8583,9 +9034,9 @@ class Config {
8583
9034
  * Explicitly configure the SDK with the given API URLs.
8584
9035
  * This is the preferred way to set API URLs instead of using configureAPIURL.
8585
9036
  */
8586
- static configure(datahubApiUrl, governanceApiUrl, legacyDatahubApiUrl) {
9037
+ static configure(datahubApiUrl, legacyDatahubApiUrl, governanceApiUrl) {
8587
9038
  if (!Config.instance) {
8588
- Config.instance = new Config(governanceApiUrl, datahubApiUrl, legacyDatahubApiUrl);
9039
+ Config.instance = new Config(datahubApiUrl, legacyDatahubApiUrl, governanceApiUrl);
8589
9040
  }
8590
9041
  else {
8591
9042
  Config.instance.governanceBaseUrl = governanceApiUrl.replace(/\/$/, "");
@@ -8629,6 +9080,7 @@ class Config {
8629
9080
  _SODAS_SDK_CLASS_DCAT_dataService__WEBPACK_IMPORTED_MODULE_0__["default"].configureAPIURL(SLASH_DELETED_SODAS_PROFILE_BASE_URL);
8630
9081
  _SODAS_SDK_FILE_thumbnailFile__WEBPACK_IMPORTED_MODULE_8__["default"].configureAPIURL(SLASH_DELETED_SODAS_PROFILE_BASE_URL);
8631
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);
8632
9084
  }
8633
9085
  else {
8634
9086
  console.error("DATAHUB_API_URL not found in config");
@@ -8636,7 +9088,6 @@ class Config {
8636
9088
  if (this.governanceBaseUrl) {
8637
9089
  _SODAS_SDK_CLASS_dictionary_vocabulary__WEBPACK_IMPORTED_MODULE_5__["default"].configureAPIURL(SLASH_DELETED_GOVERNANCE_PORTAL_API_URL);
8638
9090
  _SODAS_SDK_CLASS_dictionary_term__WEBPACK_IMPORTED_MODULE_4__["default"].configureAPIURL(SLASH_DELETED_GOVERNANCE_PORTAL_API_URL);
8639
- _SODAS_SDK_CLASS_template_validation__WEBPACK_IMPORTED_MODULE_6__["default"].configureAPIURL(SLASH_DELETED_GOVERNANCE_PORTAL_API_URL);
8640
9091
  }
8641
9092
  else {
8642
9093
  console.error("GOVERNANCE_API_URL not found in config");
@@ -8772,8 +9223,6 @@ __webpack_require__.r(__webpack_exports__);
8772
9223
  /* harmony export */ NotRecordedYetError: () => (/* binding */ NotRecordedYetError),
8773
9224
  /* harmony export */ RecordNotFoundError: () => (/* binding */ RecordNotFoundError),
8774
9225
  /* harmony export */ RequirementsNotSetError: () => (/* binding */ RequirementsNotSetError),
8775
- /* harmony export */ ResourceRoleDescriptorAlreadyExist: () => (/* binding */ ResourceRoleDescriptorAlreadyExist),
8776
- /* harmony export */ ResourceRoleDescriptorNotExist: () => (/* binding */ ResourceRoleDescriptorNotExist),
8777
9226
  /* harmony export */ RetryLimitReachedError: () => (/* binding */ RetryLimitReachedError),
8778
9227
  /* harmony export */ SwitchSameIndexError: () => (/* binding */ SwitchSameIndexError),
8779
9228
  /* harmony export */ UnexpectedResponseFormatError: () => (/* binding */ UnexpectedResponseFormatError)
@@ -8864,16 +9313,6 @@ class RequirementsNotSetError extends Error {
8864
9313
  super(`Requirements are not set`);
8865
9314
  }
8866
9315
  }
8867
- class ResourceRoleDescriptorAlreadyExist extends Error {
8868
- constructor(role) {
8869
- super(`Resource Descripotor with specific role : ${role} already exists.`);
8870
- }
8871
- }
8872
- class ResourceRoleDescriptorNotExist extends Error {
8873
- constructor(role) {
8874
- super(`Resource Descripotor with specific role : ${role} doesn't exists.`);
8875
- }
8876
- }
8877
9316
  class RetryLimitReachedError extends Error {
8878
9317
  constructor(max) {
8879
9318
  super(`Max retries[${max}] reached`);
@@ -8927,13 +9366,13 @@ __webpack_require__.r(__webpack_exports__);
8927
9366
  function setGovernanceBearerToken(token) {
8928
9367
  _SODAS_SDK_CLASS_dictionary_vocabulary__WEBPACK_IMPORTED_MODULE_5__["default"].BEARER_TOKEN = token;
8929
9368
  _SODAS_SDK_CLASS_dictionary_term__WEBPACK_IMPORTED_MODULE_4__["default"].BEARER_TOKEN = token;
8930
- _SODAS_SDK_CLASS_template_validation__WEBPACK_IMPORTED_MODULE_6__["default"].BEARER_TOKEN = token;
8931
9369
  }
8932
9370
  function setLegacyDatahubBearerToken(token) {
8933
9371
  _SODAS_SDK_CLASS_DCAT_dataset__WEBPACK_IMPORTED_MODULE_1__["default"].BEARER_TOKEN = token;
8934
9372
  _SODAS_SDK_CLASS_DCAT_dataService__WEBPACK_IMPORTED_MODULE_0__["default"].BEARER_TOKEN = token;
8935
9373
  _SODAS_SDK_CLASS_DCAT_datasetSeries__WEBPACK_IMPORTED_MODULE_2__["default"].BEARER_TOKEN = token;
8936
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;
8937
9376
  }
8938
9377
 
8939
9378
 
@@ -8947,10 +9386,7 @@ function setLegacyDatahubBearerToken(token) {
8947
9386
 
8948
9387
  __webpack_require__.r(__webpack_exports__);
8949
9388
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
8950
- /* harmony export */ ArtifactType: () => (/* binding */ ArtifactType),
8951
- /* harmony export */ ResourceDescriptorRole: () => (/* binding */ ResourceDescriptorRole),
8952
9389
  /* harmony export */ SortOrder: () => (/* binding */ SortOrder),
8953
- /* harmony export */ TemplateDetailFunctionality: () => (/* binding */ TemplateDetailFunctionality),
8954
9390
  /* harmony export */ asID: () => (/* binding */ asID),
8955
9391
  /* harmony export */ asIDs: () => (/* binding */ asIDs),
8956
9392
  /* harmony export */ asIRI: () => (/* binding */ asIRI),
@@ -9005,51 +9441,6 @@ function toDate(dateString) {
9005
9441
  }
9006
9442
  return date;
9007
9443
  }
9008
- var ResourceDescriptorRole;
9009
- (function (ResourceDescriptorRole) {
9010
- ResourceDescriptorRole["VOCABULARY"] = "vocabulary";
9011
- ResourceDescriptorRole["TYPE"] = "type";
9012
- ResourceDescriptorRole["SCHEMA"] = "schema";
9013
- ResourceDescriptorRole["CONSTRAINT"] = "constraint";
9014
- ResourceDescriptorRole["VALIDATION"] = "validation";
9015
- ResourceDescriptorRole["MAPPING"] = "mapping";
9016
- ResourceDescriptorRole["EXAMPLE"] = "example";
9017
- ResourceDescriptorRole["SPECIFICATION"] = "specification";
9018
- ResourceDescriptorRole["GUIDANCE"] = "guidance";
9019
- })(ResourceDescriptorRole || (ResourceDescriptorRole = {}));
9020
- var ArtifactType;
9021
- (function (ArtifactType) {
9022
- ArtifactType["TEMPLATE"] = "template";
9023
- ArtifactType["FILE"] = "file";
9024
- })(ArtifactType || (ArtifactType = {}));
9025
- var TemplateDetailFunctionality;
9026
- (function (TemplateDetailFunctionality) {
9027
- //VOCABULARY
9028
- TemplateDetailFunctionality["ORIGIN"] = "origin";
9029
- TemplateDetailFunctionality["NAMESPACE"] = "namespaceIRI";
9030
- TemplateDetailFunctionality["TERM"] = "term";
9031
- TemplateDetailFunctionality["DESCRIPTION"] = "description";
9032
- //TYPE
9033
- TemplateDetailFunctionality["NAME"] = "name";
9034
- TemplateDetailFunctionality["LABEL"] = "label";
9035
- TemplateDetailFunctionality["VALUE"] = "value";
9036
- //SCHEMA
9037
- TemplateDetailFunctionality["TYPE"] = "type";
9038
- TemplateDetailFunctionality["REQUIRED"] = "required";
9039
- TemplateDetailFunctionality["FIELD_TERM"] = "fieldTerm";
9040
- //CONSTRAINT
9041
- TemplateDetailFunctionality["FIELD"] = "field";
9042
- TemplateDetailFunctionality["REGEX"] = "regex";
9043
- //VALIDATION
9044
- TemplateDetailFunctionality["MEASURE"] = "measure";
9045
- //MAPPING
9046
- TemplateDetailFunctionality["TARGET_PROFILE"] = "targetProfile";
9047
- TemplateDetailFunctionality["TARGET_FIELD"] = "targetField";
9048
- //EXAMPLE : FIELD, VALUE, DESCIRPTION
9049
- //SPECIFICATION
9050
- TemplateDetailFunctionality["CONVERSION"] = "conversion";
9051
- //GUIDANCE : I think I need to remove it
9052
- })(TemplateDetailFunctionality || (TemplateDetailFunctionality = {}));
9053
9444
  var SortOrder;
9054
9445
  (function (SortOrder) {
9055
9446
  SortOrder["ASC"] = "ASC";
@@ -15386,35 +15777,50 @@ var __webpack_exports__ = {};
15386
15777
  \**********************/
15387
15778
  __webpack_require__.r(__webpack_exports__);
15388
15779
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
15389
- /* harmony export */ ArtifactType: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_7__.ArtifactType),
15390
- /* harmony export */ BASIC_TYPE_VALUES: () => (/* reexport safe */ _core_values__WEBPACK_IMPORTED_MODULE_8__.BASIC_TYPE_VALUES),
15391
- /* harmony export */ CONVERSION_VALUES: () => (/* reexport safe */ _core_values__WEBPACK_IMPORTED_MODULE_8__.CONVERSION_VALUES),
15392
- /* 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),
15393
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),
15394
15791
  /* harmony export */ Dataset: () => (/* reexport safe */ _SODAS_SDK_CLASS_DCAT_dataset__WEBPACK_IMPORTED_MODULE_1__["default"]),
15395
15792
  /* harmony export */ DatasetSeries: () => (/* reexport safe */ _SODAS_SDK_CLASS_DCAT_datasetSeries__WEBPACK_IMPORTED_MODULE_2__["default"]),
15396
15793
  /* harmony export */ Distribution: () => (/* reexport safe */ _SODAS_SDK_CLASS_DCAT_distribution__WEBPACK_IMPORTED_MODULE_3__["default"]),
15397
- /* harmony export */ MEASURE_VALUES: () => (/* reexport safe */ _core_values__WEBPACK_IMPORTED_MODULE_8__.MEASURE_VALUES),
15398
- /* harmony export */ ORIGIN_VALUES: () => (/* reexport safe */ _core_values__WEBPACK_IMPORTED_MODULE_8__.ORIGIN_VALUES),
15399
- /* harmony export */ ResourceDescriptorRole: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_7__.ResourceDescriptorRole),
15400
- /* harmony export */ SortOrder: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_7__.SortOrder),
15401
- /* 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),
15402
15807
  /* harmony export */ ValidationTemplate: () => (/* reexport safe */ _SODAS_SDK_CLASS_template_validation__WEBPACK_IMPORTED_MODULE_4__["default"]),
15403
- /* harmony export */ asID: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_7__.asID),
15404
- /* 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),
15405
15810
  /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__),
15406
- /* harmony export */ setGovernanceBearerToken: () => (/* reexport safe */ _core_init__WEBPACK_IMPORTED_MODULE_6__.setGovernanceBearerToken),
15407
- /* 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)
15408
15813
  /* harmony export */ });
15409
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");
15410
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");
15411
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");
15412
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");
15413
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");
15414
- /* harmony import */ var _core_auth__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./core/auth */ "./lib/core/auth.ts");
15415
- /* harmony import */ var _core_init__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./core/init */ "./lib/core/init.ts");
15416
- /* harmony import */ var _core_type__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./core/type */ "./lib/core/type.ts");
15417
- /* 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");
15418
15824
  // Import named functions first
15419
15825
 
15420
15826
 
@@ -15425,53 +15831,82 @@ __webpack_require__.r(__webpack_exports__);
15425
15831
 
15426
15832
 
15427
15833
 
15834
+
15428
15835
  // ✅ Named exports (For ES module compatibility)
15429
15836
 
15430
15837
  // ✅ Default export (For CommonJS compatibility)
15431
15838
  const sdk = {
15432
- ArtifactType: _core_type__WEBPACK_IMPORTED_MODULE_7__.ArtifactType,
15433
- BASIC_TYPE_VALUES: _core_values__WEBPACK_IMPORTED_MODULE_8__.BASIC_TYPE_VALUES,
15434
- CONVERSION_VALUES: _core_values__WEBPACK_IMPORTED_MODULE_8__.CONVERSION_VALUES,
15435
- 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,
15436
15848
  DataService: _SODAS_SDK_CLASS_DCAT_dataService__WEBPACK_IMPORTED_MODULE_0__["default"],
15849
+ DataTypeValidationRule: _SODAS_SDK_CLASS_template_validationType__WEBPACK_IMPORTED_MODULE_5__.DataTypeValidationRule,
15437
15850
  Dataset: _SODAS_SDK_CLASS_DCAT_dataset__WEBPACK_IMPORTED_MODULE_1__["default"],
15438
15851
  DatasetSeries: _SODAS_SDK_CLASS_DCAT_datasetSeries__WEBPACK_IMPORTED_MODULE_2__["default"],
15439
15852
  Distribution: _SODAS_SDK_CLASS_DCAT_distribution__WEBPACK_IMPORTED_MODULE_3__["default"],
15440
- MEASURE_VALUES: _core_values__WEBPACK_IMPORTED_MODULE_8__.MEASURE_VALUES,
15441
- ORIGIN_VALUES: _core_values__WEBPACK_IMPORTED_MODULE_8__.ORIGIN_VALUES,
15442
- ResourceDescriptorRole: _core_type__WEBPACK_IMPORTED_MODULE_7__.ResourceDescriptorRole,
15443
- SortOrder: _core_type__WEBPACK_IMPORTED_MODULE_7__.SortOrder,
15444
- 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,
15445
15866
  ValidationTemplate: _SODAS_SDK_CLASS_template_validation__WEBPACK_IMPORTED_MODULE_4__["default"],
15446
- asID: _core_type__WEBPACK_IMPORTED_MODULE_7__.asID,
15447
- asIRI: _core_type__WEBPACK_IMPORTED_MODULE_7__.asIRI,
15448
- setGovernanceBearerToken: _core_init__WEBPACK_IMPORTED_MODULE_6__.setGovernanceBearerToken,
15449
- 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,
15450
15871
  };
15451
15872
  // ✅ Ensures `require("sodas-sdk")` works in CommonJS
15452
15873
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (sdk);
15453
15874
 
15454
15875
  })();
15455
15876
 
15456
- var __webpack_exports__ArtifactType = __webpack_exports__.ArtifactType;
15877
+ var __webpack_exports__AllowedValuesValidationRule = __webpack_exports__.AllowedValuesValidationRule;
15457
15878
  var __webpack_exports__BASIC_TYPE_VALUES = __webpack_exports__.BASIC_TYPE_VALUES;
15879
+ var __webpack_exports__COMPARISION_OPERATOR = __webpack_exports__.COMPARISION_OPERATOR;
15458
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;
15459
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;
15460
15886
  var __webpack_exports__DataService = __webpack_exports__.DataService;
15887
+ var __webpack_exports__DataTypeValidationRule = __webpack_exports__.DataTypeValidationRule;
15461
15888
  var __webpack_exports__Dataset = __webpack_exports__.Dataset;
15462
15889
  var __webpack_exports__DatasetSeries = __webpack_exports__.DatasetSeries;
15463
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;
15464
15893
  var __webpack_exports__MEASURE_VALUES = __webpack_exports__.MEASURE_VALUES;
15465
15894
  var __webpack_exports__ORIGIN_VALUES = __webpack_exports__.ORIGIN_VALUES;
15466
- 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;
15467
15899
  var __webpack_exports__SortOrder = __webpack_exports__.SortOrder;
15468
- 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;
15469
15904
  var __webpack_exports__ValidationTemplate = __webpack_exports__.ValidationTemplate;
15470
15905
  var __webpack_exports__asID = __webpack_exports__.asID;
15471
15906
  var __webpack_exports__asIRI = __webpack_exports__.asIRI;
15472
15907
  var __webpack_exports__default = __webpack_exports__["default"];
15473
15908
  var __webpack_exports__setGovernanceBearerToken = __webpack_exports__.setGovernanceBearerToken;
15474
15909
  var __webpack_exports__setLegacyDatahubBearerToken = __webpack_exports__.setLegacyDatahubBearerToken;
15475
- 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 };
15476
15911
 
15477
15912
  //# sourceMappingURL=index.node.js.map