sodas-sdk 1.3.11 → 1.4.1

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.
@@ -2503,6 +2503,30 @@ class Dataset extends _dcatResource__WEBPACK_IMPORTED_MODULE_4__["default"] {
2503
2503
  throw new _core_error__WEBPACK_IMPORTED_MODULE_0__.UnexpectedResponseFormatError(response);
2504
2504
  });
2505
2505
  }
2506
+ static getRDF(id_1) {
2507
+ return __awaiter(this, arguments, void 0, function* (id, depth = 1) {
2508
+ // @ts-ignore - static helper expects SODAS_SDK_CLASS constructor type
2509
+ (0,_sodasSDKClass__WEBPACK_IMPORTED_MODULE_3__.throwErrorIfAPIURLNotSetForStatic)(this);
2510
+ const url = `${Dataset.API_URL}/rdf`;
2511
+ let response;
2512
+ try {
2513
+ response = yield axios__WEBPACK_IMPORTED_MODULE_6__["default"].get(url, {
2514
+ headers: Object.assign({ Accept: "text/turtle" }, (Dataset.BEARER_TOKEN && {
2515
+ Authorization: `Bearer ${Dataset.BEARER_TOKEN}`,
2516
+ })),
2517
+ params: { id, depth },
2518
+ responseType: "text",
2519
+ });
2520
+ }
2521
+ catch (error) {
2522
+ (0,_core_util__WEBPACK_IMPORTED_MODULE_2__.handleAxiosError)(error);
2523
+ }
2524
+ if (typeof response.data === "string") {
2525
+ return response.data;
2526
+ }
2527
+ throw new _core_error__WEBPACK_IMPORTED_MODULE_0__.UnexpectedResponseFormatError(response);
2528
+ });
2529
+ }
2506
2530
  static searchDBRecords(searchKeyword_1) {
2507
2531
  return __awaiter(this, arguments, void 0, function* (searchKeyword, pageNumber = 1, pageSize = 10, sortOrder = _core_type__WEBPACK_IMPORTED_MODULE_1__.SortOrder.DESC) {
2508
2532
  if (!searchKeyword || !searchKeyword.trim()) {
@@ -2958,6 +2982,30 @@ class DatasetSeries extends _dcatResource__WEBPACK_IMPORTED_MODULE_5__["default"
2958
2982
  DatasetSeries.API_URL = `${url}/datasetseries`;
2959
2983
  DatasetSeries.LIST_URL = `${DatasetSeries.API_URL}/list`;
2960
2984
  }
2985
+ static getRDF(id_1) {
2986
+ return __awaiter(this, arguments, void 0, function* (id, depth = 1) {
2987
+ // @ts-ignore - static helper expects SODAS_SDK_CLASS constructor type
2988
+ (0,_sodasSDKClass__WEBPACK_IMPORTED_MODULE_3__.throwErrorIfAPIURLNotSetForStatic)(this);
2989
+ const url = `${DatasetSeries.API_URL}/rdf`;
2990
+ let response;
2991
+ try {
2992
+ response = yield axios__WEBPACK_IMPORTED_MODULE_6__["default"].get(url, {
2993
+ headers: Object.assign({ Accept: "text/turtle" }, (DatasetSeries.BEARER_TOKEN && {
2994
+ Authorization: `Bearer ${DatasetSeries.BEARER_TOKEN}`,
2995
+ })),
2996
+ params: { id, depth },
2997
+ responseType: "text",
2998
+ });
2999
+ }
3000
+ catch (error) {
3001
+ (0,_core_util__WEBPACK_IMPORTED_MODULE_2__.handleAxiosError)(error);
3002
+ }
3003
+ if (typeof response.data === "string") {
3004
+ return response.data;
3005
+ }
3006
+ throw new _core_error__WEBPACK_IMPORTED_MODULE_0__.UnexpectedResponseFormatError(response);
3007
+ });
3008
+ }
2961
3009
  static listUserDBRecords() {
2962
3010
  return __awaiter(this, arguments, void 0, function* (pageNumber = 1, pageSize = 10, sortOrder = _core_type__WEBPACK_IMPORTED_MODULE_1__.SortOrder.DESC) {
2963
3011
  // @ts-ignore - static helper expects SODAS_SDK_CLASS constructor type
@@ -4776,26 +4824,345 @@ class SODAS_SDK_CLASS {
4776
4824
 
4777
4825
  /***/ }),
4778
4826
 
4779
- /***/ "./lib/SODAS_SDK_FILE/artifactFile.ts":
4780
- /*!********************************************!*\
4781
- !*** ./lib/SODAS_SDK_FILE/artifactFile.ts ***!
4782
- \********************************************/
4827
+ /***/ "./lib/SODAS_SDK_CLASS/template/validation.ts":
4828
+ /*!****************************************************!*\
4829
+ !*** ./lib/SODAS_SDK_CLASS/template/validation.ts ***!
4830
+ \****************************************************/
4783
4831
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
4784
4832
 
4785
4833
  __webpack_require__.r(__webpack_exports__);
4786
4834
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
4835
+ /* harmony export */ EXPECTED_TYPE: () => (/* binding */ EXPECTED_TYPE),
4836
+ /* harmony export */ VALIDATION_TYPE: () => (/* binding */ VALIDATION_TYPE),
4787
4837
  /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
4788
4838
  /* harmony export */ });
4789
- /* harmony import */ var _sodasSDKFile__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./sodasSDKFile */ "./lib/SODAS_SDK_FILE/sodasSDKFile.ts");
4839
+ /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! axios */ "./node_modules/axios/lib/axios.js");
4840
+ /* harmony import */ var _core_error__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../core/error */ "./lib/core/error.ts");
4841
+ /* harmony import */ var _core_type__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../core/type */ "./lib/core/type.ts");
4842
+ /* harmony import */ var _core_util__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../core/util */ "./lib/core/util.ts");
4843
+ /* harmony import */ var _governanceClass__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../governanceClass */ "./lib/SODAS_SDK_CLASS/governanceClass.ts");
4844
+ /* harmony import */ var _sodasSDKClass__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../sodasSDKClass */ "./lib/SODAS_SDK_CLASS/sodasSDKClass.ts");
4845
+ var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
4846
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4847
+ return new (P || (P = Promise))(function (resolve, reject) {
4848
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
4849
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
4850
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
4851
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
4852
+ });
4853
+ };
4854
+
4855
+
4856
+
4790
4857
 
4791
- class ArtifactFile extends _sodasSDKFile__WEBPACK_IMPORTED_MODULE_0__["default"] {
4858
+
4859
+
4860
+ var VALIDATION_TYPE;
4861
+ (function (VALIDATION_TYPE) {
4862
+ VALIDATION_TYPE["DATA_TYPE"] = "data_type";
4863
+ VALIDATION_TYPE["RANGE"] = "range";
4864
+ VALIDATION_TYPE["PATTERN"] = "pattern";
4865
+ VALIDATION_TYPE["UNIQUENESS"] = "uniqueness";
4866
+ VALIDATION_TYPE["COMPLETENESS"] = "completeness";
4867
+ VALIDATION_TYPE["LENGTH"] = "length";
4868
+ VALIDATION_TYPE["ALLOWED_VALUES"] = "allowed_values";
4869
+ VALIDATION_TYPE["OUTLIER"] = "outlier";
4870
+ VALIDATION_TYPE["STATISTICAL"] = "statistical";
4871
+ })(VALIDATION_TYPE || (VALIDATION_TYPE = {}));
4872
+ var EXPECTED_TYPE;
4873
+ (function (EXPECTED_TYPE) {
4874
+ EXPECTED_TYPE["NUMERIC"] = "numeric";
4875
+ EXPECTED_TYPE["STRING"] = "string";
4876
+ EXPECTED_TYPE["DATETIME"] = "datetime";
4877
+ })(EXPECTED_TYPE || (EXPECTED_TYPE = {}));
4878
+ class ValidationTemplate extends _governanceClass__WEBPACK_IMPORTED_MODULE_3__["default"] {
4792
4879
  static configureAPIURL(url) {
4793
- ArtifactFile.UPLOAD_URL = `${url}/api/v1/governance/open-reference-model/resource-descriptor/artifact/upload`;
4794
- ArtifactFile.REMOVE_URL = `${url}/api/v1/governance/open-reference-model/resource-descriptor/artifact/remove?id=`;
4795
- ArtifactFile.DOWNLOAD_URL = `${url}/artifacts`;
4880
+ const PREFIX = "api/v1/governance/template";
4881
+ ValidationTemplate.API_URL = `${url}/${PREFIX}/validation`;
4882
+ ValidationTemplate.LIST_URL = `${ValidationTemplate.API_URL}/list`;
4883
+ ValidationTemplate.GET_URL = `${ValidationTemplate.API_URL}/get`;
4884
+ ValidationTemplate.CREATE_URL = `${ValidationTemplate.API_URL}/create`;
4885
+ ValidationTemplate.UPDATE_URL = `${ValidationTemplate.API_URL}/update`;
4886
+ ValidationTemplate.DELETE_URL = `${ValidationTemplate.API_URL}/remove`;
4887
+ }
4888
+ toDTO() {
4889
+ return Object.assign(Object.assign(Object.assign(Object.assign({}, super.toDTO()), { name: this.Name }), (this.ValidationRules && { validationRules: this.ValidationRules })), (this.Description && { description: this.Description }));
4890
+ }
4891
+ populateFromFormData(data) {
4892
+ return __awaiter(this, void 0, void 0, function* () {
4893
+ throw new _core_error__WEBPACK_IMPORTED_MODULE_0__.NeedToImplementError();
4894
+ });
4895
+ }
4896
+ populateFromDTO(dto) {
4897
+ const _super = Object.create(null, {
4898
+ populateFromDTO: { get: () => super.populateFromDTO }
4899
+ });
4900
+ return __awaiter(this, void 0, void 0, function* () {
4901
+ yield _super.populateFromDTO.call(this, dto);
4902
+ const validationTemplateDTO = dto;
4903
+ this.ValidationRules = validationTemplateDTO.validationRules;
4904
+ this.Name = validationTemplateDTO.name;
4905
+ this.Description = validationTemplateDTO.description;
4906
+ });
4907
+ }
4908
+ static listDBRecords() {
4909
+ return __awaiter(this, arguments, void 0, function* (pageNumber = 1, pageSize = 10, sortOrder = _core_type__WEBPACK_IMPORTED_MODULE_1__.SortOrder.DESC, vocabularyID) {
4910
+ (0,_sodasSDKClass__WEBPACK_IMPORTED_MODULE_4__.throwErrorIfAPIURLNotSetForStatic)(ValidationTemplate);
4911
+ try {
4912
+ const response = yield axios__WEBPACK_IMPORTED_MODULE_5__["default"].get(ValidationTemplate.LIST_URL, {
4913
+ params: {
4914
+ offset: (pageNumber - 1) * pageSize,
4915
+ limit: pageSize,
4916
+ ordered: sortOrder,
4917
+ vocabularyId: vocabularyID,
4918
+ },
4919
+ // headers,
4920
+ });
4921
+ return yield ValidationTemplate.listResponseToPaginatedResponse(response);
4922
+ }
4923
+ catch (error) {
4924
+ (0,_core_util__WEBPACK_IMPORTED_MODULE_2__.handleAxiosError)(error);
4925
+ }
4926
+ });
4927
+ }
4928
+ get name() {
4929
+ return this.Name;
4930
+ }
4931
+ set name(value) {
4932
+ this.Name = value;
4933
+ }
4934
+ get description() {
4935
+ return this.Description;
4936
+ }
4937
+ set description(value) {
4938
+ this.Description = value;
4939
+ }
4940
+ get validationRules() {
4941
+ return this.ValidationRules;
4942
+ }
4943
+ set validationRules(value) {
4944
+ this.ValidationRules = value;
4945
+ }
4946
+ static parseValidationRules(rawRules) {
4947
+ return rawRules.map((rule) => {
4948
+ const baseRule = {
4949
+ column: rule.column,
4950
+ name: rule.name,
4951
+ type: rule.type,
4952
+ };
4953
+ switch (rule.type) {
4954
+ case VALIDATION_TYPE.COMPLETENESS:
4955
+ return Object.assign(Object.assign({}, baseRule), { type: VALIDATION_TYPE.COMPLETENESS, min_completeness: rule.min_completeness, weight: rule.weight });
4956
+ case VALIDATION_TYPE.DATA_TYPE:
4957
+ return Object.assign(Object.assign({}, baseRule), { type: VALIDATION_TYPE.DATA_TYPE, expected_type: rule.expected_type, weight: rule.weight });
4958
+ case VALIDATION_TYPE.PATTERN:
4959
+ return Object.assign(Object.assign({}, baseRule), { type: VALIDATION_TYPE.PATTERN, pattern: rule.pattern, weight: rule.weight });
4960
+ case VALIDATION_TYPE.UNIQUENESS:
4961
+ return Object.assign(Object.assign({}, baseRule), { type: VALIDATION_TYPE.UNIQUENESS, weight: rule.weight });
4962
+ default:
4963
+ return baseRule;
4964
+ }
4965
+ });
4966
+ }
4967
+ ensureValidationRulesInitialized() {
4968
+ if (!this.ValidationRules) {
4969
+ this.ValidationRules = [];
4970
+ }
4971
+ }
4972
+ createRule(type) {
4973
+ this.ensureValidationRulesInitialized();
4974
+ let rule;
4975
+ const baseRule = {
4976
+ column: "",
4977
+ name: "",
4978
+ type,
4979
+ };
4980
+ switch (type) {
4981
+ case VALIDATION_TYPE.COMPLETENESS:
4982
+ rule = Object.assign(Object.assign({}, baseRule), { min_completeness: 0, weight: 0 });
4983
+ break;
4984
+ case VALIDATION_TYPE.DATA_TYPE:
4985
+ rule = Object.assign(Object.assign({}, baseRule), { expected_type: EXPECTED_TYPE.STRING, weight: 0 });
4986
+ break;
4987
+ case VALIDATION_TYPE.PATTERN:
4988
+ rule = Object.assign(Object.assign({}, baseRule), { pattern: "", weight: 0 });
4989
+ break;
4990
+ case VALIDATION_TYPE.UNIQUENESS:
4991
+ rule = Object.assign(Object.assign({}, baseRule), { weight: 0 });
4992
+ break;
4993
+ default:
4994
+ rule = baseRule;
4995
+ }
4996
+ this.ValidationRules.push(rule);
4997
+ return rule;
4998
+ }
4999
+ deleteRuleAt(index) {
5000
+ if (!this.ValidationRules) {
5001
+ return;
5002
+ }
5003
+ if (index < 0 || index >= this.ValidationRules.length) {
5004
+ return;
5005
+ }
5006
+ this.ValidationRules.splice(index, 1);
5007
+ }
5008
+ deleteRuleByTypeAt(type, index) {
5009
+ if (!this.ValidationRules) {
5010
+ return;
5011
+ }
5012
+ if (index < 0) {
5013
+ return;
5014
+ }
5015
+ let current = 0;
5016
+ for (let i = 0; i < this.ValidationRules.length; i++) {
5017
+ if (this.ValidationRules[i].type === type) {
5018
+ if (current === index) {
5019
+ this.ValidationRules.splice(i, 1);
5020
+ return;
5021
+ }
5022
+ current++;
5023
+ }
5024
+ }
5025
+ }
5026
+ static groupValidationRulesByColumn(rules) {
5027
+ return rules.reduce((acc, rule) => {
5028
+ const column = rule.column;
5029
+ if (!acc[column]) {
5030
+ acc[column] = [];
5031
+ }
5032
+ acc[column].push(rule);
5033
+ return acc;
5034
+ }, {});
5035
+ }
5036
+ static groupValidationRulesByType(rules) {
5037
+ return rules.reduce((acc, rule) => {
5038
+ const type = rule.type;
5039
+ if (!acc[type]) {
5040
+ acc[type] = [];
5041
+ }
5042
+ acc[type].push(rule);
5043
+ return acc;
5044
+ }, {});
5045
+ }
5046
+ /**
5047
+ * Parse escaped JSON string containing validation_rules to ValidationRule[]
5048
+ * @param escapedString - Escaped JSON string like "validation_rules\":[{\"column\":\"class_label\",...}]"
5049
+ * @returns Parsed ValidationRule array
5050
+ */
5051
+ static parseValidationRulesFromEscapedString(escapedString) {
5052
+ let processedString = escapedString.trim();
5053
+ // Remove surrounding quotes if present (e.g., '"{"validation_rules":...}"' -> '{"validation_rules":...}')
5054
+ // Check for both single and double quotes
5055
+ if (((processedString.startsWith('"') && processedString.endsWith('"')) ||
5056
+ (processedString.startsWith("'") && processedString.endsWith("'"))) &&
5057
+ processedString.length > 1) {
5058
+ processedString = processedString.slice(1, -1).trim();
5059
+ }
5060
+ // Unescape the string (replace \" with ")
5061
+ // Handle both \" and \\\" cases to avoid double-escaping issues
5062
+ let unescapedString = processedString;
5063
+ // First handle \\\" -> \"
5064
+ unescapedString = unescapedString.replace(/\\\\"/g, '\\"');
5065
+ // Then handle \" -> "
5066
+ unescapedString = unescapedString.replace(/\\"/g, '"');
5067
+ // Try to parse as JSON
5068
+ let parsed;
5069
+ try {
5070
+ // First try parsing directly
5071
+ parsed = JSON.parse(unescapedString);
5072
+ }
5073
+ catch (error) {
5074
+ // If parsing fails, try different approaches
5075
+ const trimmed = unescapedString.trim();
5076
+ // If it starts with "validation_rules" but is not wrapped in braces
5077
+ if (trimmed.startsWith('"validation_rules"') ||
5078
+ trimmed.startsWith("validation_rules")) {
5079
+ // Try wrapping in braces
5080
+ const wrapped = trimmed.startsWith('"')
5081
+ ? `{${trimmed}}`
5082
+ : `{"${trimmed}}`;
5083
+ try {
5084
+ parsed = JSON.parse(wrapped);
5085
+ }
5086
+ catch (e) {
5087
+ // If still fails, try without the leading quote
5088
+ const withoutQuote = trimmed.replace(/^"/, "");
5089
+ parsed = JSON.parse(`{"${withoutQuote}`);
5090
+ }
5091
+ }
5092
+ else if (trimmed.startsWith("{") && trimmed.endsWith("}")) {
5093
+ // Already looks like JSON object, try parsing again after trimming
5094
+ parsed = JSON.parse(trimmed);
5095
+ }
5096
+ else {
5097
+ throw error;
5098
+ }
5099
+ }
5100
+ // Extract validation_rules array
5101
+ let validationRules;
5102
+ // If it's already an array, use it directly
5103
+ if (Array.isArray(parsed)) {
5104
+ validationRules = parsed;
5105
+ }
5106
+ else if (parsed.validation_rules) {
5107
+ // If it's an object with validation_rules property
5108
+ validationRules = parsed.validation_rules;
5109
+ }
5110
+ else if (typeof parsed === "object") {
5111
+ // If it's an object but no validation_rules property, try to use it as is
5112
+ validationRules = parsed;
5113
+ }
5114
+ else {
5115
+ throw new Error("Invalid format: validation_rules not found");
5116
+ }
5117
+ // Ensure validationRules is an array
5118
+ if (!Array.isArray(validationRules)) {
5119
+ throw new Error("Invalid format: validation_rules must be an array");
5120
+ }
5121
+ const parsedRules = ValidationTemplate.parseValidationRules(validationRules);
5122
+ parsedRules._escapedString = escapedString;
5123
+ return parsedRules;
5124
+ }
5125
+ /**
5126
+ * Convert ValidationRule[] to escaped JSON string
5127
+ * @param rules - ValidationRule array to stringify
5128
+ * @returns Escaped JSON string with format: "{\"validation_rules\":[...]}"
5129
+ */
5130
+ static stringifyValidationRulesToEscapedString(rules) {
5131
+ // Convert ValidationRule[] to plain objects for JSON serialization
5132
+ const plainRules = rules.map((rule) => {
5133
+ const plainRule = {
5134
+ column: rule.column,
5135
+ name: rule.name,
5136
+ type: rule.type,
5137
+ };
5138
+ switch (rule.type) {
5139
+ case VALIDATION_TYPE.COMPLETENESS:
5140
+ const completenessRule = rule;
5141
+ return Object.assign(Object.assign({}, plainRule), { min_completeness: completenessRule.min_completeness, weight: completenessRule.weight });
5142
+ case VALIDATION_TYPE.DATA_TYPE:
5143
+ const dataTypeRule = rule;
5144
+ return Object.assign(Object.assign({}, plainRule), { expected_type: dataTypeRule.expected_type, weight: dataTypeRule.weight });
5145
+ case VALIDATION_TYPE.PATTERN:
5146
+ const patternRule = rule;
5147
+ return Object.assign(Object.assign({}, plainRule), { pattern: patternRule.pattern, weight: patternRule.weight });
5148
+ case VALIDATION_TYPE.UNIQUENESS:
5149
+ const uniquenessRule = rule;
5150
+ return Object.assign(Object.assign({}, plainRule), { weight: uniquenessRule.weight });
5151
+ default:
5152
+ return plainRule;
5153
+ }
5154
+ });
5155
+ // Create object with validation_rules property
5156
+ if (rules._escapedString) {
5157
+ return rules._escapedString;
5158
+ }
5159
+ const obj = { validation_rules: plainRules };
5160
+ const jsonString = JSON.stringify(obj);
5161
+ const escaped = jsonString.replace(/"/g, '\\"');
5162
+ return '"' + escaped + '"';
4796
5163
  }
4797
5164
  }
4798
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ArtifactFile);
5165
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ValidationTemplate);
4799
5166
 
4800
5167
 
4801
5168
  /***/ }),
@@ -5067,7 +5434,7 @@ __webpack_require__.r(__webpack_exports__);
5067
5434
  /* 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");
5068
5435
  /* 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");
5069
5436
  /* 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");
5070
- /* harmony import */ var _SODAS_SDK_FILE_artifactFile__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../SODAS_SDK_FILE/artifactFile */ "./lib/SODAS_SDK_FILE/artifactFile.ts");
5437
+ /* 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");
5071
5438
  /* harmony import */ var _SODAS_SDK_FILE_dataFile__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../SODAS_SDK_FILE/dataFile */ "./lib/SODAS_SDK_FILE/dataFile.ts");
5072
5439
  /* harmony import */ var _SODAS_SDK_FILE_thumbnailFile__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../SODAS_SDK_FILE/thumbnailFile */ "./lib/SODAS_SDK_FILE/thumbnailFile.ts");
5073
5440
  /* harmony import */ var _error__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./error */ "./lib/core/error.ts");
@@ -5157,9 +5524,9 @@ class Config {
5157
5524
  console.error("DATAHUB_API_URL not found in config");
5158
5525
  }
5159
5526
  if (this.governanceBaseUrl) {
5160
- _SODAS_SDK_FILE_artifactFile__WEBPACK_IMPORTED_MODULE_6__["default"].configureAPIURL(SLASH_DELETED_GOVERNANCE_PORTAL_API_URL);
5161
5527
  _SODAS_SDK_CLASS_dictionary_vocabulary__WEBPACK_IMPORTED_MODULE_5__["default"].configureAPIURL(SLASH_DELETED_GOVERNANCE_PORTAL_API_URL);
5162
5528
  _SODAS_SDK_CLASS_dictionary_term__WEBPACK_IMPORTED_MODULE_4__["default"].configureAPIURL(SLASH_DELETED_GOVERNANCE_PORTAL_API_URL);
5529
+ _SODAS_SDK_CLASS_template_validation__WEBPACK_IMPORTED_MODULE_6__["default"].configureAPIURL(SLASH_DELETED_GOVERNANCE_PORTAL_API_URL);
5163
5530
  }
5164
5531
  else {
5165
5532
  console.error("GOVERNANCE_API_URL not found in config");
@@ -5433,6 +5800,8 @@ __webpack_require__.r(__webpack_exports__);
5433
5800
  /* 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");
5434
5801
  /* 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");
5435
5802
  /* 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");
5803
+ /* 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");
5804
+
5436
5805
 
5437
5806
 
5438
5807
 
@@ -5448,6 +5817,7 @@ __webpack_require__.r(__webpack_exports__);
5448
5817
  function setGovernanceBearerToken(token) {
5449
5818
  _SODAS_SDK_CLASS_dictionary_vocabulary__WEBPACK_IMPORTED_MODULE_5__["default"].BEARER_TOKEN = token;
5450
5819
  _SODAS_SDK_CLASS_dictionary_term__WEBPACK_IMPORTED_MODULE_4__["default"].BEARER_TOKEN = token;
5820
+ _SODAS_SDK_CLASS_template_validation__WEBPACK_IMPORTED_MODULE_6__["default"].BEARER_TOKEN = token;
5451
5821
  }
5452
5822
  function setLegacyDatahubBearerToken(token) {
5453
5823
  _SODAS_SDK_CLASS_DCAT_dataset__WEBPACK_IMPORTED_MODULE_1__["default"].BEARER_TOKEN = token;
@@ -5468,7 +5838,6 @@ function setLegacyDatahubBearerToken(token) {
5468
5838
  __webpack_require__.r(__webpack_exports__);
5469
5839
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
5470
5840
  /* harmony export */ ArtifactType: () => (/* binding */ ArtifactType),
5471
- /* harmony export */ ProfileType: () => (/* binding */ ProfileType),
5472
5841
  /* harmony export */ ResourceDescriptorRole: () => (/* binding */ ResourceDescriptorRole),
5473
5842
  /* harmony export */ SortOrder: () => (/* binding */ SortOrder),
5474
5843
  /* harmony export */ TemplateDetailFunctionality: () => (/* binding */ TemplateDetailFunctionality),
@@ -5538,11 +5907,6 @@ var ResourceDescriptorRole;
5538
5907
  ResourceDescriptorRole["SPECIFICATION"] = "specification";
5539
5908
  ResourceDescriptorRole["GUIDANCE"] = "guidance";
5540
5909
  })(ResourceDescriptorRole || (ResourceDescriptorRole = {}));
5541
- var ProfileType;
5542
- (function (ProfileType) {
5543
- ProfileType["DCAT"] = "dcat";
5544
- ProfileType["DATA"] = "data";
5545
- })(ProfileType || (ProfileType = {}));
5546
5910
  var ArtifactType;
5547
5911
  (function (ArtifactType) {
5548
5912
  ArtifactType["TEMPLATE"] = "template";
@@ -10642,34 +11006,35 @@ var __webpack_exports__ = {};
10642
11006
  \**********************/
10643
11007
  __webpack_require__.r(__webpack_exports__);
10644
11008
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
10645
- /* harmony export */ ArtifactType: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_6__.ArtifactType),
10646
- /* harmony export */ BASIC_TYPE_VALUES: () => (/* reexport safe */ _core_values__WEBPACK_IMPORTED_MODULE_7__.BASIC_TYPE_VALUES),
10647
- /* harmony export */ CONVERSION_VALUES: () => (/* reexport safe */ _core_values__WEBPACK_IMPORTED_MODULE_7__.CONVERSION_VALUES),
10648
- /* harmony export */ Config: () => (/* reexport safe */ _core_auth__WEBPACK_IMPORTED_MODULE_4__["default"]),
11009
+ /* harmony export */ ArtifactType: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_7__.ArtifactType),
11010
+ /* harmony export */ BASIC_TYPE_VALUES: () => (/* reexport safe */ _core_values__WEBPACK_IMPORTED_MODULE_8__.BASIC_TYPE_VALUES),
11011
+ /* harmony export */ CONVERSION_VALUES: () => (/* reexport safe */ _core_values__WEBPACK_IMPORTED_MODULE_8__.CONVERSION_VALUES),
11012
+ /* harmony export */ Config: () => (/* reexport safe */ _core_auth__WEBPACK_IMPORTED_MODULE_5__["default"]),
10649
11013
  /* harmony export */ DataService: () => (/* reexport safe */ _SODAS_SDK_CLASS_DCAT_dataService__WEBPACK_IMPORTED_MODULE_0__["default"]),
10650
11014
  /* harmony export */ Dataset: () => (/* reexport safe */ _SODAS_SDK_CLASS_DCAT_dataset__WEBPACK_IMPORTED_MODULE_1__["default"]),
10651
11015
  /* harmony export */ DatasetSeries: () => (/* reexport safe */ _SODAS_SDK_CLASS_DCAT_datasetSeries__WEBPACK_IMPORTED_MODULE_2__["default"]),
10652
11016
  /* harmony export */ Distribution: () => (/* reexport safe */ _SODAS_SDK_CLASS_DCAT_distribution__WEBPACK_IMPORTED_MODULE_3__["default"]),
10653
- /* harmony export */ MEASURE_VALUES: () => (/* reexport safe */ _core_values__WEBPACK_IMPORTED_MODULE_7__.MEASURE_VALUES),
10654
- /* harmony export */ ORIGIN_VALUES: () => (/* reexport safe */ _core_values__WEBPACK_IMPORTED_MODULE_7__.ORIGIN_VALUES),
10655
- /* harmony export */ ProfileType: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_6__.ProfileType),
10656
- /* harmony export */ ResourceDescriptorRole: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_6__.ResourceDescriptorRole),
10657
- /* harmony export */ SortOrder: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_6__.SortOrder),
10658
- /* harmony export */ TemplateDetailFunctionality: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_6__.TemplateDetailFunctionality),
10659
- /* harmony export */ asID: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_6__.asID),
10660
- /* harmony export */ asIRI: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_6__.asIRI),
11017
+ /* harmony export */ MEASURE_VALUES: () => (/* reexport safe */ _core_values__WEBPACK_IMPORTED_MODULE_8__.MEASURE_VALUES),
11018
+ /* harmony export */ ORIGIN_VALUES: () => (/* reexport safe */ _core_values__WEBPACK_IMPORTED_MODULE_8__.ORIGIN_VALUES),
11019
+ /* harmony export */ ResourceDescriptorRole: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_7__.ResourceDescriptorRole),
11020
+ /* harmony export */ SortOrder: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_7__.SortOrder),
11021
+ /* harmony export */ TemplateDetailFunctionality: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_7__.TemplateDetailFunctionality),
11022
+ /* harmony export */ ValidationTemplate: () => (/* reexport safe */ _SODAS_SDK_CLASS_template_validation__WEBPACK_IMPORTED_MODULE_4__["default"]),
11023
+ /* harmony export */ asID: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_7__.asID),
11024
+ /* harmony export */ asIRI: () => (/* reexport safe */ _core_type__WEBPACK_IMPORTED_MODULE_7__.asIRI),
10661
11025
  /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__),
10662
- /* harmony export */ setGovernanceBearerToken: () => (/* reexport safe */ _core_init__WEBPACK_IMPORTED_MODULE_5__.setGovernanceBearerToken),
10663
- /* harmony export */ setLegacyDatahubBearerToken: () => (/* reexport safe */ _core_init__WEBPACK_IMPORTED_MODULE_5__.setLegacyDatahubBearerToken)
11026
+ /* harmony export */ setGovernanceBearerToken: () => (/* reexport safe */ _core_init__WEBPACK_IMPORTED_MODULE_6__.setGovernanceBearerToken),
11027
+ /* harmony export */ setLegacyDatahubBearerToken: () => (/* reexport safe */ _core_init__WEBPACK_IMPORTED_MODULE_6__.setLegacyDatahubBearerToken)
10664
11028
  /* harmony export */ });
10665
11029
  /* 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");
10666
11030
  /* 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");
10667
11031
  /* 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");
10668
11032
  /* 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");
10669
- /* harmony import */ var _core_auth__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./core/auth */ "./lib/core/auth.ts");
10670
- /* harmony import */ var _core_init__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./core/init */ "./lib/core/init.ts");
10671
- /* harmony import */ var _core_type__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./core/type */ "./lib/core/type.ts");
10672
- /* harmony import */ var _core_values__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./core/values */ "./lib/core/values.ts");
11033
+ /* 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");
11034
+ /* harmony import */ var _core_auth__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./core/auth */ "./lib/core/auth.ts");
11035
+ /* harmony import */ var _core_init__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./core/init */ "./lib/core/init.ts");
11036
+ /* harmony import */ var _core_type__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./core/type */ "./lib/core/type.ts");
11037
+ /* harmony import */ var _core_values__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./core/values */ "./lib/core/values.ts");
10673
11038
  // Import named functions first
10674
11039
 
10675
11040
 
@@ -10679,26 +11044,29 @@ __webpack_require__.r(__webpack_exports__);
10679
11044
 
10680
11045
 
10681
11046
 
11047
+
10682
11048
  // ✅ Named exports (For ES module compatibility)
10683
11049
 
10684
11050
  // ✅ Default export (For CommonJS compatibility)
10685
11051
  const sdk = {
10686
- ArtifactType: _core_type__WEBPACK_IMPORTED_MODULE_6__.ArtifactType,
10687
- BASIC_TYPE_VALUES: _core_values__WEBPACK_IMPORTED_MODULE_7__.BASIC_TYPE_VALUES,
10688
- CONVERSION_VALUES: _core_values__WEBPACK_IMPORTED_MODULE_7__.CONVERSION_VALUES,
11052
+ ArtifactType: _core_type__WEBPACK_IMPORTED_MODULE_7__.ArtifactType,
11053
+ BASIC_TYPE_VALUES: _core_values__WEBPACK_IMPORTED_MODULE_8__.BASIC_TYPE_VALUES,
11054
+ CONVERSION_VALUES: _core_values__WEBPACK_IMPORTED_MODULE_8__.CONVERSION_VALUES,
11055
+ Config: _core_auth__WEBPACK_IMPORTED_MODULE_5__["default"],
10689
11056
  DataService: _SODAS_SDK_CLASS_DCAT_dataService__WEBPACK_IMPORTED_MODULE_0__["default"],
10690
11057
  Dataset: _SODAS_SDK_CLASS_DCAT_dataset__WEBPACK_IMPORTED_MODULE_1__["default"],
10691
11058
  DatasetSeries: _SODAS_SDK_CLASS_DCAT_datasetSeries__WEBPACK_IMPORTED_MODULE_2__["default"],
10692
11059
  Distribution: _SODAS_SDK_CLASS_DCAT_distribution__WEBPACK_IMPORTED_MODULE_3__["default"],
10693
- MEASURE_VALUES: _core_values__WEBPACK_IMPORTED_MODULE_7__.MEASURE_VALUES,
10694
- ORIGIN_VALUES: _core_values__WEBPACK_IMPORTED_MODULE_7__.ORIGIN_VALUES,
10695
- ProfileType: _core_type__WEBPACK_IMPORTED_MODULE_6__.ProfileType,
10696
- ResourceDescriptorRole: _core_type__WEBPACK_IMPORTED_MODULE_6__.ResourceDescriptorRole,
10697
- SortOrder: _core_type__WEBPACK_IMPORTED_MODULE_6__.SortOrder,
10698
- TemplateDetailFunctionality: _core_type__WEBPACK_IMPORTED_MODULE_6__.TemplateDetailFunctionality,
10699
- Config: _core_auth__WEBPACK_IMPORTED_MODULE_4__["default"],
10700
- setGovernanceBearerToken: _core_init__WEBPACK_IMPORTED_MODULE_5__.setGovernanceBearerToken,
10701
- setLegacyDatahubBearerToken: _core_init__WEBPACK_IMPORTED_MODULE_5__.setLegacyDatahubBearerToken,
11060
+ MEASURE_VALUES: _core_values__WEBPACK_IMPORTED_MODULE_8__.MEASURE_VALUES,
11061
+ ORIGIN_VALUES: _core_values__WEBPACK_IMPORTED_MODULE_8__.ORIGIN_VALUES,
11062
+ ResourceDescriptorRole: _core_type__WEBPACK_IMPORTED_MODULE_7__.ResourceDescriptorRole,
11063
+ SortOrder: _core_type__WEBPACK_IMPORTED_MODULE_7__.SortOrder,
11064
+ TemplateDetailFunctionality: _core_type__WEBPACK_IMPORTED_MODULE_7__.TemplateDetailFunctionality,
11065
+ ValidationTemplate: _SODAS_SDK_CLASS_template_validation__WEBPACK_IMPORTED_MODULE_4__["default"],
11066
+ asID: _core_type__WEBPACK_IMPORTED_MODULE_7__.asID,
11067
+ asIRI: _core_type__WEBPACK_IMPORTED_MODULE_7__.asIRI,
11068
+ setGovernanceBearerToken: _core_init__WEBPACK_IMPORTED_MODULE_6__.setGovernanceBearerToken,
11069
+ setLegacyDatahubBearerToken: _core_init__WEBPACK_IMPORTED_MODULE_6__.setLegacyDatahubBearerToken,
10702
11070
  };
10703
11071
  // ✅ Ensures `require("sodas-sdk")` works in CommonJS
10704
11072
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (sdk);
@@ -10715,15 +11083,15 @@ var __webpack_exports__DatasetSeries = __webpack_exports__.DatasetSeries;
10715
11083
  var __webpack_exports__Distribution = __webpack_exports__.Distribution;
10716
11084
  var __webpack_exports__MEASURE_VALUES = __webpack_exports__.MEASURE_VALUES;
10717
11085
  var __webpack_exports__ORIGIN_VALUES = __webpack_exports__.ORIGIN_VALUES;
10718
- var __webpack_exports__ProfileType = __webpack_exports__.ProfileType;
10719
11086
  var __webpack_exports__ResourceDescriptorRole = __webpack_exports__.ResourceDescriptorRole;
10720
11087
  var __webpack_exports__SortOrder = __webpack_exports__.SortOrder;
10721
11088
  var __webpack_exports__TemplateDetailFunctionality = __webpack_exports__.TemplateDetailFunctionality;
11089
+ var __webpack_exports__ValidationTemplate = __webpack_exports__.ValidationTemplate;
10722
11090
  var __webpack_exports__asID = __webpack_exports__.asID;
10723
11091
  var __webpack_exports__asIRI = __webpack_exports__.asIRI;
10724
11092
  var __webpack_exports__default = __webpack_exports__["default"];
10725
11093
  var __webpack_exports__setGovernanceBearerToken = __webpack_exports__.setGovernanceBearerToken;
10726
11094
  var __webpack_exports__setLegacyDatahubBearerToken = __webpack_exports__.setLegacyDatahubBearerToken;
10727
- 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__ProfileType as ProfileType, __webpack_exports__ResourceDescriptorRole as ResourceDescriptorRole, __webpack_exports__SortOrder as SortOrder, __webpack_exports__TemplateDetailFunctionality as TemplateDetailFunctionality, __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 };
11095
+ 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 };
10728
11096
 
10729
11097
  //# sourceMappingURL=index.browser.js.map