@piveau/dpi 0.1.0-beta.10

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 (203) hide show
  1. package/dist/_virtual/_plugin-vue_export-helper.js +9 -0
  2. package/dist/assets/dpi.css +1 -0
  3. package/dist/composables/useRuntimeEnv.js +11 -0
  4. package/dist/composables/useTed.js +9 -0
  5. package/dist/data-provider-interface/DPIMenu.vue.js +457 -0
  6. package/dist/data-provider-interface/DataProviderInterface.vue.js +43 -0
  7. package/dist/data-provider-interface/DataProviderInterface.vue2.js +149 -0
  8. package/dist/data-provider-interface/HappyFlowComponents/BlogDPIHome.vue.js +13 -0
  9. package/dist/data-provider-interface/HappyFlowComponents/CommunityDPI.vue.js +11 -0
  10. package/dist/data-provider-interface/HappyFlowComponents/ComponentLibrary.vue.js +1052 -0
  11. package/dist/data-provider-interface/HappyFlowComponents/ConsultingDPI.vue.js +11 -0
  12. package/dist/data-provider-interface/HappyFlowComponents/DPIHome.vue.js +26 -0
  13. package/dist/data-provider-interface/HappyFlowComponents/FAQDPIHome.vue.js +11 -0
  14. package/dist/data-provider-interface/HappyFlowComponents/HomeTable.vue.js +109 -0
  15. package/dist/data-provider-interface/HappyFlowComponents/ServiceDPIHome.vue.js +11 -0
  16. package/dist/data-provider-interface/HappyFlowComponents/img/CheckCircleFill.svg.js +4 -0
  17. package/dist/data-provider-interface/HappyFlowComponents/img/Circle.svg.js +4 -0
  18. package/dist/data-provider-interface/HappyFlowComponents/img/CircleFill.svg.js +4 -0
  19. package/dist/data-provider-interface/HappyFlowComponents/img/DatenbereitstellerV3.svg.js +4 -0
  20. package/dist/data-provider-interface/HappyFlowComponents/img/Ellipse2Error.svg.js +4 -0
  21. package/dist/data-provider-interface/HappyFlowComponents/img/Ellipse2Published.svg.js +4 -0
  22. package/dist/data-provider-interface/HappyFlowComponents/img/Ellipse2Warning.svg.js +4 -0
  23. package/dist/data-provider-interface/HappyFlowComponents/img/FurV3.svg.js +4 -0
  24. package/dist/data-provider-interface/HappyFlowComponents/img/IllustrationCelebrate.svg.js +4 -0
  25. package/dist/data-provider-interface/HappyFlowComponents/img/IllustrationStart.svg.js +4 -0
  26. package/dist/data-provider-interface/HappyFlowComponents/img/InfoFill.svg.js +4 -0
  27. package/dist/data-provider-interface/HappyFlowComponents/img/Selected1.svg.js +4 -0
  28. package/dist/data-provider-interface/HappyFlowComponents/img/Selected1_2.svg.js +4 -0
  29. package/dist/data-provider-interface/HappyFlowComponents/img/Selected2.svg.js +4 -0
  30. package/dist/data-provider-interface/HappyFlowComponents/img/Selected2_2.svg.js +4 -0
  31. package/dist/data-provider-interface/HappyFlowComponents/img/Selected3.svg.js +4 -0
  32. package/dist/data-provider-interface/HappyFlowComponents/img/Selected3_2.svg.js +4 -0
  33. package/dist/data-provider-interface/HappyFlowComponents/img/Selected4.svg.js +4 -0
  34. package/dist/data-provider-interface/HappyFlowComponents/img/Selected4_2.svg.js +4 -0
  35. package/dist/data-provider-interface/HappyFlowComponents/img/Selected5.svg.js +4 -0
  36. package/dist/data-provider-interface/HappyFlowComponents/img/Selected5_2.svg.js +4 -0
  37. package/dist/data-provider-interface/HappyFlowComponents/img/WarningFill.svg.js +4 -0
  38. package/dist/data-provider-interface/HappyFlowComponents/img/bydata_logo_blue_small.svg.js +4 -0
  39. package/dist/data-provider-interface/HappyFlowComponents/img/iconRight.svg.js +4 -0
  40. package/dist/data-provider-interface/HappyFlowComponents/img/x-circleFill.svg.js +4 -0
  41. package/dist/data-provider-interface/HappyFlowComponents/services/dpiV3_apis.js +135 -0
  42. package/dist/data-provider-interface/HappyFlowComponents/services/eventBus.js +16 -0
  43. package/dist/data-provider-interface/HappyFlowComponents/ui/ButtonV3.vue.js +256 -0
  44. package/dist/data-provider-interface/HappyFlowComponents/ui/CheckboxV3.vue.js +96 -0
  45. package/dist/data-provider-interface/HappyFlowComponents/ui/Chip.vue.js +91 -0
  46. package/dist/data-provider-interface/HappyFlowComponents/ui/CloseOpenButtonV3.vue.js +67 -0
  47. package/dist/data-provider-interface/HappyFlowComponents/ui/CrossOutButton.vue.js +63 -0
  48. package/dist/data-provider-interface/HappyFlowComponents/ui/DatasetStatus.vue.js +52 -0
  49. package/dist/data-provider-interface/HappyFlowComponents/ui/DpiModalBase.vue.js +7 -0
  50. package/dist/data-provider-interface/HappyFlowComponents/ui/DpiModalBase.vue2.js +96 -0
  51. package/dist/data-provider-interface/HappyFlowComponents/ui/Dropdown.vue.js +231 -0
  52. package/dist/data-provider-interface/HappyFlowComponents/ui/Illustration.vue.js +33 -0
  53. package/dist/data-provider-interface/HappyFlowComponents/ui/InputField.vue.js +477 -0
  54. package/dist/data-provider-interface/HappyFlowComponents/ui/InputV3.vue.js +182 -0
  55. package/dist/data-provider-interface/HappyFlowComponents/ui/LogoV3.vue.js +40 -0
  56. package/dist/data-provider-interface/HappyFlowComponents/ui/ModalSimpleV3.vue.js +123 -0
  57. package/dist/data-provider-interface/HappyFlowComponents/ui/ModalV3.vue.js +566 -0
  58. package/dist/data-provider-interface/HappyFlowComponents/ui/MoreButton.vue.js +56 -0
  59. package/dist/data-provider-interface/HappyFlowComponents/ui/OptionalInformation/AccessRightsV3.vue.js +41 -0
  60. package/dist/data-provider-interface/HappyFlowComponents/ui/OptionalInformation/AccessServiceV3.vue.js +157 -0
  61. package/dist/data-provider-interface/HappyFlowComponents/ui/OptionalInformation/AvailabilityV3.vue.js +75 -0
  62. package/dist/data-provider-interface/HappyFlowComponents/ui/OptionalInformation/ByteSizeV3.vue.js +50 -0
  63. package/dist/data-provider-interface/HappyFlowComponents/ui/OptionalInformation/ChangeLicenseV3.vue.js +113 -0
  64. package/dist/data-provider-interface/HappyFlowComponents/ui/OptionalInformation/ChecksumV3.vue.js +116 -0
  65. package/dist/data-provider-interface/HappyFlowComponents/ui/OptionalInformation/ConformsToV3.vue.js +157 -0
  66. package/dist/data-provider-interface/HappyFlowComponents/ui/OptionalInformation/DescriptionV3.vue.js +40 -0
  67. package/dist/data-provider-interface/HappyFlowComponents/ui/OptionalInformation/DocumentationsV3.vue.js +227 -0
  68. package/dist/data-provider-interface/HappyFlowComponents/ui/OptionalInformation/FileFormatV3.vue.js +148 -0
  69. package/dist/data-provider-interface/HappyFlowComponents/ui/OptionalInformation/IssuedDateV3.vue.js +43 -0
  70. package/dist/data-provider-interface/HappyFlowComponents/ui/OptionalInformation/LanguageV3.vue.js +70 -0
  71. package/dist/data-provider-interface/HappyFlowComponents/ui/OptionalInformation/LicenseAttributionByText.vue.js +46 -0
  72. package/dist/data-provider-interface/HappyFlowComponents/ui/OptionalInformation/ModifiedDateV3.vue.js +43 -0
  73. package/dist/data-provider-interface/HappyFlowComponents/ui/OptionalInformation/PolicyV3.vue.js +130 -0
  74. package/dist/data-provider-interface/HappyFlowComponents/ui/OptionalInformation/StatusV3.vue.js +67 -0
  75. package/dist/data-provider-interface/HappyFlowComponents/ui/RapModal.vue.js +157 -0
  76. package/dist/data-provider-interface/HappyFlowComponents/ui/SectionItems/AdditionalsModal.vue.js +106 -0
  77. package/dist/data-provider-interface/HappyFlowComponents/ui/SectionItems/AdditionalsSubModal.vue.js +248 -0
  78. package/dist/data-provider-interface/HappyFlowComponents/ui/SectionItems/CoverageModal.vue.js +79 -0
  79. package/dist/data-provider-interface/HappyFlowComponents/ui/SectionItems/DistributionModal.vue.js +116 -0
  80. package/dist/data-provider-interface/HappyFlowComponents/ui/SectionItems/EssentialsModal.vue.js +134 -0
  81. package/dist/data-provider-interface/HappyFlowComponents/ui/SectionItems/FindabilityChips.vue.js +45 -0
  82. package/dist/data-provider-interface/HappyFlowComponents/ui/SectionItems/HVDSwitch.vue.js +69 -0
  83. package/dist/data-provider-interface/HappyFlowComponents/ui/StateTag.vue.js +64 -0
  84. package/dist/data-provider-interface/HappyFlowComponents/ui/SwitchV3.vue.js +195 -0
  85. package/dist/data-provider-interface/HappyFlowComponents/ui/TableRowV3.vue.js +210 -0
  86. package/dist/data-provider-interface/HappyFlowComponents/ui/TextAreaV3.vue.js +115 -0
  87. package/dist/data-provider-interface/HappyFlowComponents/ui/TextButtonLarge.vue.js +108 -0
  88. package/dist/data-provider-interface/HappyFlowComponents/ui/TextButtonSmall.vue.js +125 -0
  89. package/dist/data-provider-interface/HappyFlowComponents/ui/Toast.vue.js +69 -0
  90. package/dist/data-provider-interface/components/AutocompleteInput.vue.js +279 -0
  91. package/dist/data-provider-interface/components/BasicInfosPage.vue.js +9 -0
  92. package/dist/data-provider-interface/components/ConditionalInput.vue.js +196 -0
  93. package/dist/data-provider-interface/components/ContactPage.vue.js +246 -0
  94. package/dist/data-provider-interface/components/CoveringPage.vue.js +9 -0
  95. package/dist/data-provider-interface/components/DataFetchingComponent.vue.js +49 -0
  96. package/dist/data-provider-interface/components/DiscoverabilityPage.vue.js +60 -0
  97. package/dist/data-provider-interface/components/DistLicense.vue.js +158 -0
  98. package/dist/data-provider-interface/components/DistributionSimplePage.vue.js +1159 -0
  99. package/dist/data-provider-interface/components/DistributionStepper.vue.js +212 -0
  100. package/dist/data-provider-interface/components/Dropup.vue.js +62 -0
  101. package/dist/data-provider-interface/components/FileUpload.vue.js +278 -0
  102. package/dist/data-provider-interface/components/HVDPage.vue.js +108 -0
  103. package/dist/data-provider-interface/components/HappyFlowLandingPage.vue.js +70 -0
  104. package/dist/data-provider-interface/components/InfoSlot.vue.js +81 -0
  105. package/dist/data-provider-interface/components/InputPageStep.vue.js +40 -0
  106. package/dist/data-provider-interface/components/InputPageStep.vue2.js +4 -0
  107. package/dist/data-provider-interface/components/LanguageSelector.vue.js +65 -0
  108. package/dist/data-provider-interface/components/Navigation.vue.js +256 -0
  109. package/dist/data-provider-interface/components/Navigation.vue2.js +1 -0
  110. package/dist/data-provider-interface/components/PolGeoUriPage.vue.js +81 -0
  111. package/dist/data-provider-interface/components/PublisherPage.vue.js +176 -0
  112. package/dist/data-provider-interface/components/ReviewAndPublishPage.vue.js +422 -0
  113. package/dist/data-provider-interface/components/SelectControlledGroup.vue.js +55 -0
  114. package/dist/data-provider-interface/components/SelectControlledGroup.vue2.js +4 -0
  115. package/dist/data-provider-interface/components/SimpleAccessURLInput.vue.js +32 -0
  116. package/dist/data-provider-interface/components/SimpleInput.vue.js +35 -0
  117. package/dist/data-provider-interface/components/SimpleSelect.vue.js +111 -0
  118. package/dist/data-provider-interface/components/SpatialInput.vue.js +276 -0
  119. package/dist/data-provider-interface/components/TempResPage.vue.js +211 -0
  120. package/dist/data-provider-interface/components/TheErrorDialog.vue.js +90 -0
  121. package/dist/data-provider-interface/components/TheErrorDialog.vue2.js +4 -0
  122. package/dist/data-provider-interface/components/TitelPage.vue.js +52 -0
  123. package/dist/data-provider-interface/components/UniqueIdentifierInput.vue.js +75 -0
  124. package/dist/data-provider-interface/components/UpdateDate.vue.js +75 -0
  125. package/dist/data-provider-interface/components/dpiV3Description.vue.js +44 -0
  126. package/dist/data-provider-interface/composables/aucotomplete.js +50 -0
  127. package/dist/data-provider-interface/composables/useDpiContext.js +15 -0
  128. package/dist/data-provider-interface/composables/useDpiEditMode.js +90 -0
  129. package/dist/data-provider-interface/composables/useDpiFormValues.js +8 -0
  130. package/dist/data-provider-interface/composables/useDpiSimpleLoader.js +383 -0
  131. package/dist/data-provider-interface/composables/useDpiStepper.js +47 -0
  132. package/dist/data-provider-interface/composables/useDpiUtils.js +39 -0
  133. package/dist/data-provider-interface/composables/useErrorDialog.js +31 -0
  134. package/dist/data-provider-interface/composables/useFormSchema.js +56 -0
  135. package/dist/data-provider-interface/composables/useRequestUriName.js +58 -0
  136. package/dist/data-provider-interface/config/dcatap/format-types.js +256 -0
  137. package/dist/data-provider-interface/config/dcatap/input-definition.js +1842 -0
  138. package/dist/data-provider-interface/config/dcatap/page-content-config.js +23 -0
  139. package/dist/data-provider-interface/config/dcatap/prefixes.js +25 -0
  140. package/dist/data-provider-interface/config/dcatap/vocab-prefixes.js +24 -0
  141. package/dist/data-provider-interface/config/dcatapde/format-types.js +274 -0
  142. package/dist/data-provider-interface/config/dcatapde/input-definition.js +2131 -0
  143. package/dist/data-provider-interface/config/dcatapde/page-content-config.js +23 -0
  144. package/dist/data-provider-interface/config/dcatapde/prefixes.js +27 -0
  145. package/dist/data-provider-interface/config/dcatapde/vocab-prefixes.js +33 -0
  146. package/dist/data-provider-interface/config/dcatapdeHappyFlow/converter.js +201 -0
  147. package/dist/data-provider-interface/config/dcatapdeHappyFlow/format-types.js +5 -0
  148. package/dist/data-provider-interface/config/dcatapdeHappyFlow/input-definition.js +2196 -0
  149. package/dist/data-provider-interface/config/dcatapdeHappyFlow/page-content-config.js +82 -0
  150. package/dist/data-provider-interface/config/dcatapdeHappyFlow/prefixes.js +5 -0
  151. package/dist/data-provider-interface/config/dcatapdeHappyFlow/vocab-prefixes.js +5 -0
  152. package/dist/data-provider-interface/config/dcatapdeODB/format-types.js +5 -0
  153. package/dist/data-provider-interface/config/dcatapdeODB/input-definition.js +18 -0
  154. package/dist/data-provider-interface/config/dcatapdeODB/page-content-config.js +5 -0
  155. package/dist/data-provider-interface/config/dcatapdeODB/prefixes.js +5 -0
  156. package/dist/data-provider-interface/config/dcatapdeODB/vocab-prefixes.js +5 -0
  157. package/dist/data-provider-interface/config/dpi-spec-config.js +54 -0
  158. package/dist/data-provider-interface/config/selector-languages.json.js +57 -0
  159. package/dist/data-provider-interface/plugins/userConfigShimPlugin.js +10 -0
  160. package/dist/data-provider-interface/store/index.js +32 -0
  161. package/dist/data-provider-interface/store/modules/authStore.js +301 -0
  162. package/dist/data-provider-interface/store/modules/catalogueDetailsStore.js +34 -0
  163. package/dist/data-provider-interface/store/modules/cataloguesStore.js +256 -0
  164. package/dist/data-provider-interface/store/modules/datasetDetailsStore.js +644 -0
  165. package/dist/data-provider-interface/store/modules/datasetsStore.js +361 -0
  166. package/dist/data-provider-interface/store/modules/dpiStore.js +32 -0
  167. package/dist/data-provider-interface/store/modules/navigationStore.js +24 -0
  168. package/dist/data-provider-interface/store/modules/snackbarStore.js +45 -0
  169. package/dist/data-provider-interface/utils/general-helper.js +218 -0
  170. package/dist/data-provider-interface/utils/injectionKeys.js +5 -0
  171. package/dist/data-provider-interface/utils/translation-helper.js +31 -0
  172. package/dist/data-provider-interface/utils/useSteps.js +34 -0
  173. package/dist/data-provider-interface/views/DistributionInputPage.vue.js +100 -0
  174. package/dist/data-provider-interface/views/DistributionOverview.vue.js +201 -0
  175. package/dist/data-provider-interface/views/DraftsPage.vue.js +278 -0
  176. package/dist/data-provider-interface/views/InputPage.vue.js +1168 -0
  177. package/dist/data-provider-interface/views/LinkedDataViewer.vue.js +105 -0
  178. package/dist/data-provider-interface/views/OverviewPage/CatalogueOverview.vue.js +86 -0
  179. package/dist/data-provider-interface/views/OverviewPage/DatasetOverview.vue.js +214 -0
  180. package/dist/data-provider-interface/views/OverviewPage/DistributionOverview.vue.js +219 -0
  181. package/dist/data-provider-interface/views/OverviewPage/Properties/MultilingualProp.vue.js +19 -0
  182. package/dist/data-provider-interface/views/OverviewPage/Properties/SpecialProp.vue.js +397 -0
  183. package/dist/data-provider-interface/views/OverviewPage/Properties/StringProp.vue.js +56 -0
  184. package/dist/data-provider-interface/views/OverviewPage/Properties/URIProp.vue.js +109 -0
  185. package/dist/data-provider-interface/views/OverviewPage/Properties/URLProp.vue.js +92 -0
  186. package/dist/data-provider-interface/views/OverviewPage/PropertyEntry.vue.js +103 -0
  187. package/dist/data-provider-interface/views/OverviewPage.vue.js +189 -0
  188. package/dist/data-provider-interface/views/PropertyChooser.vue.js +41 -0
  189. package/dist/data-provider-interface/views/UserCataloguesPage.vue.js +74 -0
  190. package/dist/data-provider-interface/views/UserProfilePage.vue.js +83 -0
  191. package/dist/filters/dateFilters.js +39 -0
  192. package/dist/form/FormKitGroup.vue.js +55 -0
  193. package/dist/form/Repeatable.vue.js +7 -0
  194. package/dist/form/Repeatable.vue2.js +72 -0
  195. package/dist/form/inputDefinitions.js +131 -0
  196. package/dist/index.d.ts +1 -0
  197. package/dist/index.js +124 -0
  198. package/dist/utils/draftApi.js +33 -0
  199. package/dist/utils/helpers.js +46 -0
  200. package/dist/utils/identifiersApi.js +16 -0
  201. package/dist/utils/jwt.js +7 -0
  202. package/dist/widgets/AppLink.vue.js +118 -0
  203. package/package.json +101 -0
@@ -0,0 +1,457 @@
1
+ import w from "axios";
2
+ import u from "jquery";
3
+ import "lodash-es";
4
+ import { mapActions as k, mapGetters as y } from "vuex";
5
+ import A from "./components/Dropup.vue.js";
6
+ import { useWindowScroll as T } from "@vueuse/core";
7
+ import { resolveComponent as $, createElementBlock as m, openBlock as d, createCommentVNode as b, createVNode as p, createElementVNode as l, toDisplayString as c, withCtx as h, createTextVNode as g, Fragment as C, renderList as P, createBlock as v, resolveDynamicComponent as U, normalizeClass as q, renderSlot as O } from "vue";
8
+ /* empty css */
9
+ import L from "../_virtual/_plugin-vue_export-helper.js";
10
+ const z = {
11
+ name: "DPI-menu",
12
+ components: {
13
+ Dropup: A
14
+ },
15
+ props: {},
16
+ data() {
17
+ return {
18
+ visible: !0,
19
+ modal: {
20
+ show: !1,
21
+ loading: !1,
22
+ error: null,
23
+ message: "",
24
+ confirm: "Ok",
25
+ confirmHandler: () => null
26
+ }
27
+ };
28
+ },
29
+ setup() {
30
+ return {
31
+ scrollToTop: () => {
32
+ let { x: t, y: o } = T({ behavior: "smooth" });
33
+ o.value = 0;
34
+ }
35
+ };
36
+ },
37
+ computed: {
38
+ ...y("datasetDetails", [
39
+ "getCatalog",
40
+ "getID",
41
+ "getLoading",
42
+ "getTitle",
43
+ "getDescription"
44
+ ]),
45
+ ...y("auth", ["getUserData"]),
46
+ menuGroups() {
47
+ return [
48
+ {
49
+ group: "Dataset",
50
+ items: [
51
+ {
52
+ key: "create-dataset",
53
+ name: "createDataset",
54
+ to: {
55
+ name: "DataProviderInterface-Input",
56
+ query: { locale: this.$route.query.locale, edit: !1 },
57
+ // if edit is false -> reset is triggered
58
+ params: { property: "datasets" }
59
+ }
60
+ },
61
+ {
62
+ name: "deleteDataset",
63
+ disabled: !this.isLocatedOnAuthorizedDatasetPage,
64
+ handler: () => {
65
+ this.modal = {
66
+ ...this.modal,
67
+ message: this.$t(
68
+ "message.dataupload.menu.datasetDeletion.message"
69
+ ),
70
+ confirm: this.$t(
71
+ "message.dataupload.menu.datasetDeletion.confirm"
72
+ ),
73
+ confirmHandler: () => this.handleDelete({
74
+ id: this.getID,
75
+ property: "datasets",
76
+ catalog: this.getCatalog.id
77
+ })
78
+ }, u("#modal").modal({ show: !0 });
79
+ }
80
+ },
81
+ {
82
+ key: "edit-dataset",
83
+ name: "editDataset",
84
+ onlyAuthorizedDatasetPage: !0,
85
+ disabled: !this.isLocatedOnAuthorizedDatasetPage,
86
+ to: {
87
+ name: "DataProviderInterface-Edit",
88
+ params: {
89
+ catalog: this.getCatalog.id || "undefined",
90
+ property: "datasets",
91
+ draft: !0,
92
+ id: this.getID || "undefined"
93
+ },
94
+ query: {
95
+ draft: !1,
96
+ locale: this.$route.query.locale
97
+ }
98
+ }
99
+ },
100
+ {
101
+ key: "draft-dataset",
102
+ name: "setToDraft",
103
+ disabled: !this.isLocatedOnAuthorizedDatasetPage,
104
+ handler: () => {
105
+ this.modal = {
106
+ ...this.modal,
107
+ message: this.$t(
108
+ "message.dataupload.menu.markAsDraft.message"
109
+ ),
110
+ confirm: this.$t(
111
+ "message.dataupload.menu.markAsDraft.confirm"
112
+ ),
113
+ confirmHandler: () => this.handleMarkAsDraft({
114
+ id: this.getID,
115
+ catalog: this.getCatalog.id,
116
+ title: this.getTitle,
117
+ description: this.getDescription
118
+ })
119
+ }, u("#modal").modal({ show: !0 });
120
+ }
121
+ },
122
+ {
123
+ key: "register-dataset",
124
+ name: "registerDoi",
125
+ disabled: !this.isLocatedOnAuthorizedDatasetPage,
126
+ handler: () => {
127
+ this.modal = {
128
+ ...this.modal,
129
+ message: this.$t(
130
+ "message.dataupload.menu.registerADoi.message"
131
+ ),
132
+ confirm: this.$t(
133
+ "message.dataupload.menu.registerADoi.confirm"
134
+ ),
135
+ confirmHandler: () => this.handleRegisterDoi({
136
+ id: this.getID,
137
+ catalog: this.getCatalog.id,
138
+ type: this.$env.content.dataProviderInterface.doiRegistrationService.persistentIdentifierType || "mock"
139
+ })
140
+ }, u("#modal").modal({ show: !0 });
141
+ }
142
+ }
143
+ ]
144
+ },
145
+ {
146
+ group: "Catalogue",
147
+ items: [
148
+ {
149
+ name: "CreateCatalogue",
150
+ to: {
151
+ name: "DataProviderInterface-Input",
152
+ query: { locale: this.$route.query.locale, edit: !1 },
153
+ params: { property: "catalogues" }
154
+ }
155
+ },
156
+ {
157
+ name: "DeleteCatalogue",
158
+ disabled: !this.isLocatedOnAuthorizedCatalogPage,
159
+ handler: () => {
160
+ this.modal = {
161
+ ...this.modal,
162
+ message: "Are you sure you want to delete this catalogue? This can not be reverted!",
163
+ confirm: "Delete catlogue (irreversible)",
164
+ confirmHandler: () => this.handleDelete({
165
+ id: this.$route.params.ctlg_id,
166
+ property: "catalogues",
167
+ catalog: this.$route.params.ctlg_id
168
+ })
169
+ }, u("#modal").modal({ show: !0 });
170
+ }
171
+ },
172
+ {
173
+ name: "EditCatalog",
174
+ onlyAuthorizedDatasetPage: !0,
175
+ disabled: !this.isLocatedOnAuthorizedCatalogPage,
176
+ to: {
177
+ name: "DataProviderInterface-Edit",
178
+ params: {
179
+ catalog: this.$route.params.ctlg_id ? this.$route.params.ctlg_id : "undefined",
180
+ property: "catalogues",
181
+ id: this.getID || "undefined"
182
+ },
183
+ query: {
184
+ draft: !1,
185
+ locale: this.$route.query.locale
186
+ }
187
+ }
188
+ }
189
+ ]
190
+ }
191
+ ];
192
+ },
193
+ menuItems() {
194
+ return [
195
+ {
196
+ name: this.$t("message.dataupload.menu.draftDatasets"),
197
+ to: {
198
+ name: "DataProviderInterface-Draft",
199
+ query: { locale: this.$route.query.locale }
200
+ }
201
+ },
202
+ {
203
+ name: this.$t("message.dataupload.menu.myCatalogues"),
204
+ to: {
205
+ name: "DataProviderInterface-UserCatalogues",
206
+ query: { locale: this.$route.query.locale }
207
+ }
208
+ },
209
+ {
210
+ name: this.$t("message.dataupload.menu.userProfile"),
211
+ to: {
212
+ name: "DataProviderInterface-UserProfile",
213
+ query: { locale: this.$route.query.locale }
214
+ }
215
+ }
216
+ ];
217
+ },
218
+ isLocatedOnAuthorizedDatasetPage() {
219
+ if (this.getLoading) return !1;
220
+ const e = this.$route.name === "DatasetDetailsDataset";
221
+ if (!e) return !1;
222
+ const t = e && this.$route.params.ds_id, o = this.getUserData && this.getUserData.permissions, s = this.getCatalog && this.getCatalog.id;
223
+ return o.find(
224
+ (i) => i.rsname === s
225
+ ) && e && t === this.getID;
226
+ },
227
+ isLocatedOnAuthorizedCatalogPage() {
228
+ if (this.getLoading) return !1;
229
+ const e = this.$route.name === "CatalogueDetails";
230
+ return e ? (e && this.$route.params.ctlg_id, e) : !1;
231
+ }
232
+ },
233
+ methods: {
234
+ ...k("auth", ["updateUserData"]),
235
+ ...k("snackbar", ["showSnackbar"]),
236
+ setupKeycloakWatcher() {
237
+ this.$keycloak && this.$keycloak.authenticated && (this.$watch(
238
+ "$keycloak.token",
239
+ async (e) => {
240
+ if (!e) return;
241
+ let t = this.$keycloak.rtpToken;
242
+ if (!t) {
243
+ const o = this.$keycloak.getRtpToken;
244
+ o && (t = await o({ autoRefresh: !0 }));
245
+ }
246
+ this.updateUserData({
247
+ authToken: e,
248
+ rtpToken: t,
249
+ hubUrl: this.$env.api.hubUrl
250
+ });
251
+ },
252
+ { immediate: !0 }
253
+ ), this.$watch("$keycloak.rtpToken", (e) => {
254
+ e && this.updateUserData({
255
+ authToken: this.$keycloak.token,
256
+ rtpToken: e,
257
+ hubUrl: this.$env.api.hubUrl
258
+ });
259
+ }));
260
+ },
261
+ async handleConfirm(e, t, { successMessage: o, errorMessage: s }) {
262
+ this.modal.loading = !0;
263
+ try {
264
+ this.$Progress.start(), await new Promise((a) => setTimeout(a, 250)), this.$Progress.set(25), await this.$store.dispatch(e, t), this.showSnackbar({
265
+ message: o,
266
+ variant: "success"
267
+ }), await new Promise((a) => setTimeout(a, 250)), this.$Progress.finish();
268
+ } catch (a) {
269
+ this.$Progress.fail(), console.error(a);
270
+ const i = a.response && a.response.data && a.response.data.message;
271
+ this.modal = {
272
+ ...this.modal,
273
+ // Need to translate this
274
+ message: "DOI registration is not possible, the following error occured: " + a.response.data,
275
+ confirm: "Okay",
276
+ confirmHandler: () => u("#modal").modal("hide")
277
+ }, console.log(a.response.data);
278
+ let r = typeof s == "string" && s;
279
+ r = typeof s == "function" && s(a), r = typeof s == "object" && s.prefix + " - " + a.response.data, console.log(s);
280
+ const f = r || i || a.message || "An error occurred";
281
+ this.showSnackbar({
282
+ message: f,
283
+ variant: "error"
284
+ });
285
+ } finally {
286
+ this.modal.loading = !1, u("#modal").modal("hide");
287
+ }
288
+ },
289
+ async handleRegisterDoi({ id: e, catalog: t, type: o = "eu-ra-doi" }) {
290
+ await this.handleConfirm(
291
+ "auth/createPersistentIdentifier",
292
+ { id: e, catalog: t, type: o },
293
+ {
294
+ successMessage: this.$te("message.snackbar.doiRegistration.success") ? this.$t("message.snackbar.doiRegistration.success") : "Successfully registered DOI",
295
+ errorMessage: {
296
+ prefix: this.$te("message.snackbar.doiRegistration.error") ? this.$t("message.snackbar.doiRegistration.error") : "DOI registration failed"
297
+ }
298
+ }
299
+ );
300
+ },
301
+ async handleMarkAsDraft({ id: e, catalog: t, title: o, description: s }) {
302
+ await this.handleConfirm(
303
+ "auth/putDatasetToDraft",
304
+ {
305
+ id: e,
306
+ catalog: t,
307
+ title: o,
308
+ description: s
309
+ },
310
+ {
311
+ successMessage: this.$te("message.snackbar.markAsDraft.success") ? this.$t("message.snackbar.markAsDraft.success") : "Dataset successfully marked as draft",
312
+ errorMessage: {
313
+ prefix: this.$te("message.snackbar.markAsDraft.error") ? this.$t("message.snackbar.markAsDraft.error") : "Failed to mark dataset as draft"
314
+ }
315
+ }
316
+ ), this.$router.push({
317
+ name: "DataProviderInterface-Draft",
318
+ query: { locale: this.$route.query.locale }
319
+ }).catch(() => {
320
+ });
321
+ },
322
+ async handleDelete({ id: e, property: t, catalog: o }) {
323
+ var s, a;
324
+ this.modal.loading = !0, this.$Progress.start();
325
+ try {
326
+ let i;
327
+ t === "datasets" ? i = `${this.$env.api.hubUrl}datasets/${e}?useNormalizedId=true&catalogue=${o}` : t === "catalogues" && (i = `${this.$env.api.hubUrl}catalogues/${e}`), await w.delete(i, {
328
+ headers: {
329
+ "Content-Type": "text/turtle",
330
+ Authorization: `Bearer ${this.getUserData.rtpToken}`
331
+ }
332
+ });
333
+ let r;
334
+ t === "datasets" ? r = this.$te("message.snackbar.deleteDataset.success") ? this.$t("message.snackbar.deleteDataset.success") : "Dataset successfully deleted" : t === "catalogues" && (r = this.$te("message.snackbar.deleteCatalog.success") ? this.$t("message.snackbar.deleteCatalog.success") : "Catalog successfully deleted"), this.showSnackbar({
335
+ message: r,
336
+ variant: "success"
337
+ }), this.$Progress.finish(), this.$router.push({
338
+ name: "Datasets",
339
+ query: { locale: this.$route.query.locale, refresh: !0 }
340
+ }).catch(() => {
341
+ });
342
+ } catch (i) {
343
+ this.$Progress.fail();
344
+ let r;
345
+ t === "datasets" ? r = this.$te("message.snackbar.deleteDataset.error") ? this.$t("message.snackbar.deleteDataset.error") : "Failed to delete dataset" : t === "catalogues" && (r = this.$te("message.snackbar.deleteCatalog.error") ? this.$t("message.snackbar.deleteCatalog.error") : "Failed to delete catalog"), this.showSnackbar({
346
+ message: `${r}${(s = i.response) != null && s.data ? ` — ${(a = i.response) == null ? void 0 : a.data}` : i.message}`,
347
+ variant: "error"
348
+ });
349
+ } finally {
350
+ this.modal.loading = !1, u("#modal").modal("hide");
351
+ }
352
+ }
353
+ },
354
+ created() {
355
+ this.setupKeycloakWatcher();
356
+ }
357
+ }, S = {
358
+ id: "navWrapper",
359
+ "data-cy": "dpi-menu"
360
+ }, H = { key: 0 }, M = { class: "text-white" }, N = { class: "btn btn-default" }, R = { class: "btn btn-default" }, E = { style: { "margin-top": "1%" } }, x = { class: "btn-group dropup" }, F = {
361
+ key: 0,
362
+ class: "logoutWrap"
363
+ }, W = { class: "text-white" }, B = {
364
+ type: "button",
365
+ class: "btn btn-default logout"
366
+ };
367
+ function G(e, t, o, s, a, i) {
368
+ const r = $("router-link"), f = $("dropup"), _ = $("app-confirmation-dialog");
369
+ return d(), m("div", S, [
370
+ a.visible ? (d(), m("nav", H, [
371
+ l("div", null, [
372
+ l("h4", M, c(e.$t("message.dataupload.menu.dpi")), 1)
373
+ ]),
374
+ l("button", N, [
375
+ p(r, { to: { name: "DPI-Home-HappyFlow" } }, {
376
+ default: h(() => t[1] || (t[1] = [
377
+ g("DPI Home", -1)
378
+ ])),
379
+ _: 1,
380
+ __: [1]
381
+ })
382
+ ]),
383
+ l("button", R, [
384
+ p(r, { to: { name: "DPI-Comp-Lib" } }, {
385
+ default: h(() => t[2] || (t[2] = [
386
+ g("Component Library", -1)
387
+ ])),
388
+ _: 1,
389
+ __: [2]
390
+ })
391
+ ]),
392
+ l("div", E, [
393
+ (d(!0), m(C, null, P(i.menuGroups, (n, D) => (d(), v(f, {
394
+ key: `Group${D}`,
395
+ groupName: n.group,
396
+ groupItems: n.items,
397
+ show: e.$env.content.dataProviderInterface.buttons[n.group],
398
+ isOperator: e.getUserData.roles.includes("operator"),
399
+ isCatalog: n.group === "Catalogue"
400
+ }, null, 8, ["groupName", "groupItems", "show", "isOperator", "isCatalog"]))), 128)),
401
+ l("ul", null, [
402
+ l("div", x, [
403
+ (d(!0), m(C, null, P(i.menuItems, (n, D) => (d(), m("li", {
404
+ key: `Menu${D}`
405
+ }, [
406
+ l("button", {
407
+ type: "button",
408
+ class: "btn btn-default",
409
+ onClick: t[0] || (t[0] = (I) => s.scrollToTop())
410
+ }, [
411
+ (d(), v(U(n.handler ? "button" : "router-link"), {
412
+ class: q({ disabled: n.disabled }),
413
+ to: n.to,
414
+ onClick: (I) => n.handler ? n.handler() : null
415
+ }, {
416
+ default: h(() => [
417
+ g(c(n.handler) + " " + c(n.name), 1)
418
+ ]),
419
+ _: 2
420
+ }, 1032, ["class", "to", "onClick"]))
421
+ ])
422
+ ]))), 128))
423
+ ])
424
+ ])
425
+ ]),
426
+ e.getUserData.userName ? (d(), m("div", F, [
427
+ O(e.$slots, "right", { getUserData: e.getUserData }, () => [
428
+ l("small", W, c(e.$t("message.dataupload.menu.loggedInAs")) + " " + c(e.getUserData.userName), 1),
429
+ t[3] || (t[3] = l("br", null, null, -1)),
430
+ l("button", B, [
431
+ p(r, { to: { name: "Logout" } }, {
432
+ default: h(() => [
433
+ g(c(e.$t("message.dataupload.menu.logout")), 1)
434
+ ]),
435
+ _: 1
436
+ })
437
+ ])
438
+ ], !0)
439
+ ])) : b("", !0)
440
+ ])) : b("", !0),
441
+ p(_, {
442
+ id: "DPIMenuModal",
443
+ loading: a.modal.loading,
444
+ confirm: a.modal.confirm,
445
+ onConfirm: a.modal.confirmHandler
446
+ }, {
447
+ default: h(() => [
448
+ g(c(a.modal.message), 1)
449
+ ]),
450
+ _: 1
451
+ }, 8, ["loading", "confirm", "onConfirm"])
452
+ ]);
453
+ }
454
+ const te = /* @__PURE__ */ L(z, [["render", G], ["__scopeId", "data-v-56a5ab23"]]);
455
+ export {
456
+ te as default
457
+ };
@@ -0,0 +1,43 @@
1
+ import p from "./DataProviderInterface.vue2.js";
2
+ import { resolveComponent as s, createElementBlock as n, openBlock as t, Fragment as a, createElementVNode as o, createBlock as c, createVNode as d } from "vue";
3
+ /* empty css */
4
+ import f from "../_virtual/_plugin-vue_export-helper.js";
5
+ const m = {
6
+ key: 1,
7
+ class: "d-flex justify-content-center align-items-center",
8
+ style: { height: "100dvh", width: "100%" }
9
+ };
10
+ function g(r, e, u, y, h, k) {
11
+ const i = s("TheErrorDialog"), l = s("router-view");
12
+ return t(), n(a, null, [
13
+ e[0] || (e[0] = o("link", {
14
+ rel: "preconnect",
15
+ href: "https://fonts.googleapis.com"
16
+ }, null, -1)),
17
+ e[1] || (e[1] = o("link", {
18
+ rel: "preconnect",
19
+ href: "https://fonts.gstatic.com",
20
+ crossorigin: ""
21
+ }, null, -1)),
22
+ e[2] || (e[2] = o("link", {
23
+ href: "https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap",
24
+ rel: "stylesheet"
25
+ }, null, -1)),
26
+ (t(), n("div", {
27
+ key: r.property,
28
+ class: "dpi dpiV3_dpi"
29
+ }, [
30
+ o("div", null, [
31
+ d(i)
32
+ ]),
33
+ r.isReady ? (t(), c(l, {
34
+ ref: "view",
35
+ key: r.key
36
+ })) : (t(), n("div", m))
37
+ ]))
38
+ ], 64);
39
+ }
40
+ const $ = /* @__PURE__ */ f(p, [["render", g]]);
41
+ export {
42
+ $ as default
43
+ };
@@ -0,0 +1,149 @@
1
+ import { whenever as V } from "@vueuse/core";
2
+ import { defineComponent as q, defineAsyncComponent as P, toRef as _, computed as i, toValue as B, provide as O, watchEffect as v, ref as u, nextTick as D } from "vue";
3
+ import { useRoute as j } from "vue-router";
4
+ import { mapActions as w, mapGetters as z, useStore as F } from "vuex";
5
+ import { useRuntimeEnv as T } from "../composables/useRuntimeEnv.js";
6
+ import J from "./components/TheErrorDialog.vue.js";
7
+ import { autocompleteKey as G, defaultAutocompleteAdapter as K } from "./composables/aucotomplete.js";
8
+ import { setupDpiContext as H } from "./composables/useDpiContext.js";
9
+ import { useDpiEditMode as Q } from "./composables/useDpiEditMode.js";
10
+ import { useFormValues as U } from "./composables/useDpiFormValues.js";
11
+ import { useErrorDialog as W } from "./composables/useErrorDialog.js";
12
+ import { config as X } from "./config/dpi-spec-config.js";
13
+ import Y from "./HappyFlowComponents/ui/ButtonV3.vue.js";
14
+ import Z from "./HappyFlowComponents/ui/DpiModalBase.vue.js";
15
+ const fe = q({
16
+ name: "DataProviderInterface",
17
+ components: {
18
+ ButtonV3: Y,
19
+ InputPage: P(() => import("./views/InputPage.vue.js")),
20
+ DpiModalBase: Z,
21
+ TheErrorDialog: J
22
+ },
23
+ props: {
24
+ name: {
25
+ type: String,
26
+ default: ""
27
+ },
28
+ dpiContext: {
29
+ type: Object,
30
+ default: () => {
31
+ }
32
+ },
33
+ autocomplete: {
34
+ type: Object,
35
+ default: () => {
36
+ }
37
+ }
38
+ },
39
+ metaInfo() {
40
+ return {
41
+ title: `${this.$t("message.metadata.upload")} | ${this.$t("message.header.navigation.data.datasets")}`,
42
+ meta: [
43
+ { name: "description", vmid: "description", content: `${this.$t("message.datasets.meta.description")}` },
44
+ { name: "keywords", vmid: "keywords", content: `${this.$env.metadata.keywords} ${this.$t("message.datasets.meta.description")}}` },
45
+ { name: "robots", content: "noindex, follow" }
46
+ ]
47
+ };
48
+ },
49
+ data() {
50
+ return {
51
+ property: this.$route.params.property,
52
+ id: this.$route.params.id
53
+ };
54
+ },
55
+ computed: {
56
+ ...z("auth", [
57
+ "getIsEditMode"
58
+ ]),
59
+ mode() {
60
+ return this.property === "catalogues" ? this.getIsEditMode ? this.$t("message.dataupload.menu.editCatalogue") : this.$t("message.dataupload.createNewCatalogue") : this.property === "datasets" ? this.getIsEditMode ? this.$t("message.dataupload.menu.editDataset") : this.$t("message.dataupload.createNewDataset") : "Edit Distribution";
61
+ }
62
+ },
63
+ methods: {
64
+ ...w("dpiStore", [
65
+ "saveLocalstorageValues"
66
+ ]),
67
+ ...w("auth", [
68
+ "populateDraftAndEdit"
69
+ ]),
70
+ getClearPath() {
71
+ return `${this.$env.content.dataProviderInterface.basePath}/${this.property}?locale=${this.$i18n.locale}&clear=true`;
72
+ },
73
+ handleScroll() {
74
+ var o, e, r;
75
+ try {
76
+ (o = document.getElementById("stepperAnchor")) != null && o.offsetTop ? (e = document.getElementById("stepperAnchor")) == null || e.classList.add("border-bottom-lightgray") : (r = document.getElementById("stepperAnchor")) == null || r.classList.remove("border-bottom-lightgray");
77
+ } catch {
78
+ }
79
+ }
80
+ },
81
+ created() {
82
+ window.addEventListener("scroll", this.handleScroll), this.populateDraftAndEdit();
83
+ },
84
+ mounted() {
85
+ this.saveLocalstorageValues(this.property);
86
+ },
87
+ unmounted() {
88
+ window.removeEventListener("scroll", this.handleScroll);
89
+ },
90
+ setup(o) {
91
+ const e = j(), r = F(), c = T(), h = c.content.dataProviderInterface.specification, S = X[h], b = _(o, "dpiContext"), { formValues: g } = U(), { openErrorDialog: y } = W(), t = i(() => {
92
+ const a = B(b);
93
+ return {
94
+ specification: S,
95
+ specificationName: h,
96
+ edit: {
97
+ enabled: e.query.edit === "true",
98
+ id: e.query.id || void 0,
99
+ catalog: e.query.catalog || void 0,
100
+ fromDraft: e.query.fromDraft === "true"
101
+ },
102
+ ...a
103
+ };
104
+ }), A = i(() => t.value.specification), E = i(() => t.value.specificationName);
105
+ H(t);
106
+ const C = K({
107
+ envs: c,
108
+ dpiContext: t
109
+ });
110
+ O(G, o.autocomplete || C.adapter), v(() => {
111
+ r.dispatch("dpiStore/setSpecification", A.value), r.dispatch("dpiStore/setSpecificationname", E.value);
112
+ });
113
+ const I = i(() => `${e.query.key}@${E.value}`), { isReady: p, result: m, inEditModeAndRptAvailable: $, parsingErrors: s, fetchError: n, isSimpleLoaderReady: x, isMaterialized: R, isLoading: L, jsonld: M } = Q(t), f = u(!1);
114
+ v(async () => {
115
+ f.value || $.value && p.value && (await D(), await D(), g.value = m.value, console.log("resultus", m.value), f.value = !0);
116
+ });
117
+ const k = i(() => {
118
+ var a;
119
+ return (a = t.value.edit) != null && a.enabled ? p.value && f.value : p.value;
120
+ }), d = u(!1), l = u(null), N = u(!0);
121
+ return v(() => {
122
+ s.value && s.value.length > 0 ? (l.value = s.value[0], d.value = !0, y(new Error(s.value[0].message))) : (d.value = !1, l.value = null);
123
+ }), V(n, () => {
124
+ var a;
125
+ l.value = {
126
+ code: "fetch_failed",
127
+ message: JSON.stringify(n.value, null, 2) || "Failed to fetch data"
128
+ }, d.value = !0, y(new Error(JSON.stringify(n.value, null, 2) || "Failed to fetch data"), `Der Datensatz '${(a = e.query) == null ? void 0 : a.id}' scheint nicht verfügbar zu sein.`);
129
+ }, { immediate: !0 }), {
130
+ result: m,
131
+ resolvedDpiContext: t,
132
+ key: I,
133
+ isReady: k,
134
+ formValues: g,
135
+ showErrorModal: d,
136
+ currentError: l,
137
+ isDevelopment: N,
138
+ fetchError: n,
139
+ isSimpleLoaderReady: x,
140
+ isMaterialized: R,
141
+ isLoading: L,
142
+ jsonld: M,
143
+ inEditModeAndRptAvailable: $
144
+ };
145
+ }
146
+ });
147
+ export {
148
+ fe as default
149
+ };
@@ -0,0 +1,13 @@
1
+ import { createElementBlock as n, openBlock as a, createStaticVNode as i } from "vue";
2
+ /* empty css */
3
+ import t from "../../_virtual/_plugin-vue_export-helper.js";
4
+ const r = {}, d = { class: "d-flex" };
5
+ function s(l, e) {
6
+ return a(), n("div", d, e[0] || (e[0] = [
7
+ i('<div class="cardBlog cardLeft"><div class="bgImg"></div><div class="d-flex flex-wrap p-2"><h3>Was ist Open Data?</h3><p>Tauchen Sie ein in die Welt der offenen Daten: Erfahren Sie, wie Open Data das Fundament des digitalen Zeitalters bildet, Transparenz und Innovation fördert und wie open bydata eine Plattform für frei zugängliche Informationen aus Bayern bietet. </p><p>4 Minuten Lesezeit</p></div><a class="p-2" href="#">Artikel lesen</a></div><div class="cardBlog cardRight"><div class="bgImg"></div><div class="d-flex flex-wrap p-2"><h3>Was ist Open Data?</h3><p>Tauchen Sie ein in die Welt der offenen Daten: Erfahren Sie, wie Open Data das Fundament des digitalen Zeitalters bildet, Transparenz und Innovation fördert und wie open bydata eine Plattform für frei zugängliche Informationen aus Bayern bietet. </p><p>4 Minuten Lesezeit</p></div><a class="p-2" href="#">Artikel lesen</a></div>', 2)
8
+ ]));
9
+ }
10
+ const p = /* @__PURE__ */ t(r, [["render", s]]);
11
+ export {
12
+ p as default
13
+ };