sodas-sdk 1.3.11 → 1.4.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.
@@ -5558,6 +5558,30 @@ class Dataset extends _dcatResource__WEBPACK_IMPORTED_MODULE_4__["default"] {
5558
5558
  throw new _core_error__WEBPACK_IMPORTED_MODULE_0__.UnexpectedResponseFormatError(response);
5559
5559
  });
5560
5560
  }
5561
+ static getRDF(id_1) {
5562
+ return __awaiter(this, arguments, void 0, function* (id, depth = 1) {
5563
+ // @ts-ignore - static helper expects SODAS_SDK_CLASS constructor type
5564
+ (0,_sodasSDKClass__WEBPACK_IMPORTED_MODULE_3__.throwErrorIfAPIURLNotSetForStatic)(this);
5565
+ const url = `${Dataset.API_URL}/rdf`;
5566
+ let response;
5567
+ try {
5568
+ response = yield axios__WEBPACK_IMPORTED_MODULE_6__["default"].get(url, {
5569
+ headers: Object.assign({ Accept: "text/turtle" }, (Dataset.BEARER_TOKEN && {
5570
+ Authorization: `Bearer ${Dataset.BEARER_TOKEN}`,
5571
+ })),
5572
+ params: { id, depth },
5573
+ responseType: "text",
5574
+ });
5575
+ }
5576
+ catch (error) {
5577
+ (0,_core_util__WEBPACK_IMPORTED_MODULE_2__.handleAxiosError)(error);
5578
+ }
5579
+ if (typeof response.data === "string") {
5580
+ return response.data;
5581
+ }
5582
+ throw new _core_error__WEBPACK_IMPORTED_MODULE_0__.UnexpectedResponseFormatError(response);
5583
+ });
5584
+ }
5561
5585
  static searchDBRecords(searchKeyword_1) {
5562
5586
  return __awaiter(this, arguments, void 0, function* (searchKeyword, pageNumber = 1, pageSize = 10, sortOrder = _core_type__WEBPACK_IMPORTED_MODULE_1__.SortOrder.DESC) {
5563
5587
  if (!searchKeyword || !searchKeyword.trim()) {
@@ -6014,6 +6038,30 @@ class DatasetSeries extends _dcatResource__WEBPACK_IMPORTED_MODULE_5__["default"
6014
6038
  DatasetSeries.API_URL = `${url}/datasetseries`;
6015
6039
  DatasetSeries.LIST_URL = `${DatasetSeries.API_URL}/list`;
6016
6040
  }
6041
+ static getRDF(id_1) {
6042
+ return __awaiter(this, arguments, void 0, function* (id, depth = 1) {
6043
+ // @ts-ignore - static helper expects SODAS_SDK_CLASS constructor type
6044
+ (0,_sodasSDKClass__WEBPACK_IMPORTED_MODULE_3__.throwErrorIfAPIURLNotSetForStatic)(this);
6045
+ const url = `${DatasetSeries.API_URL}/rdf`;
6046
+ let response;
6047
+ try {
6048
+ response = yield axios__WEBPACK_IMPORTED_MODULE_6__["default"].get(url, {
6049
+ headers: Object.assign({ Accept: "text/turtle" }, (DatasetSeries.BEARER_TOKEN && {
6050
+ Authorization: `Bearer ${DatasetSeries.BEARER_TOKEN}`,
6051
+ })),
6052
+ params: { id, depth },
6053
+ responseType: "text",
6054
+ });
6055
+ }
6056
+ catch (error) {
6057
+ (0,_core_util__WEBPACK_IMPORTED_MODULE_2__.handleAxiosError)(error);
6058
+ }
6059
+ if (typeof response.data === "string") {
6060
+ return response.data;
6061
+ }
6062
+ throw new _core_error__WEBPACK_IMPORTED_MODULE_0__.UnexpectedResponseFormatError(response);
6063
+ });
6064
+ }
6017
6065
  static listUserDBRecords() {
6018
6066
  return __awaiter(this, arguments, void 0, function* (pageNumber = 1, pageSize = 10, sortOrder = _core_type__WEBPACK_IMPORTED_MODULE_1__.SortOrder.DESC) {
6019
6067
  // @ts-ignore - static helper expects SODAS_SDK_CLASS constructor type
@@ -7840,27 +7888,346 @@ class SODAS_SDK_CLASS {
7840
7888
 
7841
7889
  /***/ }),
7842
7890
 
7843
- /***/ "./lib/SODAS_SDK_FILE/artifactFile.ts":
7844
- /*!********************************************!*\
7845
- !*** ./lib/SODAS_SDK_FILE/artifactFile.ts ***!
7846
- \********************************************/
7891
+ /***/ "./lib/SODAS_SDK_CLASS/template/validation.ts":
7892
+ /*!****************************************************!*\
7893
+ !*** ./lib/SODAS_SDK_CLASS/template/validation.ts ***!
7894
+ \****************************************************/
7847
7895
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7848
7896
 
7849
7897
  "use strict";
7850
7898
  __webpack_require__.r(__webpack_exports__);
7851
7899
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7900
+ /* harmony export */ EXPECTED_TYPE: () => (/* binding */ EXPECTED_TYPE),
7901
+ /* harmony export */ VALIDATION_TYPE: () => (/* binding */ VALIDATION_TYPE),
7852
7902
  /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
7853
7903
  /* harmony export */ });
7854
- /* harmony import */ var _sodasSDKFile__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./sodasSDKFile */ "./lib/SODAS_SDK_FILE/sodasSDKFile.ts");
7904
+ /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! axios */ "./node_modules/axios/lib/axios.js");
7905
+ /* harmony import */ var _core_error__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../core/error */ "./lib/core/error.ts");
7906
+ /* harmony import */ var _core_type__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../core/type */ "./lib/core/type.ts");
7907
+ /* harmony import */ var _core_util__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../core/util */ "./lib/core/util.ts");
7908
+ /* harmony import */ var _governanceClass__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../governanceClass */ "./lib/SODAS_SDK_CLASS/governanceClass.ts");
7909
+ /* harmony import */ var _sodasSDKClass__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../sodasSDKClass */ "./lib/SODAS_SDK_CLASS/sodasSDKClass.ts");
7910
+ var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
7911
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
7912
+ return new (P || (P = Promise))(function (resolve, reject) {
7913
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
7914
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7915
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7916
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
7917
+ });
7918
+ };
7919
+
7920
+
7921
+
7855
7922
 
7856
- class ArtifactFile extends _sodasSDKFile__WEBPACK_IMPORTED_MODULE_0__["default"] {
7923
+
7924
+
7925
+ var VALIDATION_TYPE;
7926
+ (function (VALIDATION_TYPE) {
7927
+ VALIDATION_TYPE["DATA_TYPE"] = "data_type";
7928
+ VALIDATION_TYPE["RANGE"] = "range";
7929
+ VALIDATION_TYPE["PATTERN"] = "pattern";
7930
+ VALIDATION_TYPE["UNIQUENESS"] = "uniqueness";
7931
+ VALIDATION_TYPE["COMPLETENESS"] = "completeness";
7932
+ VALIDATION_TYPE["LENGTH"] = "length";
7933
+ VALIDATION_TYPE["ALLOWED_VALUES"] = "allowed_values";
7934
+ VALIDATION_TYPE["OUTLIER"] = "outlier";
7935
+ VALIDATION_TYPE["STATISTICAL"] = "statistical";
7936
+ })(VALIDATION_TYPE || (VALIDATION_TYPE = {}));
7937
+ var EXPECTED_TYPE;
7938
+ (function (EXPECTED_TYPE) {
7939
+ EXPECTED_TYPE["NUMERIC"] = "numeric";
7940
+ EXPECTED_TYPE["STRING"] = "string";
7941
+ EXPECTED_TYPE["DATETIME"] = "datetime";
7942
+ })(EXPECTED_TYPE || (EXPECTED_TYPE = {}));
7943
+ class ValidationTemplate extends _governanceClass__WEBPACK_IMPORTED_MODULE_3__["default"] {
7857
7944
  static configureAPIURL(url) {
7858
- ArtifactFile.UPLOAD_URL = `${url}/api/v1/governance/open-reference-model/resource-descriptor/artifact/upload`;
7859
- ArtifactFile.REMOVE_URL = `${url}/api/v1/governance/open-reference-model/resource-descriptor/artifact/remove?id=`;
7860
- ArtifactFile.DOWNLOAD_URL = `${url}/artifacts`;
7945
+ const PREFIX = "api/v1/governance/template";
7946
+ ValidationTemplate.API_URL = `${url}/${PREFIX}/validation`;
7947
+ ValidationTemplate.LIST_URL = `${ValidationTemplate.API_URL}/list`;
7948
+ ValidationTemplate.GET_URL = `${ValidationTemplate.API_URL}/get`;
7949
+ ValidationTemplate.CREATE_URL = `${ValidationTemplate.API_URL}/create`;
7950
+ ValidationTemplate.UPDATE_URL = `${ValidationTemplate.API_URL}/update`;
7951
+ ValidationTemplate.DELETE_URL = `${ValidationTemplate.API_URL}/remove`;
7952
+ }
7953
+ toDTO() {
7954
+ return Object.assign(Object.assign(Object.assign(Object.assign({}, super.toDTO()), { name: this.Name }), (this.ValidationRules && { validationRules: this.ValidationRules })), (this.Description && { description: this.Description }));
7955
+ }
7956
+ populateFromFormData(data) {
7957
+ return __awaiter(this, void 0, void 0, function* () {
7958
+ throw new _core_error__WEBPACK_IMPORTED_MODULE_0__.NeedToImplementError();
7959
+ });
7960
+ }
7961
+ populateFromDTO(dto) {
7962
+ const _super = Object.create(null, {
7963
+ populateFromDTO: { get: () => super.populateFromDTO }
7964
+ });
7965
+ return __awaiter(this, void 0, void 0, function* () {
7966
+ yield _super.populateFromDTO.call(this, dto);
7967
+ const validationTemplateDTO = dto;
7968
+ this.ValidationRules = validationTemplateDTO.validationRules;
7969
+ this.Name = validationTemplateDTO.name;
7970
+ this.Description = validationTemplateDTO.description;
7971
+ });
7972
+ }
7973
+ static listDBRecords() {
7974
+ return __awaiter(this, arguments, void 0, function* (pageNumber = 1, pageSize = 10, sortOrder = _core_type__WEBPACK_IMPORTED_MODULE_1__.SortOrder.DESC, vocabularyID) {
7975
+ (0,_sodasSDKClass__WEBPACK_IMPORTED_MODULE_4__.throwErrorIfAPIURLNotSetForStatic)(ValidationTemplate);
7976
+ try {
7977
+ const response = yield axios__WEBPACK_IMPORTED_MODULE_5__["default"].get(ValidationTemplate.LIST_URL, {
7978
+ params: {
7979
+ offset: (pageNumber - 1) * pageSize,
7980
+ limit: pageSize,
7981
+ ordered: sortOrder,
7982
+ vocabularyId: vocabularyID,
7983
+ },
7984
+ // headers,
7985
+ });
7986
+ return yield ValidationTemplate.listResponseToPaginatedResponse(response);
7987
+ }
7988
+ catch (error) {
7989
+ (0,_core_util__WEBPACK_IMPORTED_MODULE_2__.handleAxiosError)(error);
7990
+ }
7991
+ });
7992
+ }
7993
+ get name() {
7994
+ return this.Name;
7995
+ }
7996
+ set name(value) {
7997
+ this.Name = value;
7998
+ }
7999
+ get description() {
8000
+ return this.Description;
8001
+ }
8002
+ set description(value) {
8003
+ this.Description = value;
8004
+ }
8005
+ get validationRules() {
8006
+ return this.ValidationRules;
8007
+ }
8008
+ set validationRules(value) {
8009
+ this.ValidationRules = value;
8010
+ }
8011
+ static parseValidationRules(rawRules) {
8012
+ return rawRules.map((rule) => {
8013
+ const baseRule = {
8014
+ column: rule.column,
8015
+ name: rule.name,
8016
+ type: rule.type,
8017
+ };
8018
+ switch (rule.type) {
8019
+ case VALIDATION_TYPE.COMPLETENESS:
8020
+ return Object.assign(Object.assign({}, baseRule), { type: VALIDATION_TYPE.COMPLETENESS, min_completeness: rule.min_completeness, weight: rule.weight });
8021
+ case VALIDATION_TYPE.DATA_TYPE:
8022
+ return Object.assign(Object.assign({}, baseRule), { type: VALIDATION_TYPE.DATA_TYPE, expected_type: rule.expected_type, weight: rule.weight });
8023
+ case VALIDATION_TYPE.PATTERN:
8024
+ return Object.assign(Object.assign({}, baseRule), { type: VALIDATION_TYPE.PATTERN, pattern: rule.pattern, weight: rule.weight });
8025
+ case VALIDATION_TYPE.UNIQUENESS:
8026
+ return Object.assign(Object.assign({}, baseRule), { type: VALIDATION_TYPE.UNIQUENESS, weight: rule.weight });
8027
+ default:
8028
+ return baseRule;
8029
+ }
8030
+ });
8031
+ }
8032
+ ensureValidationRulesInitialized() {
8033
+ if (!this.ValidationRules) {
8034
+ this.ValidationRules = [];
8035
+ }
8036
+ }
8037
+ createRule(type) {
8038
+ this.ensureValidationRulesInitialized();
8039
+ let rule;
8040
+ const baseRule = {
8041
+ column: "",
8042
+ name: "",
8043
+ type,
8044
+ };
8045
+ switch (type) {
8046
+ case VALIDATION_TYPE.COMPLETENESS:
8047
+ rule = Object.assign(Object.assign({}, baseRule), { min_completeness: 0, weight: 0 });
8048
+ break;
8049
+ case VALIDATION_TYPE.DATA_TYPE:
8050
+ rule = Object.assign(Object.assign({}, baseRule), { expected_type: EXPECTED_TYPE.STRING, weight: 0 });
8051
+ break;
8052
+ case VALIDATION_TYPE.PATTERN:
8053
+ rule = Object.assign(Object.assign({}, baseRule), { pattern: "", weight: 0 });
8054
+ break;
8055
+ case VALIDATION_TYPE.UNIQUENESS:
8056
+ rule = Object.assign(Object.assign({}, baseRule), { weight: 0 });
8057
+ break;
8058
+ default:
8059
+ rule = baseRule;
8060
+ }
8061
+ this.ValidationRules.push(rule);
8062
+ return rule;
8063
+ }
8064
+ deleteRuleAt(index) {
8065
+ if (!this.ValidationRules) {
8066
+ return;
8067
+ }
8068
+ if (index < 0 || index >= this.ValidationRules.length) {
8069
+ return;
8070
+ }
8071
+ this.ValidationRules.splice(index, 1);
8072
+ }
8073
+ deleteRuleByTypeAt(type, index) {
8074
+ if (!this.ValidationRules) {
8075
+ return;
8076
+ }
8077
+ if (index < 0) {
8078
+ return;
8079
+ }
8080
+ let current = 0;
8081
+ for (let i = 0; i < this.ValidationRules.length; i++) {
8082
+ if (this.ValidationRules[i].type === type) {
8083
+ if (current === index) {
8084
+ this.ValidationRules.splice(i, 1);
8085
+ return;
8086
+ }
8087
+ current++;
8088
+ }
8089
+ }
8090
+ }
8091
+ static groupValidationRulesByColumn(rules) {
8092
+ return rules.reduce((acc, rule) => {
8093
+ const column = rule.column;
8094
+ if (!acc[column]) {
8095
+ acc[column] = [];
8096
+ }
8097
+ acc[column].push(rule);
8098
+ return acc;
8099
+ }, {});
8100
+ }
8101
+ static groupValidationRulesByType(rules) {
8102
+ return rules.reduce((acc, rule) => {
8103
+ const type = rule.type;
8104
+ if (!acc[type]) {
8105
+ acc[type] = [];
8106
+ }
8107
+ acc[type].push(rule);
8108
+ return acc;
8109
+ }, {});
8110
+ }
8111
+ /**
8112
+ * Parse escaped JSON string containing validation_rules to ValidationRule[]
8113
+ * @param escapedString - Escaped JSON string like "validation_rules\":[{\"column\":\"class_label\",...}]"
8114
+ * @returns Parsed ValidationRule array
8115
+ */
8116
+ static parseValidationRulesFromEscapedString(escapedString) {
8117
+ let processedString = escapedString.trim();
8118
+ // Remove surrounding quotes if present (e.g., '"{"validation_rules":...}"' -> '{"validation_rules":...}')
8119
+ // Check for both single and double quotes
8120
+ if (((processedString.startsWith('"') && processedString.endsWith('"')) ||
8121
+ (processedString.startsWith("'") && processedString.endsWith("'"))) &&
8122
+ processedString.length > 1) {
8123
+ processedString = processedString.slice(1, -1).trim();
8124
+ }
8125
+ // Unescape the string (replace \" with ")
8126
+ // Handle both \" and \\\" cases to avoid double-escaping issues
8127
+ let unescapedString = processedString;
8128
+ // First handle \\\" -> \"
8129
+ unescapedString = unescapedString.replace(/\\\\"/g, '\\"');
8130
+ // Then handle \" -> "
8131
+ unescapedString = unescapedString.replace(/\\"/g, '"');
8132
+ // Try to parse as JSON
8133
+ let parsed;
8134
+ try {
8135
+ // First try parsing directly
8136
+ parsed = JSON.parse(unescapedString);
8137
+ }
8138
+ catch (error) {
8139
+ // If parsing fails, try different approaches
8140
+ const trimmed = unescapedString.trim();
8141
+ // If it starts with "validation_rules" but is not wrapped in braces
8142
+ if (trimmed.startsWith('"validation_rules"') ||
8143
+ trimmed.startsWith("validation_rules")) {
8144
+ // Try wrapping in braces
8145
+ const wrapped = trimmed.startsWith('"')
8146
+ ? `{${trimmed}}`
8147
+ : `{"${trimmed}}`;
8148
+ try {
8149
+ parsed = JSON.parse(wrapped);
8150
+ }
8151
+ catch (e) {
8152
+ // If still fails, try without the leading quote
8153
+ const withoutQuote = trimmed.replace(/^"/, "");
8154
+ parsed = JSON.parse(`{"${withoutQuote}`);
8155
+ }
8156
+ }
8157
+ else if (trimmed.startsWith("{") && trimmed.endsWith("}")) {
8158
+ // Already looks like JSON object, try parsing again after trimming
8159
+ parsed = JSON.parse(trimmed);
8160
+ }
8161
+ else {
8162
+ throw error;
8163
+ }
8164
+ }
8165
+ // Extract validation_rules array
8166
+ let validationRules;
8167
+ // If it's already an array, use it directly
8168
+ if (Array.isArray(parsed)) {
8169
+ validationRules = parsed;
8170
+ }
8171
+ else if (parsed.validation_rules) {
8172
+ // If it's an object with validation_rules property
8173
+ validationRules = parsed.validation_rules;
8174
+ }
8175
+ else if (typeof parsed === "object") {
8176
+ // If it's an object but no validation_rules property, try to use it as is
8177
+ validationRules = parsed;
8178
+ }
8179
+ else {
8180
+ throw new Error("Invalid format: validation_rules not found");
8181
+ }
8182
+ // Ensure validationRules is an array
8183
+ if (!Array.isArray(validationRules)) {
8184
+ throw new Error("Invalid format: validation_rules must be an array");
8185
+ }
8186
+ const parsedRules = ValidationTemplate.parseValidationRules(validationRules);
8187
+ parsedRules._escapedString = escapedString;
8188
+ return parsedRules;
8189
+ }
8190
+ /**
8191
+ * Convert ValidationRule[] to escaped JSON string
8192
+ * @param rules - ValidationRule array to stringify
8193
+ * @returns Escaped JSON string with format: "{\"validation_rules\":[...]}"
8194
+ */
8195
+ static stringifyValidationRulesToEscapedString(rules) {
8196
+ // Convert ValidationRule[] to plain objects for JSON serialization
8197
+ const plainRules = rules.map((rule) => {
8198
+ const plainRule = {
8199
+ column: rule.column,
8200
+ name: rule.name,
8201
+ type: rule.type,
8202
+ };
8203
+ switch (rule.type) {
8204
+ case VALIDATION_TYPE.COMPLETENESS:
8205
+ const completenessRule = rule;
8206
+ return Object.assign(Object.assign({}, plainRule), { min_completeness: completenessRule.min_completeness, weight: completenessRule.weight });
8207
+ case VALIDATION_TYPE.DATA_TYPE:
8208
+ const dataTypeRule = rule;
8209
+ return Object.assign(Object.assign({}, plainRule), { expected_type: dataTypeRule.expected_type, weight: dataTypeRule.weight });
8210
+ case VALIDATION_TYPE.PATTERN:
8211
+ const patternRule = rule;
8212
+ return Object.assign(Object.assign({}, plainRule), { pattern: patternRule.pattern, weight: patternRule.weight });
8213
+ case VALIDATION_TYPE.UNIQUENESS:
8214
+ const uniquenessRule = rule;
8215
+ return Object.assign(Object.assign({}, plainRule), { weight: uniquenessRule.weight });
8216
+ default:
8217
+ return plainRule;
8218
+ }
8219
+ });
8220
+ // Create object with validation_rules property
8221
+ if (rules._escapedString) {
8222
+ return rules._escapedString;
8223
+ }
8224
+ const obj = { validation_rules: plainRules };
8225
+ const jsonString = JSON.stringify(obj);
8226
+ const escaped = jsonString.replace(/"/g, '\\"');
8227
+ return '"' + escaped + '"';
7861
8228
  }
7862
8229
  }
7863
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ArtifactFile);
8230
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ValidationTemplate);
7864
8231
 
7865
8232
 
7866
8233
  /***/ }),
@@ -8136,7 +8503,7 @@ __webpack_require__.r(__webpack_exports__);
8136
8503
  /* 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");
8137
8504
  /* harmony import */ var _SODAS_SDK_CLASS_dictionary_term__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../SODAS_SDK_CLASS/dictionary/term */ "./lib/SODAS_SDK_CLASS/dictionary/term.ts");
8138
8505
  /* harmony import */ var _SODAS_SDK_CLASS_dictionary_vocabulary__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../SODAS_SDK_CLASS/dictionary/vocabulary */ "./lib/SODAS_SDK_CLASS/dictionary/vocabulary.ts");
8139
- /* harmony import */ var _SODAS_SDK_FILE_artifactFile__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../SODAS_SDK_FILE/artifactFile */ "./lib/SODAS_SDK_FILE/artifactFile.ts");
8506
+ /* harmony import */ var _SODAS_SDK_CLASS_template_validation__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../SODAS_SDK_CLASS/template/validation */ "./lib/SODAS_SDK_CLASS/template/validation.ts");
8140
8507
  /* harmony import */ var _SODAS_SDK_FILE_dataFile__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../SODAS_SDK_FILE/dataFile */ "./lib/SODAS_SDK_FILE/dataFile.ts");
8141
8508
  /* harmony import */ var _SODAS_SDK_FILE_thumbnailFile__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../SODAS_SDK_FILE/thumbnailFile */ "./lib/SODAS_SDK_FILE/thumbnailFile.ts");
8142
8509
  /* harmony import */ var _error__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./error */ "./lib/core/error.ts");
@@ -8226,9 +8593,9 @@ class Config {
8226
8593
  console.error("DATAHUB_API_URL not found in config");
8227
8594
  }
8228
8595
  if (this.governanceBaseUrl) {
8229
- _SODAS_SDK_FILE_artifactFile__WEBPACK_IMPORTED_MODULE_6__["default"].configureAPIURL(SLASH_DELETED_GOVERNANCE_PORTAL_API_URL);
8230
8596
  _SODAS_SDK_CLASS_dictionary_vocabulary__WEBPACK_IMPORTED_MODULE_5__["default"].configureAPIURL(SLASH_DELETED_GOVERNANCE_PORTAL_API_URL);
8231
8597
  _SODAS_SDK_CLASS_dictionary_term__WEBPACK_IMPORTED_MODULE_4__["default"].configureAPIURL(SLASH_DELETED_GOVERNANCE_PORTAL_API_URL);
8598
+ _SODAS_SDK_CLASS_template_validation__WEBPACK_IMPORTED_MODULE_6__["default"].configureAPIURL(SLASH_DELETED_GOVERNANCE_PORTAL_API_URL);
8232
8599
  }
8233
8600
  else {
8234
8601
  console.error("GOVERNANCE_API_URL not found in config");
@@ -8504,6 +8871,8 @@ __webpack_require__.r(__webpack_exports__);
8504
8871
  /* 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");
8505
8872
  /* harmony import */ var _SODAS_SDK_CLASS_dictionary_term__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../SODAS_SDK_CLASS/dictionary/term */ "./lib/SODAS_SDK_CLASS/dictionary/term.ts");
8506
8873
  /* harmony import */ var _SODAS_SDK_CLASS_dictionary_vocabulary__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../SODAS_SDK_CLASS/dictionary/vocabulary */ "./lib/SODAS_SDK_CLASS/dictionary/vocabulary.ts");
8874
+ /* harmony import */ var _SODAS_SDK_CLASS_template_validation__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../SODAS_SDK_CLASS/template/validation */ "./lib/SODAS_SDK_CLASS/template/validation.ts");
8875
+
8507
8876
 
8508
8877
 
8509
8878
 
@@ -8519,6 +8888,7 @@ __webpack_require__.r(__webpack_exports__);
8519
8888
  function setGovernanceBearerToken(token) {
8520
8889
  _SODAS_SDK_CLASS_dictionary_vocabulary__WEBPACK_IMPORTED_MODULE_5__["default"].BEARER_TOKEN = token;
8521
8890
  _SODAS_SDK_CLASS_dictionary_term__WEBPACK_IMPORTED_MODULE_4__["default"].BEARER_TOKEN = token;
8891
+ _SODAS_SDK_CLASS_template_validation__WEBPACK_IMPORTED_MODULE_6__["default"].BEARER_TOKEN = token;
8522
8892
  }
8523
8893
  function setLegacyDatahubBearerToken(token) {
8524
8894
  _SODAS_SDK_CLASS_DCAT_dataset__WEBPACK_IMPORTED_MODULE_1__["default"].BEARER_TOKEN = token;