@piveau/dpi 0.2.0-alpha.13 → 0.2.0-alpha.15

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 (90) hide show
  1. package/dist/assets/dpi.css +1 -1
  2. package/dist/packages/dpi/src/data-provider-interface/DataProviderInterface.vue2.js +48 -47
  3. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/AboutProject.vue.js +46 -48
  4. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/DPIHome.vue.js +48 -31
  5. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/HomeTable.vue.js +101 -79
  6. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ProjectTable.vue.js +4 -94
  7. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ProjectTable.vue2.js +128 -0
  8. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/services/dpiV3_apis.js +36 -68
  9. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/Autocomplete/AutocompleteVocab.vue.js +2 -2
  10. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/Autocomplete/AutocompleteVocab.vue2.js +64 -52
  11. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/BasicInfosStep/ProjectDescriptionStep.vue.js +14 -14
  12. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/BasicInfosStep/ProjectNameStep.vue.js +9 -6
  13. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/BasicInfosStep/ProjectOrganisationStep.vue.js +2 -2
  14. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/BasicInfosStep/ProjectOrganisationStep.vue2.js +26 -27
  15. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/BasicInfosStep/ProjectStatusStep.vue.js +8 -8
  16. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/DataCollection/BasicInformationStep.vue.js +2 -2
  17. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/DataCollection/BasicInformationStep.vue2.js +19 -19
  18. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/DataProcessing/BasicInformationStep.vue.js +2 -2
  19. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/DataProcessing/BasicInformationStep.vue2.js +38 -39
  20. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/DataSimulation/BasicInformationStep.vue.js +2 -2
  21. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/DataSimulation/BasicInformationStep.vue2.js +72 -67
  22. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/DataVisualisation/BasicInformationStep.vue.js +1 -1
  23. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/DataVisualisation/BasicInformationStep.vue2.js +84 -97
  24. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/DpiModalBase.vue.js +2 -2
  25. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/DpiModalBase.vue2.js +1 -1
  26. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/Dropdown.vue.js +103 -88
  27. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/Findability/ApplicationsStep.vue.js +1 -1
  28. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/Findability/ApplicationsStep.vue2.js +18 -17
  29. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/Findability/CategoriesStep.vue.js +1 -1
  30. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/Findability/CategoriesStep.vue2.js +35 -28
  31. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/Findability/DiscoverabilityStep.vue.js +11 -10
  32. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/InputField/InputFieldDefinition.js +4 -3
  33. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/InputField/InputFieldFormKit.vue.js +46 -40
  34. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/InputField.vue.js +144 -134
  35. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/OptionalDataStep/OptionalDataStep.vue.js +2 -2
  36. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/OptionalDataStep/OptionalDataStep.vue2.js +190 -156
  37. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ProcessSteps/DatasetForm.vue.js +2 -2
  38. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ProcessSteps/DatasetForm.vue2.js +44 -38
  39. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ProcessSteps/DatasetStep.vue.js +2 -2
  40. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ProcessSteps/DatasetStep.vue2.js +73 -71
  41. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ProcessSteps/GetResource.vue.js +4 -4
  42. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ProcessSteps/HardwareForm.vue.js +2 -2
  43. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ProcessSteps/HardwareForm.vue2.js +128 -123
  44. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ProcessSteps/HardwareStep.vue.js +2 -2
  45. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ProcessSteps/HardwareStep.vue2.js +133 -131
  46. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ProcessSteps/SoftwareForm.vue.js +2 -2
  47. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ProcessSteps/SoftwareForm.vue2.js +50 -45
  48. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ProcessSteps/SoftwareStep.vue.js +2 -2
  49. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ProcessSteps/SoftwareStep.vue2.js +85 -83
  50. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ProcessSteps/utils.js +17 -17
  51. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ReviewStep/ReviewStep.vue.js +2 -2
  52. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ReviewStep/ReviewStep.vue2.js +341 -341
  53. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/SectionItems/CoverageModal.vue.js +38 -71
  54. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/SectionItems/CoverageModal.vue2.js +4 -0
  55. package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/TableRowV3.vue.js +205 -143
  56. package/dist/packages/dpi/src/data-provider-interface/components/Spatial.vue.js +7 -0
  57. package/dist/packages/dpi/src/data-provider-interface/components/Spatial.vue2.js +172 -0
  58. package/dist/packages/dpi/src/data-provider-interface/components/SpatialPage.vue.js +7 -0
  59. package/dist/packages/dpi/src/data-provider-interface/components/SpatialPage.vue2.js +44 -0
  60. package/dist/packages/dpi/src/data-provider-interface/components/StepActionsSection.vue.js +2 -2
  61. package/dist/packages/dpi/src/data-provider-interface/components/StepActionsSection.vue2.js +111 -91
  62. package/dist/packages/dpi/src/data-provider-interface/components/TheCancelConfirmationDialog.vue.js +3 -3
  63. package/dist/packages/dpi/src/data-provider-interface/components/TheCancelConfirmationDialog.vue2.js +24 -19
  64. package/dist/packages/dpi/src/data-provider-interface/components/TheErrorDialog.vue.js +57 -46
  65. package/dist/packages/dpi/src/data-provider-interface/components/dev-tools/ProjectDpiDevTools.vue.js +2 -2
  66. package/dist/packages/dpi/src/data-provider-interface/components/dev-tools/ProjectDpiDevTools.vue2.js +137 -94
  67. package/dist/packages/dpi/src/data-provider-interface/composables/project-transformer/decodeProject.js +152 -135
  68. package/dist/packages/dpi/src/data-provider-interface/composables/project-transformer/encodeProject.js +202 -167
  69. package/dist/packages/dpi/src/data-provider-interface/composables/useDpiContext.js +9 -10
  70. package/dist/packages/dpi/src/data-provider-interface/composables/useDpiEditMode.js +89 -65
  71. package/dist/packages/dpi/src/data-provider-interface/composables/useDpiSimpleLoader.js +287 -281
  72. package/dist/packages/dpi/src/data-provider-interface/composables/useDpiStepper.js +82 -82
  73. package/dist/packages/dpi/src/data-provider-interface/composables/useDpiUtils.js +18 -9
  74. package/dist/packages/dpi/src/data-provider-interface/composables/useProjectActions.js +95 -0
  75. package/dist/packages/dpi/src/data-provider-interface/composables/useTwinbyHome.js +83 -0
  76. package/dist/packages/dpi/src/data-provider-interface/composables/useTwinbyUser.js +85 -0
  77. package/dist/packages/dpi/src/data-provider-interface/config/dcatapdeHappyFlow/converter.js +19 -19
  78. package/dist/packages/dpi/src/data-provider-interface/schema/projectLdSchema.js +48 -45
  79. package/dist/packages/dpi/src/data-provider-interface/views/InputPage.vue.js +333 -308
  80. package/dist/packages/dpi/src/data-provider-interface/views/InputPageProject.vue.js +405 -409
  81. package/dist/packages/dpi/src/form/inputDefinitions.js +52 -53
  82. package/dist/packages/dpi/src/stories/components/PartnerCard.vue.js +2 -2
  83. package/dist/packages/dpi/src/stories/components/PartnerCard.vue2.js +14 -14
  84. package/dist/packages/dpi/src/stories/components/ScreenshotCard.vue.js +2 -2
  85. package/dist/packages/dpi/src/stories/components/ScreenshotCard.vue2.js +9 -8
  86. package/dist/packages/dpi/src/utils/schema/schemaProject.js +210 -0
  87. package/dist/packages/dpi/src/utils/schema/shared.js +23 -0
  88. package/package.json +5 -5
  89. package/dist/packages/dpi/src/data-provider-interface/components/PolGeoUriPage.vue.js +0 -124
  90. package/dist/packages/dpi/src/data-provider-interface/composables/project-transformer/__tests__/fixtures/theProjectForm.js +0 -281
@@ -1,118 +1,140 @@
1
- import { ref as g, computed as u, watch as v, createElementBlock as o, openBlock as s, createElementVNode as r, createCommentVNode as b, unref as d, createTextVNode as h, createVNode as _, withCtx as B, createStaticVNode as L, Fragment as D, renderList as y, createBlock as k } from "vue";
2
- import { useAsyncState as N, useDebounce as U } from "@vueuse/core";
3
- import R from "axios";
1
+ import { ref as y, computed as r, watch as U, createElementBlock as a, openBlock as l, createElementVNode as o, createCommentVNode as _, createTextVNode as k, createBlock as p, resolveDynamicComponent as L, unref as n, withCtx as R, createVNode as W, createStaticVNode as q, Fragment as w, renderList as D } from "vue";
2
+ import { useDebounce as A } from "@vueuse/core";
4
3
  import "jquery";
5
- import { useRouter as E } from "vue-router";
6
- import { useStore as W } from "vuex";
7
- import { useRuntimeEnv as j } from "../../composables/useRuntimeEnv.js";
8
- import A from "../../widgets/AppLink.vue.js";
9
- import $ from "./ui/ButtonV3.vue.js";
10
- import V from "./ui/TableRowV3.vue.js";
11
- import { formatDate as x } from "../utils/formatDate.js";
4
+ import { useRouter as F } from "vue-router";
5
+ import { useStore as K } from "vuex";
6
+ import { useRuntimeEnv as $ } from "../../composables/useRuntimeEnv.js";
7
+ import { useDatasetSearch as j } from "../composables/useTwinbyHome.js";
8
+ import { useTwinbyUser as G } from "../composables/useTwinbyUser.js";
9
+ import { formatDate as V } from "../utils/formatDate.js";
10
+ import J from "./ui/ButtonV3.vue.js";
11
+ import S from "./ui/TableRowV3.vue.js";
12
12
  /* empty css */
13
- import q from "../../../../../_virtual/_plugin-vue_export-helper.js";
14
- const F = { class: "dpiV3_dpiHome V3-typography" }, K = { class: "dpiV3_homeHeadWrap" }, M = {
13
+ import M from "../../../../../_virtual/_plugin-vue_export-helper.js";
14
+ const O = { class: "dpiV3_dpiHome V3-typography" }, Q = { class: "dpiV3_homeHeadWrap" }, X = {
15
15
  key: 0,
16
16
  class: "copy-large-semi-bold landingText"
17
- }, G = { class: "interactionButtonsDPIHome" }, J = {
17
+ }, Y = { class: "interactionButtonsDPIHome" }, Z = {
18
18
  key: 0,
19
19
  class: "dpiV3_table"
20
- }, O = {
20
+ }, ee = {
21
21
  key: 0,
22
22
  class: "loading-screen"
23
- }, Q = {
23
+ }, te = {
24
24
  key: 1,
25
25
  class: "dpiV3_innerTable"
26
- }, X = {
26
+ }, ie = {
27
27
  __name: "HomeTable",
28
- setup(Y) {
29
- const I = j(), l = W();
30
- E(), localStorage.getItem("dpi_duplicate"), g("");
31
- let m = u(() => l.getters["auth/getUserCatalogIds"]);
32
- g({
28
+ setup(le) {
29
+ var f, h, g, b;
30
+ const s = K();
31
+ F(), localStorage.getItem("dpi_duplicate"), y("");
32
+ const m = $();
33
+ y({
33
34
  loading: !1,
34
35
  message: "",
35
36
  confirm: () => null
36
37
  });
37
- const n = u(() => l.getters["auth/getUserDrafts"].sort((a, t) => (a.id ?? "").localeCompare(t.id ?? "", "de", { sensitivity: "base", numeric: !0 })));
38
- console.log(n);
39
- const S = u(() => l.getters["auth/getUserData"]);
40
- u(() => S.value.rtpToken);
41
- const H = (a) => l.dispatch("snackbar/showSnackbar", a);
42
- async function T(a) {
43
- const t = a.map((i) => R.get(`${I.api.baseUrl}search?facets={%22catalog%22:[%22${i}%22]}&filters=dataset&includes=title,modified,id,description,catalog&limit=1000`));
44
- return (await Promise.all(t)).flatMap((i) => i.data.result.results).sort((i, c) => (i.id ?? "").localeCompare(c.id ?? "", "de", { sensitivity: "base", numeric: !0 }));
45
- }
46
- const {
47
- state: p,
48
- execute: C,
49
- isLoading: P,
50
- error: f
51
- } = N(async () => T(m.value), [], { immediate: !1 });
52
- v(m, () => {
53
- var a;
54
- ((a = m.value) == null ? void 0 : a.length) > 0 && C();
55
- }, { immediate: !0 }), v(f, () => {
56
- console.error(f), H({
57
- message: f.message,
38
+ const d = r(() => s.getters["auth/getUserDrafts"].sort((t, i) => (t.id ?? "").localeCompare(i.id ?? "", "de", { sensitivity: "base", numeric: !0 })));
39
+ console.log(d);
40
+ const I = r(() => s.getters["auth/getUserData"]);
41
+ r(() => I.value.rtpToken);
42
+ const T = (t) => s.dispatch("snackbar/showSnackbar", t), x = r(() => {
43
+ var t, i;
44
+ return (i = (t = s.getters) == null ? void 0 : t["auth/getUserData"]) == null ? void 0 : i.authToken;
45
+ }), { useSearch: H } = j("https://twin.bydata.de/api/hub/search"), P = r(() => ({
46
+ Authorization: `Bearer ${x.value}`
47
+ })), { getSearchResultsEnhanced: E, isLoading: z, query: B } = H({
48
+ queryParams: {
49
+ limit: 100
50
+ },
51
+ additionalParams: {
52
+ accessControlPermissions: "edit,publish,delete"
53
+ },
54
+ headers: P
55
+ }), c = r(() => B.error.value);
56
+ U(c, () => {
57
+ console.error(c), T({
58
+ message: c.value.message,
58
59
  color: "error"
59
60
  });
60
61
  });
61
- const w = U(P, 500);
62
- return (a, t) => (s(), o("div", F, [
63
- r("div", K, [
64
- t[1] || (t[1] = r("h2", { class: "dpiV3_tableHeader" }, " Ihre Datensätze ", -1)),
65
- t[2] || (t[2] = r("div", { class: "dpiV3_dataset-information" }, [
66
- r("p", null, "Hier sehen Sie alle Datensätze, die Sie bearbeiten oder veröffentlichen können.")
62
+ const C = A(z, 500), u = r(() => (E.value || []).map((t) => ({
63
+ id: t.id,
64
+ title: t.title,
65
+ description: t.description,
66
+ modified: t.modified,
67
+ publicationStatus: t.publicationStatus,
68
+ visibility: t.accessLevel,
69
+ catalogId: t.catalogId,
70
+ catalog: { id: t.catalogId },
71
+ allowEdit: t.allowEdit,
72
+ allowPublish: t.allowPublish,
73
+ allowDelete: t.allowDelete
74
+ }))), { allowedToCreate: v } = G({
75
+ keycloak: ((h = (f = m.authentication) == null ? void 0 : f.keycloak) == null ? void 0 : h.url) || "https://keycloak.twin.bydata.de",
76
+ realm: ((b = (g = m.authentication) == null ? void 0 : g.keycloak) == null ? void 0 : b.realm) || "piveau",
77
+ audience: "piveau-hub-repo"
78
+ });
79
+ return (t, i) => (l(), a("div", O, [
80
+ o("div", Q, [
81
+ i[1] || (i[1] = o("h2", { class: "dpiV3_tableHeader" }, " Ihre Datensätze ", -1)),
82
+ i[2] || (i[2] = o("div", { class: "dpiV3_dataset-information" }, [
83
+ o("p", null, "Hier sehen Sie alle Datensätze, die Sie bearbeiten oder veröffentlichen können.")
67
84
  ], -1)),
68
- d(p).length === 0 && n.value.length === 0 ? (s(), o("p", M, t[0] || (t[0] = [
69
- h(" Willkommen im Data Provider Interface ✨ ", -1),
70
- r("br", null, null, -1),
71
- h("Beginnen Sie mit der Erstellung Ihres ersten Datensatzes! ", -1)
72
- ]))) : b("", !0),
73
- r("div", G, [
74
- _(A, { to: { name: "DataProviderInterface-Input", query: { locale: "de", edit: !1 }, params: { property: "datasets" } } }, {
75
- default: B(() => [
76
- _($, {
85
+ u.value.length === 0 && d.value.length === 0 ? (l(), a("p", X, i[0] || (i[0] = [
86
+ k(" Willkommen im Data Provider Interface ✨ ", -1),
87
+ o("br", null, null, -1),
88
+ k("Beginnen Sie mit der Erstellung Ihres ersten Datensatzes! ", -1)
89
+ ]))) : _("", !0),
90
+ o("div", Y, [
91
+ (l(), p(L(n(v) ? "RouterLink" : "span"), { to: { name: "DataProviderInterface-Input", query: { locale: "de", edit: !1 }, params: { property: "datasets" } } }, {
92
+ default: R(() => [
93
+ W(J, {
94
+ disabled: !n(v),
77
95
  "button-text": "Neuen Datensatz erstellen",
78
96
  size: "large"
79
- })
97
+ }, null, 8, ["disabled"])
80
98
  ]),
81
99
  _: 1
82
- })
100
+ }))
83
101
  ])
84
102
  ]),
85
- d(p).length > 0 || n.value.length > 0 ? (s(), o("div", J, [
86
- d(w) ? (s(), o("div", O, t[3] || (t[3] = [
87
- r("p", null, "Lädt Daten...", -1)
88
- ]))) : (s(), o("div", Q, [
89
- t[4] || (t[4] = L('<div class="dpiV3_tableHeadWrap" data-v-21dfcfb2><div class="dpiV3_thWrap" data-v-21dfcfb2><div scope="col" data-v-21dfcfb2><span data-v-21dfcfb2>Datensätze</span></div><div scope="col" class="dpiV3_statusHead" data-v-21dfcfb2><span data-v-21dfcfb2>Status</span></div></div><div class="dpiV3_blankCell" data-v-21dfcfb2></div></div>', 1)),
90
- r("div", null, [
91
- (s(!0), o(D, null, y(n.value, (e) => (s(), k(V, {
103
+ u.value.length > 0 || d.value.length > 0 ? (l(), a("div", Z, [
104
+ n(C) ? (l(), a("div", ee, i[3] || (i[3] = [
105
+ o("p", null, "Lädt Daten...", -1)
106
+ ]))) : (l(), a("div", te, [
107
+ i[4] || (i[4] = q('<div class="dpiV3_tableHeadWrap" data-v-71c76df7><div class="dpiV3_thWrap" data-v-71c76df7><div scope="col" data-v-71c76df7><span data-v-71c76df7>Datensätze</span></div><div scope="col" class="dpiV3_statusHead" data-v-71c76df7><span data-v-71c76df7>Status</span></div></div><div class="dpiV3_blankCell" data-v-71c76df7></div></div>', 1)),
108
+ o("div", null, [
109
+ (l(!0), a(w, null, D(d.value, (e) => (l(), p(S, {
92
110
  id: e.id,
93
111
  key: e.id,
94
112
  "data-cy": e,
95
113
  catalogue: e.catalog,
96
114
  text: e.title.de || e.title.en,
97
- date: e.modified ? d(x)(a.project.modified) : "-",
115
+ date: e != null && e.modified ? n(V)(e == null ? void 0 : e.modified) : "-",
98
116
  draft: "true",
99
117
  dataset: e
100
118
  }, null, 8, ["id", "data-cy", "catalogue", "text", "date", "dataset"]))), 128)),
101
- (s(!0), o(D, null, y(d(p), (e, z) => {
102
- var i, c;
103
- return s(), k(V, {
104
- key: e.id,
105
- text: ((i = e.title) == null ? void 0 : i.de) || ((c = e.title) == null ? void 0 : c.en) || "Kein Titel in englisch oder deutsch vohanden",
106
- date: e.modified ? d(x)(a.project.modified) : "-",
107
- dataset: e
108
- }, null, 8, ["text", "date", "dataset"]);
109
- }), 128))
119
+ (l(!0), a(w, null, D(u.value, (e, N) => (l(), p(S, {
120
+ id: e.id,
121
+ key: e.id ?? N,
122
+ text: e.title || "Kein Titel in englisch oder deutsch vohanden",
123
+ date: e != null && e.modified ? n(V)(e == null ? void 0 : e.modified) : "-",
124
+ dataset: e,
125
+ visibility: e.visibility,
126
+ draft: e.publicationStatus === "draft",
127
+ catalogue: e.catalogId,
128
+ "allow-edit": e.allowEdit,
129
+ "allow-publish": e.allowPublish,
130
+ "allow-delete": e.allowDelete
131
+ }, null, 8, ["id", "text", "date", "dataset", "visibility", "draft", "catalogue", "allow-edit", "allow-publish", "allow-delete"]))), 128))
110
132
  ])
111
133
  ]))
112
- ])) : b("", !0)
134
+ ])) : _("", !0)
113
135
  ]));
114
136
  }
115
- }, me = /* @__PURE__ */ q(X, [["__scopeId", "data-v-21dfcfb2"]]);
137
+ }, ge = /* @__PURE__ */ M(ie, [["__scopeId", "data-v-71c76df7"]]);
116
138
  export {
117
- me as default
139
+ ge as default
118
140
  };
@@ -1,97 +1,7 @@
1
- import { ref as u, computed as l, watch as v, createElementBlock as o, openBlock as s, createElementVNode as a, createVNode as f, withCtx as P, unref as b, createStaticVNode as D, Fragment as S, renderList as x, createBlock as H } from "vue";
2
- import { useAsyncState as I, useDebounce as w } from "@vueuse/core";
3
- import "axios";
4
- import "jquery";
5
- import { useRouter as T } from "vue-router";
6
- import { useStore as j } from "vuex";
7
- import { useRuntimeEnv as B } from "../../composables/useRuntimeEnv.js";
8
- import L from "../../widgets/AppLink.vue.js";
9
- import N from "./ui/ButtonV3.vue.js";
10
- import C from "./ui/TableRowV3.vue.js";
11
- import { formatDate as E } from "../utils/formatDate.js";
1
+ import o from "./ProjectTable.vue2.js";
12
2
  /* empty css */
13
- import A from "../../../../../_virtual/_plugin-vue_export-helper.js";
14
- const R = { class: "dpiV3_dpiHome V3-typography" }, U = { class: "dpiV3_homeHeadWrap" }, W = { class: "interactionButtonsDPIHome" }, q = { class: "dpiV3_table" }, z = {
15
- key: 0,
16
- class: "loading-screen"
17
- }, F = {
18
- key: 1,
19
- class: "dpiV3_innerTable"
20
- }, K = {
21
- __name: "ProjectTable",
22
- setup(M) {
23
- B();
24
- const d = j();
25
- T(), localStorage.getItem("dpi_duplicate"), u("");
26
- let r = l(() => d.getters["auth/getUserCatalogIds"]);
27
- u({
28
- loading: !1,
29
- message: "",
30
- confirm: () => null
31
- });
32
- const _ = l(() => d.getters["auth/getUserData"]);
33
- l(() => _.value.rtpToken);
34
- const g = (i) => d.dispatch("snackbar/showSnackbar", i);
35
- function c(i) {
36
- return [
37
- { id: 1, title: { de: "Test-Projekt A" }, modified: Date.now(), visibility: "Öffentlich" },
38
- { id: 2, title: { en: "Mock Project B" }, modified: Date.now(), visibility: "Eingeschränkt" }
39
- ];
40
- }
41
- const {
42
- state: G,
43
- execute: h,
44
- isLoading: k,
45
- error: n
46
- } = I(async () => c(r.value), [], { immediate: !1 });
47
- v(r, () => {
48
- var i;
49
- ((i = r.value) == null ? void 0 : i.length) > 0 && h();
50
- }, { immediate: !0 }), v(n, () => {
51
- console.error(n), g({
52
- message: n.message,
53
- color: "error"
54
- });
55
- });
56
- const V = w(k, 500);
57
- return (i, e) => (s(), o("div", R, [
58
- a("div", U, [
59
- e[0] || (e[0] = a("h2", { class: "dpiV3_tableHeader" }, " Ihre Projekte ", -1)),
60
- e[1] || (e[1] = a("p", null, "Hier sehen Sie alle Projekte, die Sie bearbeiten oder veröffentlichen können.", -1)),
61
- a("div", W, [
62
- f(L, { to: { name: "DataProviderInterface-InputProject", query: { locale: "de", edit: !1 }, params: { property: "datasets" } } }, {
63
- default: P(() => [
64
- f(N, {
65
- "button-text": "Neues Projekt erstellen",
66
- size: "large"
67
- })
68
- ]),
69
- _: 1
70
- })
71
- ])
72
- ]),
73
- a("div", q, [
74
- b(V) ? (s(), o("div", z, e[2] || (e[2] = [
75
- a("p", null, "Lädt Daten...", -1)
76
- ]))) : (s(), o("div", F, [
77
- e[3] || (e[3] = D('<div class="dpiV3_tableHeadWrap" data-v-5a97bada><div class="dpiV3_thWrap" data-v-5a97bada><div scope="col" data-v-5a97bada><span data-v-5a97bada>Name</span></div><div scope="col" class="dpiV3_statusHead" data-v-5a97bada><span data-v-5a97bada>Status</span></div><div scope="col" class="dpiV3_statusHead" data-v-5a97bada><span data-v-5a97bada>Sichtbarkeit</span></div></div><div class="dpiV3_blankCell" data-v-5a97bada></div></div>', 1)),
78
- a("div", null, [
79
- (s(!0), o(S, null, x(c(), (t, y) => {
80
- var p, m;
81
- return s(), H(C, {
82
- key: t.id ?? y,
83
- text: ((p = t.title) == null ? void 0 : p.de) || ((m = t.title) == null ? void 0 : m.en) || "Kein Titel in englisch oder deutsch vohanden",
84
- date: t.modified ? b(E)(t.modified) : "-",
85
- dataset: t,
86
- visibility: t.visibility
87
- }, null, 8, ["text", "date", "dataset", "visibility"]);
88
- }), 128))
89
- ])
90
- ]))
91
- ])
92
- ]));
93
- }
94
- }, de = /* @__PURE__ */ A(K, [["__scopeId", "data-v-5a97bada"]]);
3
+ import t from "../../../../../_virtual/_plugin-vue_export-helper.js";
4
+ const e = /* @__PURE__ */ t(o, [["__scopeId", "data-v-1cfd553a"]]);
95
5
  export {
96
- de as default
6
+ e as default
97
7
  };
@@ -0,0 +1,128 @@
1
+ import { defineComponent as H, ref as b, computed as i, watch as C, createElementBlock as n, openBlock as s, createElementVNode as o, createBlock as g, resolveDynamicComponent as N, unref as r, withCtx as x, createVNode as B, createStaticVNode as L, Fragment as U, renderList as R } from "vue";
2
+ import { whenever as q, useDebounce as W } from "@vueuse/core";
3
+ import "axios";
4
+ import "jquery";
5
+ import { useRouter as $ } from "vue-router";
6
+ import { useStore as z } from "vuex";
7
+ import { useRuntimeEnv as F } from "../../composables/useRuntimeEnv.js";
8
+ import { useErrorDialog as J } from "../composables/useErrorDialog.js";
9
+ import { useProjectSearch as O } from "../composables/useTwinbyHome.js";
10
+ import { useTwinbyUser as A } from "../composables/useTwinbyUser.js";
11
+ import { formatDate as K } from "../utils/formatDate.js";
12
+ import G from "./ui/ButtonV3.vue.js";
13
+ import M from "./ui/TableRowV3.vue.js";
14
+ const Q = { class: "dpiV3_dpiHome V3-typography" }, X = { class: "dpiV3_homeHeadWrap" }, Y = { class: "interactionButtonsDPIHome" }, Z = { class: "dpiV3_table" }, j = {
15
+ key: 0,
16
+ class: "loading-screen"
17
+ }, ee = {
18
+ key: 1,
19
+ class: "dpiV3_innerTable"
20
+ }, fe = /* @__PURE__ */ H({
21
+ __name: "ProjectTable",
22
+ setup(ae) {
23
+ var p, v, f, h;
24
+ const u = F(), d = z();
25
+ $(), localStorage.getItem("dpi_duplicate"), b(""), i(() => d.getters["auth/getUserCatalogIds"]), b({
26
+ loading: !1,
27
+ message: "",
28
+ confirm: () => null
29
+ });
30
+ const k = i(() => d.getters["auth/getUserData"]);
31
+ i(() => k.value.rtpToken);
32
+ const w = (t) => d.dispatch("snackbar/showSnackbar", t), _ = i(() => {
33
+ var t, e;
34
+ return (e = (t = d.getters) == null ? void 0 : t["auth/getUserData"]) == null ? void 0 : e.authToken;
35
+ }), { useSearch: y } = O(u.api.baseUrl), m = i(() => ({
36
+ Authorization: `Bearer ${_.value}`
37
+ })), { getSearchResultsEnhanced: S, isLoading: P, query: V } = y({
38
+ queryParams: {
39
+ limit: 100
40
+ },
41
+ additionalParams: {
42
+ resource: "project",
43
+ accessControlPermissions: "edit,publish,delete"
44
+ },
45
+ headers: m
46
+ }), l = i(() => V.error.value), { openErrorDialog: D } = J();
47
+ q(l, () => {
48
+ if (!l.value)
49
+ return;
50
+ const t = new Error(`${JSON.stringify(l.value)}
51
+
52
+ ${JSON.stringify(m.value)}`);
53
+ D(t, "Fehler beim Laden der Projekte");
54
+ });
55
+ const { allowedToCreate: c } = A({
56
+ keycloak: ((v = (p = u.authentication) == null ? void 0 : p.keycloak) == null ? void 0 : v.url) || "https://keycloak.twin.bydata.de",
57
+ realm: ((h = (f = u.authentication) == null ? void 0 : f.keycloak) == null ? void 0 : h.realm) || "piveau",
58
+ audience: "piveau-hub-repo"
59
+ }), E = i(() => {
60
+ var t;
61
+ return (t = S.value) == null ? void 0 : t.map((e) => ({
62
+ id: e.id,
63
+ title: e.title,
64
+ modified: e.modified,
65
+ publicationStatus: e.publicationStatus,
66
+ visibility: e.accessLevel,
67
+ catalogId: e.catalogId,
68
+ allowEdit: e.allowEdit,
69
+ allowPublish: e.allowPublish,
70
+ allowDelete: e.allowDelete
71
+ }));
72
+ });
73
+ C(l, () => {
74
+ console.error(l), w({
75
+ message: l.value.message,
76
+ color: "error"
77
+ });
78
+ });
79
+ const I = W(P, 500);
80
+ return (t, e) => (s(), n("div", Q, [
81
+ o("div", X, [
82
+ e[0] || (e[0] = o("h2", { class: "dpiV3_tableHeader" }, " Ihre Projekte ", -1)),
83
+ e[1] || (e[1] = o("p", null, "Hier sehen Sie alle Projekte, die Sie bearbeiten oder veröffentlichen können.", -1)),
84
+ o("div", Y, [
85
+ (s(), g(N(r(c) ? "RouterLink" : "span"), {
86
+ disabled: !r(c),
87
+ to: { name: "DataProviderInterface-InputProject", query: { locale: "de", edit: !1 }, params: { property: "datasets" } }
88
+ }, {
89
+ default: x(() => [
90
+ B(G, {
91
+ disabled: !r(c),
92
+ "button-text": "Neues Projekt erstellen",
93
+ size: "large"
94
+ }, null, 8, ["disabled"])
95
+ ]),
96
+ _: 1
97
+ }, 8, ["disabled"]))
98
+ ])
99
+ ]),
100
+ o("div", Z, [
101
+ r(I) ? (s(), n("div", j, e[2] || (e[2] = [
102
+ o("p", null, "Lädt Daten...", -1)
103
+ ]))) : (s(), n("div", ee, [
104
+ e[3] || (e[3] = L('<div class="dpiV3_tableHeadWrap" data-v-1cfd553a><div class="dpiV3_thWrap" data-v-1cfd553a><div scope="col" data-v-1cfd553a><span data-v-1cfd553a>Name</span></div><div scope="col" class="dpiV3_statusHead" data-v-1cfd553a><span data-v-1cfd553a>Status</span></div><div scope="col" class="dpiV3_statusHead" data-v-1cfd553a><span data-v-1cfd553a>Sichtbarkeit</span></div></div><div class="dpiV3_blankCell" data-v-1cfd553a></div></div>', 1)),
105
+ o("div", null, [
106
+ (s(!0), n(U, null, R(E.value, (a, T) => (s(), g(M, {
107
+ id: a.id,
108
+ key: a.id ?? T,
109
+ type: "project",
110
+ text: a.title || "Kein Titel in englisch oder deutsch vohanden",
111
+ date: a.modified ? r(K)(a.modified) : "-",
112
+ dataset: a,
113
+ visibility: a.visibility,
114
+ draft: a.publicationStatus === "draft",
115
+ catalogue: a.catalogId,
116
+ "allow-edit": a.allowEdit,
117
+ "allow-publish": a.allowPublish,
118
+ "allow-delete": a.allowDelete
119
+ }, null, 8, ["id", "text", "date", "dataset", "visibility", "draft", "catalogue", "allow-edit", "allow-publish", "allow-delete"]))), 128))
120
+ ])
121
+ ]))
122
+ ])
123
+ ]));
124
+ }
125
+ });
126
+ export {
127
+ fe as default
128
+ };
@@ -1,106 +1,76 @@
1
- import c from "axios";
1
+ import o from "axios";
2
2
  const u = async (a) => {
3
3
  try {
4
4
  let e = `${a}vocabularies/hvd-category`;
5
- return (await c.get(e)).data.result.results;
5
+ return (await o.get(e)).data.result.results;
6
6
  } catch (e) {
7
7
  throw console.error("Error fetching HVD categories:", e), e;
8
8
  }
9
- }, g = async (a) => {
9
+ }, i = async (a) => {
10
10
  try {
11
11
  let e = `${a}vocabularies/data-theme`;
12
- return (await c.get(e)).data.result.results;
12
+ return (await o.get(e)).data.result.results;
13
13
  } catch (e) {
14
14
  throw console.error("Error fetching Dataset categories:", e), e;
15
15
  }
16
- }, d = async (a) => {
16
+ }, g = async (a) => {
17
17
  try {
18
18
  let e = `${a}vocabularies/file-type`;
19
- return (await c.get(e, {
19
+ return (await o.get(e, {
20
20
  headers: { Accept: "application/json" }
21
21
  })).data.result;
22
22
  } catch (e) {
23
23
  throw console.error("Error fetching file types:", e), e;
24
24
  }
25
- }, n = async (a) => {
26
- let e = [
27
- "district-key",
28
- "government-district-key",
29
- "municipal-association-key",
30
- "municipality-key",
31
- "regional-key",
32
- "state-key"
33
- ], t = [], l = [];
34
- try {
35
- let s = `${a}vocabularies/political-geocoding-level`;
36
- const r = await c.get(s);
37
- for (let o = 0; o < r.data.result.results.length; o++)
38
- l.push(
39
- await c.get(
40
- `${a}vocabularies/political-geocoding-` + e[o]
41
- )
42
- ), t.push({
43
- headers: e[o],
44
- list: l[o].data.result.results
45
- });
46
- return t;
47
- } catch (s) {
48
- throw console.error("Error fetching Dataset categories:", s), s;
49
- }
50
- }, h = async (a, e) => (await n(e)).map((s) => {
51
- const r = s.list.filter(
52
- (o) => o.alt_label && o.alt_label.de && o.alt_label.de.includes(a)
53
- );
54
- return { ...s, list: r };
55
- }).filter((s) => s.list.length > 0), p = async (a, e, t) => {
56
- let l = [];
25
+ }, h = async (a, e, t) => {
26
+ let s = [];
57
27
  try {
58
- let s = `${e}vocabularies/${t}`;
59
- return l = (await c.get(s)).data.result.results, l;
60
- } catch (s) {
61
- throw console.error("Error fetching Dataset categories:", s), s;
28
+ let l = `${e}vocabularies/${t}`;
29
+ return s = (await o.get(l)).data.result.results, s;
30
+ } catch (l) {
31
+ throw console.error("Error fetching Dataset categories:", l), l;
62
32
  }
63
- }, y = async (a) => {
33
+ }, d = async (a) => {
64
34
  try {
65
35
  let e = `${a}vocabularies/planned-availability`;
66
- return (await c.get(e)).data.result.results.map((l) => ({
67
- value: l.id,
68
- label: l.pref_label.de,
69
- uri: l.resource
36
+ return (await o.get(e)).data.result.results.map((s) => ({
37
+ value: s.id,
38
+ label: s.pref_label.de,
39
+ uri: s.resource
70
40
  }));
71
41
  } catch (e) {
72
42
  throw console.error("Error fetching planned availability:", e), e;
73
43
  }
74
- }, b = async (a, e = "de") => {
44
+ }, p = async (a, e = "de") => {
75
45
  try {
76
- let t = `${a}vocabularies/language`, s = (await c.get(t)).data.result.results.map((r) => ({
46
+ let t = `${a}vocabularies/language`, l = (await o.get(t)).data.result.results.map((r) => ({
77
47
  value: r.id,
78
48
  label: `${r.pref_label[e] || r.pref_label.en || r.id} (${r.id})`,
79
49
  uri: r.resource
80
50
  }));
81
- return s.sort((r, o) => r.label.localeCompare(o.label, e)), s;
51
+ return l.sort((r, c) => r.label.localeCompare(c.label, e)), l;
82
52
  } catch (t) {
83
53
  throw console.error("Error fetching languages:", t), t;
84
54
  }
85
- }, f = async (a, e = "de") => {
55
+ }, b = async (a, e = "de") => {
86
56
  try {
87
57
  let t = `${a}vocabularies/licenses`;
88
- return (await c.get(t)).data.result.results.map((r) => {
89
- var o;
58
+ return (await o.get(t)).data.result.results.map((r) => {
59
+ var c;
90
60
  return {
91
61
  value: r.id,
92
62
  label: r.pref_label[e] || r.pref_label.en || r.id,
93
- homepage: ((o = r.extensions) == null ? void 0 : o.foaf_homepage) || null,
63
+ homepage: ((c = r.extensions) == null ? void 0 : c.foaf_homepage) || null,
94
64
  uri: r.resource
95
65
  };
96
66
  });
97
67
  } catch (t) {
98
68
  throw console.error("Error fetching licenses:", t), t;
99
69
  }
100
- }, v = async (a, e = "de") => {
70
+ }, y = async (a, e = "de") => {
101
71
  try {
102
72
  let t = `${a}vocabularies/dataset-status`;
103
- return (await c.get(t)).data.result.results.map((r) => ({
73
+ return (await o.get(t)).data.result.results.map((r) => ({
104
74
  value: r.id,
105
75
  label: r.pref_label[e] || r.pref_label.en || r.id,
106
76
  resource: r.resource || null
@@ -108,10 +78,10 @@ const u = async (a) => {
108
78
  } catch (t) {
109
79
  throw console.error("Error fetching dataset status:", t), t;
110
80
  }
111
- }, w = async (a, e = "en") => {
81
+ }, f = async (a, e = "en") => {
112
82
  try {
113
83
  let t = `${a}vocabularies/spdx-checksum-algorithm`;
114
- return (await c.get(t)).data.result.results.map((r) => ({
84
+ return (await o.get(t)).data.result.results.map((r) => ({
115
85
  value: r.id,
116
86
  label: r.pref_label[e] || r.pref_label.en || r.id,
117
87
  resource: r.resource || null
@@ -121,15 +91,13 @@ const u = async (a) => {
121
91
  }
122
92
  };
123
93
  export {
124
- h as filterGeocodingURIs,
125
- w as getChecksumAlgorithms,
126
- g as getDatasetCategories,
127
- v as getDatasetStatus,
128
- d as getFileTypes,
129
- n as getGeocodingURIs,
94
+ f as getChecksumAlgorithms,
95
+ i as getDatasetCategories,
96
+ y as getDatasetStatus,
97
+ g as getFileTypes,
130
98
  u as getHvdCategories,
131
- b as getLanguages,
132
- f as getLicenses,
133
- p as getOptionalURIs,
134
- y as getPlannedAvailability
99
+ p as getLanguages,
100
+ b as getLicenses,
101
+ h as getOptionalURIs,
102
+ d as getPlannedAvailability
135
103
  };
@@ -1,7 +1,7 @@
1
1
  import o from "./AutocompleteVocab.vue2.js";
2
2
  /* empty css */
3
3
  import t from "../../../../../../../_virtual/_plugin-vue_export-helper.js";
4
- const p = /* @__PURE__ */ t(o, [["__scopeId", "data-v-4af4c780"]]);
4
+ const a = /* @__PURE__ */ t(o, [["__scopeId", "data-v-8f258b94"]]);
5
5
  export {
6
- p as default
6
+ a as default
7
7
  };