Repository navigation
Expand file tree
/
Copy pathpackage.json
More file actions
155 lines (155 loc) · 4.47 KB
/
Copy pathpackage.json
File metadata and controls
155 lines (155 loc) · 4.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
{
"name": "@openbrf/example-plugin",
"version": "0.2.0",
"description": "Reference Open BRF plugin: how many apartments, residents and members the association has, and which apartments have no resident the plugin can see.",
"license": "MIT-0",
"type": "module",
"homepage": "https://github.com/openbrf/example-plugin",
"repository": {
"type": "git",
"url": "git+https://github.com/openbrf/example-plugin.git"
},
"bugs": {
"url": "https://github.com/openbrf/example-plugin/issues"
},
"packageManager": "pnpm@12.14.0",
"engines": {
"node": ">=26"
},
"files": [
"dist",
"locales"
],
"scripts": {
"build": "pnpm run build:client && pnpm run build:server",
"build:client": "vite build",
"build:server": "tsc -p tsconfig.server.json && node scripts/rename-server-bundle.mjs",
"typecheck": "tsc -p tsconfig.json --noEmit",
"test": "pnpm run build && vitest run",
"check:package": "node scripts/check-package.mjs"
},
"openbrf": {
"apiVersion": 1,
"id": "occupancy",
"entry": {
"server": "./dist/server.cjs",
"client": "./dist/remoteEntry.js"
},
"permissions": [
"addressBook:read"
],
"personalData": [
"name",
"apartment",
"residency"
],
"processing": {
"purpose": {
"sv": "Visa styrelsen hur många lägenheter, boende och medlemmar föreningen har, och hur många boende och bostadsrättshavare varje lägenhet har, räknat bland de boende som tillägget kan se. Inga namn visas.",
"en": "Show the board how many apartments, residents and members the association has, and how many residents and tenant-owners each apartment has, counting only the residents the plugin can see. No names are shown."
},
"legalBasis": "legitimateInterest",
"legitimateInterest": {
"sv": "Styrelsens behov av en överblick över boendet för att förvalta föreningen.",
"en": "The board's need for an overview of who lives in the building in order to run the association."
},
"retention": {
"sv": "Ingenting sparas: uppgifterna läses ur registret varje gång vyn visas.",
"en": "Nothing is kept: the data is read from the register each time the view is shown."
},
"dataSubjects": [
"members",
"residents"
]
},
"view": {
"module": "./View",
"titleKey": "view.title"
},
"settingsSchema": {
"fields": [
{
"key": "heading",
"labelKey": "settings.heading.label",
"hintKey": "settings.heading.hint",
"type": "text",
"default": "",
"maxLength": 80
},
{
"key": "showMembers",
"labelKey": "settings.showMembers.label",
"type": "boolean",
"default": true
},
{
"key": "grouping",
"labelKey": "settings.grouping.label",
"type": "select",
"default": "address",
"options": [
{
"value": "address",
"labelKey": "settings.grouping.address"
},
{
"value": "floor",
"labelKey": "settings.grouping.floor"
}
]
},
{
"key": "rowLimit",
"labelKey": "settings.rowLimit.label",
"hintKey": "settings.rowLimit.hint",
"type": "number",
"integer": true,
"min": 1,
"max": 500,
"default": 100
}
]
},
"actions": [
{
"id": "summary",
"capability": "addressBook:read",
"effect": "read",
"personalData": [],
"surfaces": [
"ui",
"mcp"
]
}
]
},
"peerDependencies": {
"@nestjs/common": "^12.0.0",
"zod": "^4.6.2"
},
"devDependencies": {
"@module-federation/vite": "1.23.5",
"@nestjs/common": "12.2.0",
"@nestjs/core": "12.2.0",
"@nestjs/testing": "12.2.0",
"@openbrf/plugin-sdk": "1.0.0",
"@openbrf/theme-tools": "1.0.0",
"@testing-library/react": "16.3.3",
"@types/node": "26.6.5",
"@types/react": "19.3.0",
"@types/react-dom": "19.3.0",
"@vitejs/plugin-react": "6.1.2",
"i18next": "26.5.2",
"jsdom": "30.1.3",
"react": "19.3.1",
"react-dom": "19.3.1",
"react-i18next": "17.1.0",
"reflect-metadata": "0.2.2",
"rxjs": "7.8.2",
"typescript": "7.0.2",
"vite": "8.3.4",
"vitest": "5.0.5",
"yaml": "2.9.1",
"zod": "4.6.7"
}
}