@piveau/dpi 0.2.0-alpha.12 → 0.2.0-alpha.14
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.
- package/dist/assets/dpi.css +1 -1
- package/dist/packages/dpi/src/data-provider-interface/DataProviderInterface.vue2.js +48 -47
- package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/HomeTable.vue.js +74 -71
- package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ProjectTable.vue.js +4 -94
- package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ProjectTable.vue2.js +104 -0
- package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/services/dpiV3_apis.js +1 -1
- package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/Autocomplete/AutocompleteVocab.vue.js +2 -2
- package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/Autocomplete/AutocompleteVocab.vue2.js +64 -52
- package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/BasicInfosStep/ProjectNameStep.vue.js +8 -8
- package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/DpiModalBase.vue.js +2 -2
- package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/DpiModalBase.vue2.js +1 -1
- package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/Findability/CategoriesStep.vue.js +2 -2
- package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/Findability/CategoriesStep.vue2.js +4 -4
- package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/OptionalDataStep/OptionalDataStep.vue.js +2 -2
- package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/OptionalDataStep/OptionalDataStep.vue2.js +21 -21
- package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ProcessSteps/DatasetStep.vue.js +2 -2
- package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ProcessSteps/DatasetStep.vue2.js +73 -71
- package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ProcessSteps/GetResource.vue.js +4 -4
- package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ProcessSteps/HardwareForm.vue.js +2 -2
- package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ProcessSteps/HardwareStep.vue.js +2 -2
- package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ProcessSteps/HardwareStep.vue2.js +133 -131
- package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ProcessSteps/SoftwareStep.vue.js +2 -2
- package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ProcessSteps/SoftwareStep.vue2.js +85 -83
- package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ReviewStep/ReviewStep.vue.js +2 -2
- package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/ReviewStep/ReviewStep.vue2.js +4 -4
- package/dist/packages/dpi/src/data-provider-interface/HappyFlowComponents/ui/TableRowV3.vue.js +179 -133
- package/dist/packages/dpi/src/data-provider-interface/components/DistLicense.vue.js +224 -133
- package/dist/packages/dpi/src/data-provider-interface/components/StepActionsSection.vue.js +2 -2
- package/dist/packages/dpi/src/data-provider-interface/components/StepActionsSection.vue2.js +111 -91
- package/dist/packages/dpi/src/data-provider-interface/components/TheCancelConfirmationDialog.vue.js +3 -3
- package/dist/packages/dpi/src/data-provider-interface/components/TheCancelConfirmationDialog.vue2.js +24 -19
- package/dist/packages/dpi/src/data-provider-interface/components/VisibilityPage.vue.js +106 -0
- package/dist/packages/dpi/src/data-provider-interface/components/dev-tools/ProjectDpiDevTools.vue.js +2 -2
- package/dist/packages/dpi/src/data-provider-interface/components/dev-tools/ProjectDpiDevTools.vue2.js +137 -94
- package/dist/packages/dpi/src/data-provider-interface/composables/project-transformer/decodeProject.js +152 -135
- package/dist/packages/dpi/src/data-provider-interface/composables/project-transformer/encodeProject.js +201 -164
- package/dist/packages/dpi/src/data-provider-interface/composables/useDpiContext.js +9 -10
- package/dist/packages/dpi/src/data-provider-interface/composables/useDpiEditMode.js +88 -66
- package/dist/packages/dpi/src/data-provider-interface/composables/useDpiSimpleLoader.js +274 -273
- package/dist/packages/dpi/src/data-provider-interface/composables/useDpiStepper.js +33 -32
- package/dist/packages/dpi/src/data-provider-interface/composables/useDpiUtils.js +18 -9
- package/dist/packages/dpi/src/data-provider-interface/composables/useProjectActions.js +65 -0
- package/dist/packages/dpi/src/data-provider-interface/composables/useTwinbyHome.js +50 -0
- package/dist/packages/dpi/src/data-provider-interface/config/dcatapdeHappyFlow/input-definition.js +4 -0
- package/dist/packages/dpi/src/data-provider-interface/config/dcatapdeHappyFlow/page-content-config.js +1 -1
- package/dist/packages/dpi/src/data-provider-interface/schema/projectLdSchema.js +48 -45
- package/dist/packages/dpi/src/data-provider-interface/views/InputPage.vue.js +276 -251
- package/dist/packages/dpi/src/data-provider-interface/views/InputPageProject.vue.js +386 -397
- package/dist/packages/dpi/src/form/inputDefinitions.js +15 -10
- package/dist/packages/dpi/src/utils/schema/schemaProject.js +210 -0
- package/dist/packages/dpi/src/utils/schema/shared.js +23 -0
- package/package.json +3 -3
|
@@ -9,22 +9,23 @@ import m from "../data-provider-interface/components/ConditionalInput.vue.js";
|
|
|
9
9
|
import r from "../data-provider-interface/components/SimpleSelect.vue.js";
|
|
10
10
|
import c from "../data-provider-interface/components/SimpleInput.vue.js";
|
|
11
11
|
import a from "../data-provider-interface/components/SimpleAccessURLInput.vue.js";
|
|
12
|
-
import
|
|
13
|
-
import
|
|
12
|
+
import g from "../data-provider-interface/components/HappyFlowLandingPage.vue.js";
|
|
13
|
+
import u from "../data-provider-interface/components/DiscoverabilityPage.vue.js";
|
|
14
14
|
import f from "../data-provider-interface/components/HVDPage.vue.js";
|
|
15
15
|
import s from "../data-provider-interface/components/BasicInfosPage.vue.js";
|
|
16
16
|
import l from "../data-provider-interface/components/CoveringPage.vue.js";
|
|
17
17
|
import y from "../data-provider-interface/components/DistributionSimplePage.vue.js";
|
|
18
18
|
import d from "../data-provider-interface/components/ReviewAndPublishPage.vue.js";
|
|
19
19
|
import P from "../data-provider-interface/components/dpiV3Description.vue.js";
|
|
20
|
-
import
|
|
21
|
-
import
|
|
20
|
+
import b from "../data-provider-interface/components/TitelPage.vue.js";
|
|
21
|
+
import _ from "../data-provider-interface/components/UpdateDate.vue.js";
|
|
22
22
|
import v from "../data-provider-interface/components/PublisherPage.vue.js";
|
|
23
23
|
import D from "../data-provider-interface/components/ContactPage.vue.js";
|
|
24
24
|
import h from "../data-provider-interface/components/TempResPage.vue.js";
|
|
25
25
|
import I from "../data-provider-interface/components/PolGeoUriPage.vue.js";
|
|
26
26
|
import R from "../data-provider-interface/components/DistLicense.vue.js";
|
|
27
|
-
|
|
27
|
+
import U from "../data-provider-interface/components/VisibilityPage.vue.js";
|
|
28
|
+
const Z = {
|
|
28
29
|
repeatable: {
|
|
29
30
|
type: "list",
|
|
30
31
|
component: o
|
|
@@ -67,27 +68,31 @@ const X = {
|
|
|
67
68
|
},
|
|
68
69
|
happyFlowLandingPage: {
|
|
69
70
|
type: "group",
|
|
70
|
-
component:
|
|
71
|
+
component: g
|
|
71
72
|
},
|
|
72
73
|
discoverabilityPage: {
|
|
73
74
|
type: "group",
|
|
74
|
-
component:
|
|
75
|
+
component: u
|
|
75
76
|
},
|
|
76
77
|
hvdPage: {
|
|
77
78
|
type: "group",
|
|
78
79
|
component: f
|
|
79
80
|
},
|
|
81
|
+
visibilityPage: {
|
|
82
|
+
type: "group",
|
|
83
|
+
component: U
|
|
84
|
+
},
|
|
80
85
|
basicInfosPage: {
|
|
81
86
|
type: "group",
|
|
82
87
|
component: s
|
|
83
88
|
},
|
|
84
89
|
"dct:title": {
|
|
85
90
|
type: "input",
|
|
86
|
-
component:
|
|
91
|
+
component: b
|
|
87
92
|
},
|
|
88
93
|
"dct:modified": {
|
|
89
94
|
type: "input",
|
|
90
|
-
component:
|
|
95
|
+
component: _
|
|
91
96
|
},
|
|
92
97
|
"dct:publisher": {
|
|
93
98
|
type: "group",
|
|
@@ -127,5 +132,5 @@ const X = {
|
|
|
127
132
|
}
|
|
128
133
|
};
|
|
129
134
|
export {
|
|
130
|
-
|
|
135
|
+
Z as default
|
|
131
136
|
};
|
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
import * as r from "zod";
|
|
2
|
+
import { schemaBaseWithDescription as t } from "./shared.js";
|
|
3
|
+
const i = t.extend({
|
|
4
|
+
/**
|
|
5
|
+
* The financial resources allocated or required for the project.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* {
|
|
9
|
+
* "amount": "5000000",
|
|
10
|
+
* "currency": "EUR"
|
|
11
|
+
* }
|
|
12
|
+
*/
|
|
13
|
+
budget: r.object({
|
|
14
|
+
amount: r.string(),
|
|
15
|
+
currency: r.string()
|
|
16
|
+
}).nullable().optional(),
|
|
17
|
+
/**
|
|
18
|
+
* The skill sets or expertise needed (e.g., data science, IoT, urban planning).
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ["IoT", "Data Science", "Urban Planning"]
|
|
22
|
+
*/
|
|
23
|
+
required_skills: r.array(r.string()).nullable().optional(),
|
|
24
|
+
/**
|
|
25
|
+
* Start/end dates or milestones for the project.
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* "start_date": "2025-01-01",
|
|
29
|
+
* "end_date": "2027-12-31"
|
|
30
|
+
*/
|
|
31
|
+
start_date: r.string(),
|
|
32
|
+
end_date: r.string(),
|
|
33
|
+
/**
|
|
34
|
+
* Indicates whether the project is in planning, active, or completed.
|
|
35
|
+
*/
|
|
36
|
+
status: r.string().nullable().optional(),
|
|
37
|
+
/**
|
|
38
|
+
* The steps or phases required to execute the project (e.g., data processing, visualization).
|
|
39
|
+
*
|
|
40
|
+
* @example
|
|
41
|
+
* ["PS-2025-001", "PS-2025-002", "PS-2025-003", "PS-2025-004"]
|
|
42
|
+
*/
|
|
43
|
+
linked_process_steps: r.array(r.string()).nullable().optional(),
|
|
44
|
+
/**
|
|
45
|
+
* The entity (local government) carrying out or sponsoring the project.
|
|
46
|
+
*
|
|
47
|
+
* @example
|
|
48
|
+
* {
|
|
49
|
+
* "id": "ORG-HAAR-001"
|
|
50
|
+
* }
|
|
51
|
+
*/
|
|
52
|
+
linked_organisation: r.object({ id: r.string() }).nullable().optional(),
|
|
53
|
+
/**
|
|
54
|
+
* Links to project proposals, status reports, or final summaries.
|
|
55
|
+
*
|
|
56
|
+
* @example
|
|
57
|
+
* ["https://example.org/documents/SC-2025-001-proposal.pdf", "https://example.org/documents/SC-2025-001-final-report.pdf"]
|
|
58
|
+
*/
|
|
59
|
+
documentation: r.array(r.string()).nullable().optional(),
|
|
60
|
+
// Array of category objects describing dataset classification
|
|
61
|
+
categories: r.array(
|
|
62
|
+
r.object({
|
|
63
|
+
// Unique category ID
|
|
64
|
+
id: r.string(),
|
|
65
|
+
// Localized labels keyed by language code, e.g. { en: "Health", de: "Gesundheit" }
|
|
66
|
+
label: r.record(r.string()),
|
|
67
|
+
// Resource or namespace the category belongs to
|
|
68
|
+
resource: r.string()
|
|
69
|
+
})
|
|
70
|
+
),
|
|
71
|
+
// List of use case identifiers or names relevant to this dataset
|
|
72
|
+
use_cases: r.array(r.string()),
|
|
73
|
+
// ISO 8601 timestamp string representing last modification date of dataset
|
|
74
|
+
modified: r.string(),
|
|
75
|
+
/**
|
|
76
|
+
* Describes a set of organizational steps including questions and reference materials.
|
|
77
|
+
*/
|
|
78
|
+
organizational_process_steps: r.array(
|
|
79
|
+
r.object({
|
|
80
|
+
/**
|
|
81
|
+
* Unique identifier of the question block.
|
|
82
|
+
*/
|
|
83
|
+
identifier: r.string(),
|
|
84
|
+
order: r.number(),
|
|
85
|
+
/**
|
|
86
|
+
* Identifier of a preceding question block, if any.
|
|
87
|
+
*/
|
|
88
|
+
preceded_by: r.string().optional(),
|
|
89
|
+
/**
|
|
90
|
+
* Phase or step name within the organizational process.
|
|
91
|
+
*/
|
|
92
|
+
phase: r.string(),
|
|
93
|
+
/**
|
|
94
|
+
* List of questions with corresponding answers.
|
|
95
|
+
*/
|
|
96
|
+
questions: r.array(
|
|
97
|
+
r.object({
|
|
98
|
+
answer: r.string(),
|
|
99
|
+
question: r.string(),
|
|
100
|
+
order: r.number()
|
|
101
|
+
})
|
|
102
|
+
),
|
|
103
|
+
/**
|
|
104
|
+
* Optional references related to this process step.
|
|
105
|
+
*/
|
|
106
|
+
references: r.array(
|
|
107
|
+
r.object({
|
|
108
|
+
description: r.string(),
|
|
109
|
+
title: r.string(),
|
|
110
|
+
type: r.string(),
|
|
111
|
+
url: r.string()
|
|
112
|
+
})
|
|
113
|
+
).nullable().optional()
|
|
114
|
+
})
|
|
115
|
+
),
|
|
116
|
+
/**
|
|
117
|
+
* Optional list of reference documents like descriptions, links, or attachments.
|
|
118
|
+
*
|
|
119
|
+
* @example
|
|
120
|
+
* [
|
|
121
|
+
* {
|
|
122
|
+
* "description": "Project Proposal",
|
|
123
|
+
* "title": "SC-2025-001 Proposal",
|
|
124
|
+
* "type": "PDF",
|
|
125
|
+
* "url": "https://example.org/documents/SC-2025-001-proposal.pdf"
|
|
126
|
+
* }
|
|
127
|
+
* ]
|
|
128
|
+
*/
|
|
129
|
+
references: r.array(
|
|
130
|
+
r.object({
|
|
131
|
+
/**
|
|
132
|
+
* Short description of the reference.
|
|
133
|
+
*
|
|
134
|
+
* @example "Project Proposal"
|
|
135
|
+
*/
|
|
136
|
+
description: r.string(),
|
|
137
|
+
/**
|
|
138
|
+
* Title of the document or resource.
|
|
139
|
+
*
|
|
140
|
+
* @example "SC-2025-001 Proposal"
|
|
141
|
+
*/
|
|
142
|
+
title: r.string(),
|
|
143
|
+
/**
|
|
144
|
+
* Type or format of the document.
|
|
145
|
+
*
|
|
146
|
+
* @example "PDF"
|
|
147
|
+
*/
|
|
148
|
+
type: r.string(),
|
|
149
|
+
/**
|
|
150
|
+
* Direct link to the referenced document.
|
|
151
|
+
*
|
|
152
|
+
* @example "https://example.org/documents/SC-2025-001-proposal.pdf"
|
|
153
|
+
*/
|
|
154
|
+
url: r.string()
|
|
155
|
+
})
|
|
156
|
+
).nullable().optional(),
|
|
157
|
+
technical_process_steps: r.array(
|
|
158
|
+
r.object({
|
|
159
|
+
activity: r.string(),
|
|
160
|
+
description: r.record(r.string()),
|
|
161
|
+
identifier: r.string(),
|
|
162
|
+
methods_used: r.array(
|
|
163
|
+
r.object({
|
|
164
|
+
name: r.string(),
|
|
165
|
+
description: r.string()
|
|
166
|
+
})
|
|
167
|
+
),
|
|
168
|
+
references: r.array(
|
|
169
|
+
r.object({
|
|
170
|
+
description: r.string(),
|
|
171
|
+
title: r.string(),
|
|
172
|
+
type: r.string(),
|
|
173
|
+
url: r.string()
|
|
174
|
+
})
|
|
175
|
+
).optional(),
|
|
176
|
+
use_case: r.string()
|
|
177
|
+
})
|
|
178
|
+
),
|
|
179
|
+
catalog: r.object({
|
|
180
|
+
id: r.string(),
|
|
181
|
+
is_part_of: r.string(),
|
|
182
|
+
publisher: r.object({
|
|
183
|
+
name: r.string(),
|
|
184
|
+
type: r.string(),
|
|
185
|
+
homepage: r.string(),
|
|
186
|
+
email: r.string()
|
|
187
|
+
})
|
|
188
|
+
}).optional(),
|
|
189
|
+
partners: r.array(
|
|
190
|
+
r.object({
|
|
191
|
+
name: r.string(),
|
|
192
|
+
homepage: r.string()
|
|
193
|
+
})
|
|
194
|
+
),
|
|
195
|
+
contact: r.array(
|
|
196
|
+
r.object({
|
|
197
|
+
type: r.string(),
|
|
198
|
+
telephone: r.string(),
|
|
199
|
+
name: r.string(),
|
|
200
|
+
email: r.string()
|
|
201
|
+
})
|
|
202
|
+
),
|
|
203
|
+
cost: r.object({
|
|
204
|
+
value: r.number(),
|
|
205
|
+
currency: r.string()
|
|
206
|
+
})
|
|
207
|
+
});
|
|
208
|
+
export {
|
|
209
|
+
i as schemaProject
|
|
210
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { schemaTranslatedContent as o } from "@piveau/sdk-core";
|
|
2
|
+
import * as t from "zod";
|
|
3
|
+
const e = t.object({
|
|
4
|
+
id: t.string(),
|
|
5
|
+
/**
|
|
6
|
+
* A short label for the device or hardware component. org:identifier, foaf:name
|
|
7
|
+
*
|
|
8
|
+
* @remark String or multilingual?
|
|
9
|
+
*
|
|
10
|
+
*/
|
|
11
|
+
name: t.string().or(o).nullable().optional()
|
|
12
|
+
}), s = e.extend({
|
|
13
|
+
/**
|
|
14
|
+
* A brief summary of what the device does, including relevant specifications. dct:description, rdfs:comment
|
|
15
|
+
*
|
|
16
|
+
* @remark String or multilingual?
|
|
17
|
+
*/
|
|
18
|
+
description: t.string().or(o).nullable().optional()
|
|
19
|
+
});
|
|
20
|
+
export {
|
|
21
|
+
e as schemaBase,
|
|
22
|
+
s as schemaBaseWithDescription
|
|
23
|
+
};
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@piveau/dpi",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.2.0-alpha.
|
|
4
|
+
"version": "0.2.0-alpha.14",
|
|
5
5
|
"private": false,
|
|
6
6
|
"sideEffects": [
|
|
7
7
|
"*.css",
|
|
@@ -56,8 +56,8 @@
|
|
|
56
56
|
"@histoire/plugin-vue": "1.0.0-alpha.2",
|
|
57
57
|
"@phosphor-icons/vue": "^2.2.1",
|
|
58
58
|
"@piveau/jsonld": "file:../../bin/piveau-jsonld-1.0.0-beta.20.tgz",
|
|
59
|
-
"@piveau/sdk-core": "0.0.0-beta.
|
|
60
|
-
"@piveau/sdk-vue": "1.0.0-beta.
|
|
59
|
+
"@piveau/sdk-core": "0.0.0-beta.4",
|
|
60
|
+
"@piveau/sdk-vue": "1.0.0-beta.12",
|
|
61
61
|
"@popperjs/core": "^2.11.8",
|
|
62
62
|
"@types/jsonld": "^1.5.15",
|
|
63
63
|
"@types/node": "^24.1.0",
|