@dssp/dkpi 1.0.0-y.0 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/KPI-STATISTICS-SERVICE.md +233 -0
- package/_index.html +4 -9
- package/assets/helps/index.md +1 -1
- package/assets/images/project-image.png +0 -0
- package/assets/manifest.json +2 -2
- package/config/config.development.js +2 -1
- package/config/config.production.js +2 -1
- package/kpi-module-service-tests.md +1286 -0
- package/kpi-module-test-report.md +676 -0
- package/kpi-module-unit-test-detailed-report.md +925 -0
- package/kpi-module-unit-tests-detailed.md +1452 -0
- package/openapi/unstable.yaml +2 -2
- package/package.json +58 -54
- package/recalculate-batch.sh +64 -0
- package/recalculate-projects-range.sh +98 -0
- package/schema.graphql +1159 -55
- package/things-factory.config.js +6 -1
- package/translations/en.json +5 -1
- package/translations/ko.json +5 -1
- package/views/auth-page.html +4 -5
- package/views/public/home.html +5 -6
- package/dist-client/bootstrap.d.ts +0 -8
- package/dist-client/bootstrap.js +0 -257
- package/dist-client/bootstrap.js.map +0 -1
- package/dist-client/components/kpi-single-boxplot-chart.d.ts +0 -24
- package/dist-client/components/kpi-single-boxplot-chart.js +0 -317
- package/dist-client/components/kpi-single-boxplot-chart.js.map +0 -1
- package/dist-client/components/sv-pagenation-control.d.ts +0 -18
- package/dist-client/components/sv-pagenation-control.js +0 -142
- package/dist-client/components/sv-pagenation-control.js.map +0 -1
- package/dist-client/entries/public/home.d.ts +0 -8
- package/dist-client/entries/public/home.js +0 -97
- package/dist-client/entries/public/home.js.map +0 -1
- package/dist-client/icons/menu-icons.d.ts +0 -11
- package/dist-client/icons/menu-icons.js +0 -126
- package/dist-client/icons/menu-icons.js.map +0 -1
- package/dist-client/index.d.ts +0 -0
- package/dist-client/index.js +0 -2
- package/dist-client/index.js.map +0 -1
- package/dist-client/menu.d.ts +0 -23
- package/dist-client/menu.js +0 -59
- package/dist-client/menu.js.map +0 -1
- package/dist-client/pages/kpi-metric-value/kpi-metric-value-editor-page.d.ts +0 -58
- package/dist-client/pages/kpi-metric-value/kpi-metric-value-editor-page.js +0 -731
- package/dist-client/pages/kpi-metric-value/kpi-metric-value-editor-page.js.map +0 -1
- package/dist-client/pages/kpi-metric-value/kpi-metric-value-importer.d.ts +0 -23
- package/dist-client/pages/kpi-metric-value/kpi-metric-value-importer.js +0 -76
- package/dist-client/pages/kpi-metric-value/kpi-metric-value-importer.js.map +0 -1
- package/dist-client/pages/kpi-metric-value/kpi-metric-value-list-page.d.ts +0 -69
- package/dist-client/pages/kpi-metric-value/kpi-metric-value-list-page.js +0 -385
- package/dist-client/pages/kpi-metric-value/kpi-metric-value-list-page.js.map +0 -1
- package/dist-client/pages/kpi-metric-value/kpi-metric-value-manual-entry-form.d.ts +0 -12
- package/dist-client/pages/kpi-metric-value/kpi-metric-value-manual-entry-form.js +0 -174
- package/dist-client/pages/kpi-metric-value/kpi-metric-value-manual-entry-form.js.map +0 -1
- package/dist-client/pages/kpi-metric-value/kpi-metric-value-manual-entry-page.d.ts +0 -41
- package/dist-client/pages/kpi-metric-value/kpi-metric-value-manual-entry-page.js +0 -191
- package/dist-client/pages/kpi-metric-value/kpi-metric-value-manual-entry-page.js.map +0 -1
- package/dist-client/pages/kpi-value/kpi-value-importer.d.ts +0 -23
- package/dist-client/pages/kpi-value/kpi-value-importer.js +0 -93
- package/dist-client/pages/kpi-value/kpi-value-importer.js.map +0 -1
- package/dist-client/pages/kpi-value/kpi-value-list-page.d.ts +0 -72
- package/dist-client/pages/kpi-value/kpi-value-list-page.js +0 -465
- package/dist-client/pages/kpi-value/kpi-value-list-page.js.map +0 -1
- package/dist-client/pages/project-complete-tabs/pc-tab1-plan.d.ts +0 -13
- package/dist-client/pages/project-complete-tabs/pc-tab1-plan.js +0 -248
- package/dist-client/pages/project-complete-tabs/pc-tab1-plan.js.map +0 -1
- package/dist-client/pages/project-complete-tabs/pc-tab2-rating.d.ts +0 -10
- package/dist-client/pages/project-complete-tabs/pc-tab2-rating.js +0 -229
- package/dist-client/pages/project-complete-tabs/pc-tab2-rating.js.map +0 -1
- package/dist-client/pages/project-complete-tabs/pc-tab3-upload.d.ts +0 -12
- package/dist-client/pages/project-complete-tabs/pc-tab3-upload.js +0 -213
- package/dist-client/pages/project-complete-tabs/pc-tab3-upload.js.map +0 -1
- package/dist-client/pages/sv-project-complete.d.ts +0 -22
- package/dist-client/pages/sv-project-complete.js +0 -213
- package/dist-client/pages/sv-project-complete.js.map +0 -1
- package/dist-client/pages/sv-project-completed-list.d.ts +0 -24
- package/dist-client/pages/sv-project-completed-list.js +0 -357
- package/dist-client/pages/sv-project-completed-list.js.map +0 -1
- package/dist-client/pages/sv-project-detail.d.ts +0 -13
- package/dist-client/pages/sv-project-detail.js +0 -494
- package/dist-client/pages/sv-project-detail.js.map +0 -1
- package/dist-client/pages/sv-project-list.d.ts +0 -157
- package/dist-client/pages/sv-project-list.js +0 -431
- package/dist-client/pages/sv-project-list.js.map +0 -1
- package/dist-client/pages/sv-user-management.d.ts +0 -5
- package/dist-client/pages/sv-user-management.js +0 -219
- package/dist-client/pages/sv-user-management.js.map +0 -1
- package/dist-client/route.d.ts +0 -1
- package/dist-client/route.js +0 -31
- package/dist-client/route.js.map +0 -1
- package/dist-client/shared/complete-api.d.ts +0 -5
- package/dist-client/shared/complete-api.js +0 -125
- package/dist-client/shared/complete-api.js.map +0 -1
- package/dist-client/shared/func.d.ts +0 -2
- package/dist-client/shared/func.js +0 -22
- package/dist-client/shared/func.js.map +0 -1
- package/dist-client/themes/dark.css +0 -51
- package/dist-client/themes/light.css +0 -51
- package/dist-client/tsconfig.tsbuildinfo +0 -1
- package/dist-client/viewparts/menu-tools.d.ts +0 -54
- package/dist-client/viewparts/menu-tools.js +0 -503
- package/dist-client/viewparts/menu-tools.js.map +0 -1
- package/dist-client/viewparts/user-circle.d.ts +0 -5
- package/dist-client/viewparts/user-circle.js +0 -26
- package/dist-client/viewparts/user-circle.js.map +0 -1
- package/dist-server/index.d.ts +0 -2
- package/dist-server/index.js +0 -6
- package/dist-server/index.js.map +0 -1
- package/dist-server/migrations/index.d.ts +0 -1
- package/dist-server/migrations/index.js +0 -12
- package/dist-server/migrations/index.js.map +0 -1
- package/dist-server/scripts/calculate-kpi-scores.d.ts +0 -10
- package/dist-server/scripts/calculate-kpi-scores.js +0 -271
- package/dist-server/scripts/calculate-kpi-scores.js.map +0 -1
- package/dist-server/scripts/load-grade-data-migration.d.ts +0 -10
- package/dist-server/scripts/load-grade-data-migration.js +0 -194
- package/dist-server/scripts/load-grade-data-migration.js.map +0 -1
- package/dist-server/scripts/propagate-parent-kpi-values.d.ts +0 -10
- package/dist-server/scripts/propagate-parent-kpi-values.js +0 -440
- package/dist-server/scripts/propagate-parent-kpi-values.js.map +0 -1
- package/dist-server/service/index.d.ts +0 -6
- package/dist-server/service/index.js +0 -21
- package/dist-server/service/index.js.map +0 -1
- package/dist-server/service/kpi-metric-value/index.d.ts +0 -4
- package/dist-server/service/kpi-metric-value/index.js +0 -8
- package/dist-server/service/kpi-metric-value/index.js.map +0 -1
- package/dist-server/service/kpi-metric-value/kpi-metric-value-mutation.d.ts +0 -7
- package/dist-server/service/kpi-metric-value/kpi-metric-value-mutation.js +0 -112
- package/dist-server/service/kpi-metric-value/kpi-metric-value-mutation.js.map +0 -1
- package/dist-server/service/kpi-metric-value/kpi-metric-value-query.d.ts +0 -7
- package/dist-server/service/kpi-metric-value/kpi-metric-value-query.js +0 -47
- package/dist-server/service/kpi-metric-value/kpi-metric-value-query.js.map +0 -1
- package/dist-server/service/kpi-value/index.d.ts +0 -3
- package/dist-server/service/kpi-value/index.js +0 -7
- package/dist-server/service/kpi-value/index.js.map +0 -1
- package/dist-server/service/kpi-value/kpi-value-query.d.ts +0 -7
- package/dist-server/service/kpi-value/kpi-value-query.js +0 -47
- package/dist-server/service/kpi-value/kpi-value-query.js.map +0 -1
- package/dist-server/tsconfig.tsbuildinfo +0 -1
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
# KPI Statistics Service Implementation
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
This implementation provides GraphQL services for KPI statistics visualization, specifically designed for box plots and radar charts. The service analyzes KPI values across different geographical groups and provides real-time statistical data for completed projects.
|
|
6
|
+
|
|
7
|
+
## GraphQL Types
|
|
8
|
+
|
|
9
|
+
### KpiBoxPlotStats
|
|
10
|
+
Box plot statistics for KPI values:
|
|
11
|
+
- `geoGroup`: Geographical group identifier
|
|
12
|
+
- `kpiName`: KPI name (optional for aggregated data)
|
|
13
|
+
- `minVal`: Minimum score value
|
|
14
|
+
- `q1Val`: First quartile (25th percentile)
|
|
15
|
+
- `medVal`: Median value (50th percentile)
|
|
16
|
+
- `q3Val`: Third quartile (75th percentile)
|
|
17
|
+
- `maxVal`: Maximum score value
|
|
18
|
+
|
|
19
|
+
### KpiRadarStats
|
|
20
|
+
Radar chart statistics for KPI values:
|
|
21
|
+
- `geoGroup`: Geographical group identifier
|
|
22
|
+
- `kpiName`: KPI name
|
|
23
|
+
- `avgScore`: Average KPI score
|
|
24
|
+
- `projectCount`: Number of projects in calculation
|
|
25
|
+
|
|
26
|
+
## GraphQL Queries
|
|
27
|
+
|
|
28
|
+
### 1. kpiZValueBoxPlotStats
|
|
29
|
+
Returns box plot statistics for Z-category KPIs grouped by geographical region.
|
|
30
|
+
|
|
31
|
+
**Query:**
|
|
32
|
+
```graphql
|
|
33
|
+
query GetZValueBoxPlot($geoGroup: String) {
|
|
34
|
+
kpiZValueBoxPlotStats(geoGroup: $geoGroup) {
|
|
35
|
+
geoGroup
|
|
36
|
+
minVal
|
|
37
|
+
q1Val
|
|
38
|
+
medVal
|
|
39
|
+
q3Val
|
|
40
|
+
maxVal
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
**Parameters:**
|
|
46
|
+
- `geoGroup` (optional): Filter by specific geographical group
|
|
47
|
+
|
|
48
|
+
### 2. kpiYValueBoxPlotStats
|
|
49
|
+
Returns box plot statistics for Y-category KPIs, broken down by both geographical region and individual KPI names.
|
|
50
|
+
|
|
51
|
+
**Query:**
|
|
52
|
+
```graphql
|
|
53
|
+
query GetYValueBoxPlot($geoGroup: String) {
|
|
54
|
+
kpiYValueBoxPlotStats(geoGroup: $geoGroup) {
|
|
55
|
+
geoGroup
|
|
56
|
+
kpiName
|
|
57
|
+
minVal
|
|
58
|
+
q1Val
|
|
59
|
+
medVal
|
|
60
|
+
q3Val
|
|
61
|
+
maxVal
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
**Parameters:**
|
|
67
|
+
- `geoGroup` (optional): Filter by specific geographical group
|
|
68
|
+
|
|
69
|
+
### 3. kpiRadarStats
|
|
70
|
+
Returns radar chart statistics for KPIs matching a specific pattern.
|
|
71
|
+
|
|
72
|
+
**Query:**
|
|
73
|
+
```graphql
|
|
74
|
+
query GetRadarStats($kpiPattern: String!, $geoGroup: String) {
|
|
75
|
+
kpiRadarStats(kpiPattern: $kpiPattern, geoGroup: $geoGroup) {
|
|
76
|
+
geoGroup
|
|
77
|
+
kpiName
|
|
78
|
+
avgScore
|
|
79
|
+
projectCount
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
**Parameters:**
|
|
85
|
+
- `kpiPattern`: SQL LIKE pattern for KPI names (default: '%')
|
|
86
|
+
- `geoGroup` (optional): Filter by specific geographical group
|
|
87
|
+
|
|
88
|
+
### 4. kpiComprehensiveStats
|
|
89
|
+
Returns comprehensive statistics for all KPIs across completed projects.
|
|
90
|
+
|
|
91
|
+
**Query:**
|
|
92
|
+
```graphql
|
|
93
|
+
query GetComprehensiveStats($geoGroup: String, $includeOngoing: Boolean) {
|
|
94
|
+
kpiComprehensiveStats(geoGroup: $geoGroup, includeOngoing: $includeOngoing) {
|
|
95
|
+
geoGroup
|
|
96
|
+
kpiName
|
|
97
|
+
avgScore
|
|
98
|
+
projectCount
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
**Parameters:**
|
|
104
|
+
- `geoGroup` (optional): Filter by specific geographical group
|
|
105
|
+
- `includeOngoing` (default: false): Include ongoing projects in analysis
|
|
106
|
+
|
|
107
|
+
## Usage Examples
|
|
108
|
+
|
|
109
|
+
### JavaScript/Frontend Usage
|
|
110
|
+
|
|
111
|
+
```typescript
|
|
112
|
+
import { client } from '@operato/graphql'
|
|
113
|
+
import gql from 'graphql-tag'
|
|
114
|
+
|
|
115
|
+
// Get Z-category box plot data for all regions
|
|
116
|
+
const getZBoxPlotData = async () => {
|
|
117
|
+
const result = await client.query({
|
|
118
|
+
query: gql`
|
|
119
|
+
query {
|
|
120
|
+
kpiZValueBoxPlotStats {
|
|
121
|
+
geoGroup
|
|
122
|
+
minVal
|
|
123
|
+
q1Val
|
|
124
|
+
medVal
|
|
125
|
+
q3Val
|
|
126
|
+
maxVal
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
`
|
|
130
|
+
})
|
|
131
|
+
return result.data.kpiZValueBoxPlotStats
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
// Get Y-category box plot data for specific region
|
|
135
|
+
const getYBoxPlotData = async (region: string) => {
|
|
136
|
+
const result = await client.query({
|
|
137
|
+
query: gql`
|
|
138
|
+
query GetYBoxPlot($geoGroup: String) {
|
|
139
|
+
kpiYValueBoxPlotStats(geoGroup: $geoGroup) {
|
|
140
|
+
geoGroup
|
|
141
|
+
kpiName
|
|
142
|
+
minVal
|
|
143
|
+
q1Val
|
|
144
|
+
medVal
|
|
145
|
+
q3Val
|
|
146
|
+
maxVal
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
`,
|
|
150
|
+
variables: { geoGroup: region }
|
|
151
|
+
})
|
|
152
|
+
return result.data.kpiYValueBoxPlotStats
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
// Get radar chart data for X-category KPIs
|
|
156
|
+
const getRadarData = async () => {
|
|
157
|
+
const result = await client.query({
|
|
158
|
+
query: gql`
|
|
159
|
+
query {
|
|
160
|
+
kpiRadarStats(kpiPattern: "X%") {
|
|
161
|
+
geoGroup
|
|
162
|
+
kpiName
|
|
163
|
+
avgScore
|
|
164
|
+
projectCount
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
`
|
|
168
|
+
})
|
|
169
|
+
return result.data.kpiRadarStats
|
|
170
|
+
}
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
### Data Processing for Charts
|
|
174
|
+
|
|
175
|
+
```typescript
|
|
176
|
+
// Process box plot data for Chart.js or similar
|
|
177
|
+
const processBoxPlotData = (data: KpiBoxPlotStats[]) => {
|
|
178
|
+
return data.map(item => ({
|
|
179
|
+
label: item.geoGroup,
|
|
180
|
+
data: [item.minVal, item.q1Val, item.medVal, item.q3Val, item.maxVal]
|
|
181
|
+
}))
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
// Process radar data for radar charts
|
|
185
|
+
const processRadarData = (data: KpiRadarStats[]) => {
|
|
186
|
+
const groupedData = data.reduce((acc, item) => {
|
|
187
|
+
if (!acc[item.geoGroup]) {
|
|
188
|
+
acc[item.geoGroup] = []
|
|
189
|
+
}
|
|
190
|
+
acc[item.geoGroup].push({
|
|
191
|
+
label: item.kpiName,
|
|
192
|
+
value: item.avgScore
|
|
193
|
+
})
|
|
194
|
+
return acc
|
|
195
|
+
}, {} as Record<string, Array<{label: string, value: number}>>)
|
|
196
|
+
|
|
197
|
+
return groupedData
|
|
198
|
+
}
|
|
199
|
+
```
|
|
200
|
+
|
|
201
|
+
## Database Schema Requirements
|
|
202
|
+
|
|
203
|
+
The service expects the following database structure:
|
|
204
|
+
|
|
205
|
+
- `kpi_values` table with columns: `id`, `score`, `kpi_id`, `kpi_org_scope_id`, `domain_id`
|
|
206
|
+
- `kpis` table with columns: `id`, `name`
|
|
207
|
+
- `projects` table with columns: `id`, `geo_group`, `end_date`
|
|
208
|
+
|
|
209
|
+
## Security
|
|
210
|
+
|
|
211
|
+
All queries require KPI query privileges:
|
|
212
|
+
- Category: "kpi"
|
|
213
|
+
- Privilege: "query"
|
|
214
|
+
- Domain owner granted: true
|
|
215
|
+
- Super user granted: true
|
|
216
|
+
|
|
217
|
+
## Performance Considerations
|
|
218
|
+
|
|
219
|
+
1. **Indexing**: Ensure indexes on:
|
|
220
|
+
- `kpi_values.kpi_id`
|
|
221
|
+
- `kpi_values.kpi_org_scope_id`
|
|
222
|
+
- `kpi_values.domain_id`
|
|
223
|
+
- `projects.end_date`
|
|
224
|
+
- `projects.geo_group`
|
|
225
|
+
- `kpis.name`
|
|
226
|
+
|
|
227
|
+
2. **Caching**: Consider implementing GraphQL query result caching for frequently accessed statistics.
|
|
228
|
+
|
|
229
|
+
3. **Aggregation**: The percentile calculations may be expensive on large datasets. Consider pre-computing statistics for better performance.
|
|
230
|
+
|
|
231
|
+
## File Location
|
|
232
|
+
|
|
233
|
+
Implementation: `/Users/super/Documents/GitHub/dssp/packages/dkpi/server/service/kpi/kpi-query.ts`
|
package/_index.html
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<head>
|
|
4
4
|
<meta charset="utf-8" />
|
|
5
5
|
<meta name="google" content="notranslate" />
|
|
6
|
-
<title>Digital KPI
|
|
6
|
+
<title>Digital platform-based KPI Navigator</title>
|
|
7
7
|
<meta name="generator" content="Things Factory Starter Kit" />
|
|
8
8
|
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" />
|
|
9
9
|
<meta name="description" content="Build Smarter with Every Metric" />
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
|
|
21
21
|
<!-- Add to homescreen for Chrome on Android. Fallback for manifest.json -->
|
|
22
22
|
<meta name="mobile-web-app-capable" content="yes" />
|
|
23
|
-
<meta name="application-name" content="Digital KPI
|
|
23
|
+
<meta name="application-name" content="Digital platform-based KPI Navigator" />
|
|
24
24
|
<meta name="application-description" content="Build Smarter with Every Metric" />
|
|
25
25
|
<meta name="application-copyright" content="Copyright © hatiolab.com. All Rights Reserved." />
|
|
26
26
|
<link rel="application-icon" href="/assets/manifest/icon-96x96.png" />
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
<!-- Add to homescreen for Safari on iOS -->
|
|
29
29
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
|
30
30
|
<meta name="apple-mobile-web-app-status-bar-style" content="default" />
|
|
31
|
-
<meta name="apple-mobile-web-app-title" content="Digital KPI
|
|
31
|
+
<meta name="apple-mobile-web-app-title" content="Digital platform-based KPI Navigator" />
|
|
32
32
|
|
|
33
33
|
<!-- Homescreen icons -->
|
|
34
34
|
<link rel="apple-touch-icon" href="/assets/manifest/icon-48x48.png" />
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
<meta name="twitter:card" content="summary" />
|
|
47
47
|
<meta name="twitter:site" content="@username" />
|
|
48
48
|
<meta property="og:type" content="website" />
|
|
49
|
-
<meta property="og:site_name" content="Digital KPI
|
|
49
|
+
<meta property="og:site_name" content="Digital platform-based KPI Navigator, Build Smarter with Every Metric" />
|
|
50
50
|
<meta property="og:image" content="/assets/manifest/image-metaog.png" />
|
|
51
51
|
|
|
52
52
|
<!-- Performance tip: hint to the browser to start the handshake for the fonts site -->
|
|
@@ -61,10 +61,5 @@
|
|
|
61
61
|
<body class="light">
|
|
62
62
|
<things-app></things-app>
|
|
63
63
|
<noscript> Please enable JavaScript to view this website. </noscript>
|
|
64
|
-
<!-- Load webcomponents-loader.js to check and load any polyfills your browser needs -->
|
|
65
|
-
<script src="/node_modules/@webcomponents/webcomponentsjs/webcomponents-loader.js"></script>
|
|
66
|
-
<script src="/node_modules/web-animations-js/web-animations-next.min.js"></script>
|
|
67
|
-
<script src="/node_modules/@hatiolab/things-scene/things-scene-min.js"></script>
|
|
68
|
-
<!-- Built with love using PWA Starter Kit -->
|
|
69
64
|
</body>
|
|
70
65
|
</html>
|
package/assets/helps/index.md
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
# Digital Digital KPI
|
|
1
|
+
# Digital Digital platform-based KPI Navigator
|
|
Binary file
|
package/assets/manifest.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
|
-
"name": "Digital KPI
|
|
2
|
+
"name": "Digital platform-based KPI Navigator",
|
|
3
3
|
"short_name": "dkpi",
|
|
4
|
-
"description": "Digital KPI
|
|
4
|
+
"description": "Digital platform-based KPI Navigator, Build Smarter with Every Metric",
|
|
5
5
|
"icons": [
|
|
6
6
|
{
|
|
7
7
|
"src": "manifest/icon-192x192.png",
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
module.exports = {
|
|
2
|
-
subdomain:
|
|
2
|
+
subdomain: null,
|
|
3
|
+
domainTypes: ['domain', 'project'],
|
|
3
4
|
applianceJwtExpiresIn: '10y',
|
|
4
5
|
/* database field encryption key : 32 bytes - must be changed by every installation */
|
|
5
6
|
dataEncryptionKey: 'V6g5oHJZb7KcazJyL6cM95XvIDouon5b',
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
module.exports = {
|
|
2
|
-
subdomain:
|
|
2
|
+
subdomain: null,
|
|
3
|
+
domainTypes: ['domain', 'project'],
|
|
3
4
|
applianceJwtExpiresIn: '10y',
|
|
4
5
|
/* database field encryption key : 32 bytes - must be changed by every installation */
|
|
5
6
|
dataEncryptionKey: 'V6g5oHJZb7KcazJyL6cM95XvIDouon5b',
|