@xen-orchestra/acl 1.1.0 → 1.3.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.
@@ -1,4 +1,13 @@
1
1
  declare const _default: {
2
+ create: boolean;
2
3
  read: boolean;
4
+ forget: boolean;
5
+ update: {
6
+ enabled: boolean;
7
+ name: boolean;
8
+ options: boolean;
9
+ proxy: boolean;
10
+ url: boolean;
11
+ };
3
12
  };
4
13
  export default _default;
@@ -1,3 +1,12 @@
1
1
  export default {
2
+ create: true,
2
3
  read: true,
4
+ forget: true,
5
+ update: {
6
+ enabled: true,
7
+ name: true,
8
+ options: true,
9
+ proxy: true,
10
+ url: true,
11
+ },
3
12
  };
@@ -1,11 +1,13 @@
1
1
  declare const _default: {
2
2
  'allow-vm': boolean;
3
3
  disable: boolean;
4
+ 'migrate-receive': boolean;
4
5
  enable: boolean;
5
6
  evacuate: boolean;
6
7
  export: {
7
8
  logs: boolean;
8
9
  };
10
+ 'join-pool': boolean;
9
11
  read: boolean;
10
12
  update: {
11
13
  tags: boolean;
@@ -1,11 +1,13 @@
1
1
  export default {
2
2
  'allow-vm': true,
3
3
  disable: true,
4
+ 'migrate-receive': true,
4
5
  enable: true,
5
6
  evacuate: true,
6
7
  export: {
7
8
  logs: true,
8
9
  },
10
+ 'join-pool': true,
9
11
  read: true,
10
12
  update: {
11
13
  tags: true,
@@ -37,7 +37,16 @@ export declare const SUPPORTED_ACTIONS_BY_RESOURCE: {
37
37
  read: boolean;
38
38
  };
39
39
  readonly 'backup-repository': {
40
+ create: boolean;
40
41
  read: boolean;
42
+ forget: boolean;
43
+ update: {
44
+ enabled: boolean;
45
+ name: boolean;
46
+ options: boolean;
47
+ proxy: boolean;
48
+ url: boolean;
49
+ };
41
50
  };
42
51
  readonly group: {
43
52
  create: boolean;
@@ -54,11 +63,13 @@ export declare const SUPPORTED_ACTIONS_BY_RESOURCE: {
54
63
  readonly host: {
55
64
  'allow-vm': boolean;
56
65
  disable: boolean;
66
+ 'migrate-receive': boolean;
57
67
  enable: boolean;
58
68
  evacuate: boolean;
59
69
  export: {
60
70
  logs: boolean;
61
71
  };
72
+ 'join-pool': boolean;
62
73
  read: boolean;
63
74
  update: {
64
75
  tags: boolean;
@@ -77,6 +88,8 @@ export declare const SUPPORTED_ACTIONS_BY_RESOURCE: {
77
88
  };
78
89
  readonly pbd: {
79
90
  read: boolean;
91
+ plug: boolean;
92
+ unplug: boolean;
80
93
  };
81
94
  readonly pci: {
82
95
  read: boolean;
@@ -91,6 +104,7 @@ export declare const SUPPORTED_ACTIONS_BY_RESOURCE: {
91
104
  };
92
105
  };
93
106
  readonly pool: {
107
+ 'add-host': boolean;
94
108
  create: {
95
109
  network: boolean;
96
110
  vm: boolean;
@@ -125,11 +139,15 @@ export declare const SUPPORTED_ACTIONS_BY_RESOURCE: {
125
139
  };
126
140
  readonly sr: {
127
141
  delete: boolean;
142
+ forget: boolean;
128
143
  import: {
129
144
  vdi: boolean;
130
145
  vm: boolean;
131
146
  };
147
+ 'migrate-receive': boolean;
132
148
  read: boolean;
149
+ 'reclaim-space': boolean;
150
+ scan: boolean;
133
151
  update: {
134
152
  tags: boolean;
135
153
  };
@@ -151,10 +169,19 @@ export declare const SUPPORTED_ACTIONS_BY_RESOURCE: {
151
169
  };
152
170
  };
153
171
  readonly vbd: {
172
+ connect: boolean;
173
+ create: boolean;
174
+ delete: boolean;
175
+ disconnect: boolean;
154
176
  read: boolean;
155
177
  };
156
178
  readonly 'vdi-snapshot': {
179
+ delete: boolean;
180
+ export: boolean;
157
181
  read: boolean;
182
+ update: {
183
+ tags: boolean;
184
+ };
158
185
  };
159
186
  readonly 'vdi-unmanaged': {
160
187
  read: boolean;
@@ -165,6 +192,7 @@ export declare const SUPPORTED_ACTIONS_BY_RESOURCE: {
165
192
  delete: boolean;
166
193
  'export-content': boolean;
167
194
  'import-content': boolean;
195
+ 'migrate-send': boolean;
168
196
  read: boolean;
169
197
  update: {
170
198
  tags: boolean;
@@ -177,8 +205,18 @@ export declare const SUPPORTED_ACTIONS_BY_RESOURCE: {
177
205
  read: boolean;
178
206
  };
179
207
  readonly vif: {
180
- read: boolean;
208
+ connect: boolean;
181
209
  create: boolean;
210
+ delete: boolean;
211
+ disconnect: boolean;
212
+ read: boolean;
213
+ update: {
214
+ allowedIpv4Addresses: boolean;
215
+ allowedIpv6Addresses: boolean;
216
+ lockingMode: boolean;
217
+ rateLimit: boolean;
218
+ txChecksumming: boolean;
219
+ };
182
220
  };
183
221
  readonly 'vm-controller': {
184
222
  read: boolean;
@@ -204,8 +242,10 @@ export declare const SUPPORTED_ACTIONS_BY_RESOURCE: {
204
242
  };
205
243
  };
206
244
  readonly vm: {
245
+ clone: boolean;
207
246
  delete: boolean;
208
247
  export: boolean;
248
+ 'migrate-send': boolean;
209
249
  pause: boolean;
210
250
  read: boolean;
211
251
  reboot: {
@@ -223,8 +263,43 @@ export declare const SUPPORTED_ACTIONS_BY_RESOURCE: {
223
263
  suspend: boolean;
224
264
  unpause: boolean;
225
265
  update: {
266
+ affinityHost: boolean;
267
+ autoPoweron: boolean;
268
+ blockedOperations: boolean;
269
+ coresPerSocket: boolean;
270
+ cpuCap: boolean;
271
+ cpuMask: boolean;
272
+ cpuWeight: boolean;
273
+ cpus: boolean;
274
+ cpusStaticMax: boolean;
275
+ creation: boolean;
226
276
  datasources: boolean;
277
+ expNestedHvm: boolean;
278
+ hasVendorDevice: boolean;
279
+ highAvailability: boolean;
280
+ hvmBootFirmware: boolean;
281
+ memory: boolean;
282
+ memoryMax: boolean;
283
+ memoryMin: boolean;
284
+ memoryStaticMax: boolean;
285
+ nameDescription: boolean;
286
+ nameLabel: boolean;
287
+ nestedVirt: boolean;
288
+ nicType: boolean;
289
+ notes: boolean;
290
+ PV_args: boolean;
291
+ resourceSet: boolean;
292
+ secureBoot: boolean;
293
+ share: boolean;
294
+ startDelay: boolean;
295
+ suspendSr: boolean;
227
296
  tags: boolean;
297
+ uefiMode: boolean;
298
+ vga: boolean;
299
+ videoram: boolean;
300
+ viridian: boolean;
301
+ virtualizationMode: boolean;
302
+ xenStoreData: boolean;
228
303
  };
229
304
  };
230
305
  readonly vtpm: {
@@ -1,4 +1,6 @@
1
1
  declare const _default: {
2
2
  read: boolean;
3
+ plug: boolean;
4
+ unplug: boolean;
3
5
  };
4
6
  export default _default;
@@ -1,3 +1,5 @@
1
1
  export default {
2
2
  read: true,
3
+ plug: true,
4
+ unplug: true,
3
5
  };
@@ -1,4 +1,5 @@
1
1
  declare const _default: {
2
+ 'add-host': boolean;
2
3
  create: {
3
4
  network: boolean;
4
5
  vm: boolean;
@@ -1,4 +1,5 @@
1
1
  export default {
2
+ 'add-host': true,
2
3
  create: {
3
4
  network: true,
4
5
  vm: true,
@@ -1,10 +1,14 @@
1
1
  declare const _default: {
2
2
  delete: boolean;
3
+ forget: boolean;
3
4
  import: {
4
5
  vdi: boolean;
5
6
  vm: boolean;
6
7
  };
8
+ 'migrate-receive': boolean;
7
9
  read: boolean;
10
+ 'reclaim-space': boolean;
11
+ scan: boolean;
8
12
  update: {
9
13
  tags: boolean;
10
14
  };
@@ -1,10 +1,14 @@
1
1
  export default {
2
2
  delete: true,
3
+ forget: true,
3
4
  import: {
4
5
  vdi: true,
5
6
  vm: true,
6
7
  },
8
+ 'migrate-receive': true,
7
9
  read: true,
10
+ 'reclaim-space': true,
11
+ scan: true,
8
12
  update: {
9
13
  tags: true,
10
14
  },
@@ -1,4 +1,8 @@
1
1
  declare const _default: {
2
+ connect: boolean;
3
+ create: boolean;
4
+ delete: boolean;
5
+ disconnect: boolean;
2
6
  read: boolean;
3
7
  };
4
8
  export default _default;
@@ -1,3 +1,7 @@
1
1
  export default {
2
+ connect: true,
3
+ create: true,
4
+ delete: true,
5
+ disconnect: true,
2
6
  read: true,
3
7
  };
@@ -1,4 +1,9 @@
1
1
  declare const _default: {
2
+ delete: boolean;
3
+ export: boolean;
2
4
  read: boolean;
5
+ update: {
6
+ tags: boolean;
7
+ };
3
8
  };
4
9
  export default _default;
@@ -1,3 +1,8 @@
1
1
  export default {
2
+ delete: true,
3
+ export: true,
2
4
  read: true,
5
+ update: {
6
+ tags: true,
7
+ },
3
8
  };
@@ -4,6 +4,7 @@ declare const _default: {
4
4
  delete: boolean;
5
5
  'export-content': boolean;
6
6
  'import-content': boolean;
7
+ 'migrate-send': boolean;
7
8
  read: boolean;
8
9
  update: {
9
10
  tags: boolean;
@@ -4,6 +4,7 @@ export default {
4
4
  delete: true,
5
5
  'export-content': true,
6
6
  'import-content': true,
7
+ 'migrate-send': true,
7
8
  read: true,
8
9
  update: {
9
10
  tags: true,
@@ -1,5 +1,15 @@
1
1
  declare const _default: {
2
- read: boolean;
2
+ connect: boolean;
3
3
  create: boolean;
4
+ delete: boolean;
5
+ disconnect: boolean;
6
+ read: boolean;
7
+ update: {
8
+ allowedIpv4Addresses: boolean;
9
+ allowedIpv6Addresses: boolean;
10
+ lockingMode: boolean;
11
+ rateLimit: boolean;
12
+ txChecksumming: boolean;
13
+ };
4
14
  };
5
15
  export default _default;
@@ -1,4 +1,14 @@
1
1
  export default {
2
- read: true,
2
+ connect: true,
3
3
  create: true,
4
+ delete: true,
5
+ disconnect: true,
6
+ read: true,
7
+ update: {
8
+ allowedIpv4Addresses: true,
9
+ allowedIpv6Addresses: true,
10
+ lockingMode: true,
11
+ rateLimit: true,
12
+ txChecksumming: true,
13
+ },
4
14
  };
@@ -1,6 +1,8 @@
1
1
  declare const _default: {
2
+ clone: boolean;
2
3
  delete: boolean;
3
4
  export: boolean;
5
+ 'migrate-send': boolean;
4
6
  pause: boolean;
5
7
  read: boolean;
6
8
  reboot: {
@@ -18,8 +20,43 @@ declare const _default: {
18
20
  suspend: boolean;
19
21
  unpause: boolean;
20
22
  update: {
23
+ affinityHost: boolean;
24
+ autoPoweron: boolean;
25
+ blockedOperations: boolean;
26
+ coresPerSocket: boolean;
27
+ cpuCap: boolean;
28
+ cpuMask: boolean;
29
+ cpuWeight: boolean;
30
+ cpus: boolean;
31
+ cpusStaticMax: boolean;
32
+ creation: boolean;
21
33
  datasources: boolean;
34
+ expNestedHvm: boolean;
35
+ hasVendorDevice: boolean;
36
+ highAvailability: boolean;
37
+ hvmBootFirmware: boolean;
38
+ memory: boolean;
39
+ memoryMax: boolean;
40
+ memoryMin: boolean;
41
+ memoryStaticMax: boolean;
42
+ nameDescription: boolean;
43
+ nameLabel: boolean;
44
+ nestedVirt: boolean;
45
+ nicType: boolean;
46
+ notes: boolean;
47
+ PV_args: boolean;
48
+ resourceSet: boolean;
49
+ secureBoot: boolean;
50
+ share: boolean;
51
+ startDelay: boolean;
52
+ suspendSr: boolean;
22
53
  tags: boolean;
54
+ uefiMode: boolean;
55
+ vga: boolean;
56
+ videoram: boolean;
57
+ viridian: boolean;
58
+ virtualizationMode: boolean;
59
+ xenStoreData: boolean;
23
60
  };
24
61
  };
25
62
  export default _default;
@@ -1,6 +1,8 @@
1
1
  export default {
2
+ clone: true,
2
3
  delete: true,
3
4
  export: true,
5
+ 'migrate-send': true,
4
6
  pause: true,
5
7
  read: true,
6
8
  reboot: {
@@ -18,7 +20,42 @@ export default {
18
20
  suspend: true,
19
21
  unpause: true,
20
22
  update: {
23
+ affinityHost: true,
24
+ autoPoweron: true,
25
+ blockedOperations: true,
26
+ coresPerSocket: true,
27
+ cpuCap: true,
28
+ cpuMask: true,
29
+ cpuWeight: true,
30
+ cpus: true,
31
+ cpusStaticMax: true,
32
+ creation: true,
21
33
  datasources: true,
34
+ expNestedHvm: true,
35
+ hasVendorDevice: true,
36
+ highAvailability: true,
37
+ hvmBootFirmware: true,
38
+ memory: true,
39
+ memoryMax: true,
40
+ memoryMin: true,
41
+ memoryStaticMax: true,
42
+ nameDescription: true,
43
+ nameLabel: true,
44
+ nestedVirt: true,
45
+ nicType: true,
46
+ notes: true,
47
+ PV_args: true,
48
+ resourceSet: true,
49
+ secureBoot: true,
50
+ share: true,
51
+ startDelay: true,
52
+ suspendSr: true,
22
53
  tags: true,
54
+ uefiMode: true,
55
+ vga: true,
56
+ videoram: true,
57
+ viridian: true,
58
+ virtualizationMode: true,
59
+ xenStoreData: true,
23
60
  },
24
61
  };
@@ -62,7 +62,7 @@ export type BackupLogPrivilege = {
62
62
  export type BackupRepositoryPrivilege = {
63
63
  id: XoAclBasePrivilege['id']
64
64
  resource: 'backup-repository'
65
- action: '*' | 'read'
65
+ action: '*' | 'create' | 'read' | 'forget' | 'update' | '*' | 'update:enabled' | 'update:name' | 'update:options' | 'update:proxy' | 'update:url'
66
66
  selector?: XoAclBasePrivilege['selector']
67
67
  effect: XoAclBasePrivilege['effect']
68
68
  roleId: XoAclBasePrivilege['roleId']
@@ -89,7 +89,7 @@ export type GpuGroupPrivilege = {
89
89
  export type HostPrivilege = {
90
90
  id: XoAclBasePrivilege['id']
91
91
  resource: 'host'
92
- action: '*' | 'allow-vm' | 'disable' | 'enable' | 'evacuate' | 'export' | '*' | 'export:logs' | 'read' | 'update' | '*' | 'update:tags'
92
+ action: '*' | 'allow-vm' | 'disable' | 'migrate-receive' | 'enable' | 'evacuate' | 'export' | '*' | 'export:logs' | 'join-pool' | 'read' | 'update' | '*' | 'update:tags'
93
93
  selector?: XoAclBasePrivilege['selector']
94
94
  effect: XoAclBasePrivilege['effect']
95
95
  roleId: XoAclBasePrivilege['roleId']
@@ -116,7 +116,7 @@ export type NetworkPrivilege = {
116
116
  export type PbdPrivilege = {
117
117
  id: XoAclBasePrivilege['id']
118
118
  resource: 'pbd'
119
- action: '*' | 'read'
119
+ action: '*' | 'read' | 'plug' | 'unplug'
120
120
  selector?: XoAclBasePrivilege['selector']
121
121
  effect: XoAclBasePrivilege['effect']
122
122
  roleId: XoAclBasePrivilege['roleId']
@@ -152,7 +152,7 @@ export type PifPrivilege = {
152
152
  export type PoolPrivilege = {
153
153
  id: XoAclBasePrivilege['id']
154
154
  resource: 'pool'
155
- action: '*' | 'create' | '*' | 'create:network' | 'create:vm' | 'emergency-shutdown' | 'read' | 'rolling-reboot' | 'rolling-update' | 'update' | '*' | 'update:tags'
155
+ action: '*' | 'add-host' | 'create' | '*' | 'create:network' | 'create:vm' | 'emergency-shutdown' | 'read' | 'rolling-reboot' | 'rolling-update' | 'update' | '*' | 'update:tags'
156
156
  selector?: XoAclBasePrivilege['selector']
157
157
  effect: XoAclBasePrivilege['effect']
158
158
  roleId: XoAclBasePrivilege['roleId']
@@ -206,7 +206,7 @@ export type SmPrivilege = {
206
206
  export type SrPrivilege = {
207
207
  id: XoAclBasePrivilege['id']
208
208
  resource: 'sr'
209
- action: '*' | 'delete' | 'import' | '*' | 'import:vdi' | 'import:vm' | 'read' | 'update' | '*' | 'update:tags'
209
+ action: '*' | 'delete' | 'forget' | 'import' | '*' | 'import:vdi' | 'import:vm' | 'migrate-receive' | 'read' | 'reclaim-space' | 'scan' | 'update' | '*' | 'update:tags'
210
210
  selector?: XoAclBasePrivilege['selector']
211
211
  effect: XoAclBasePrivilege['effect']
212
212
  roleId: XoAclBasePrivilege['roleId']
@@ -233,7 +233,7 @@ export type UserPrivilege = {
233
233
  export type VbdPrivilege = {
234
234
  id: XoAclBasePrivilege['id']
235
235
  resource: 'vbd'
236
- action: '*' | 'read'
236
+ action: '*' | 'connect' | 'create' | 'delete' | 'disconnect' | 'read'
237
237
  selector?: XoAclBasePrivilege['selector']
238
238
  effect: XoAclBasePrivilege['effect']
239
239
  roleId: XoAclBasePrivilege['roleId']
@@ -242,7 +242,7 @@ export type VbdPrivilege = {
242
242
  export type VdiSnapshotPrivilege = {
243
243
  id: XoAclBasePrivilege['id']
244
244
  resource: 'vdi-snapshot'
245
- action: '*' | 'read'
245
+ action: '*' | 'delete' | 'export' | 'read' | 'update' | '*' | 'update:tags'
246
246
  selector?: XoAclBasePrivilege['selector']
247
247
  effect: XoAclBasePrivilege['effect']
248
248
  roleId: XoAclBasePrivilege['roleId']
@@ -260,7 +260,7 @@ export type VdiUnmanagedPrivilege = {
260
260
  export type VdiPrivilege = {
261
261
  id: XoAclBasePrivilege['id']
262
262
  resource: 'vdi'
263
- action: '*' | 'boot' | 'create' | 'delete' | 'export-content' | 'import-content' | 'read' | 'update' | '*' | 'update:tags'
263
+ action: '*' | 'boot' | 'create' | 'delete' | 'export-content' | 'import-content' | 'migrate-send' | 'read' | 'update' | '*' | 'update:tags'
264
264
  selector?: XoAclBasePrivilege['selector']
265
265
  effect: XoAclBasePrivilege['effect']
266
266
  roleId: XoAclBasePrivilege['roleId']
@@ -287,7 +287,7 @@ export type VgpuTypePrivilege = {
287
287
  export type VifPrivilege = {
288
288
  id: XoAclBasePrivilege['id']
289
289
  resource: 'vif'
290
- action: '*' | 'read' | 'create'
290
+ action: '*' | 'connect' | 'create' | 'delete' | 'disconnect' | 'read' | 'update' | '*' | 'update:allowedIpv4Addresses' | 'update:allowedIpv6Addresses' | 'update:lockingMode' | 'update:rateLimit' | 'update:txChecksumming'
291
291
  selector?: XoAclBasePrivilege['selector']
292
292
  effect: XoAclBasePrivilege['effect']
293
293
  roleId: XoAclBasePrivilege['roleId']
@@ -323,7 +323,7 @@ export type VmTemplatePrivilege = {
323
323
  export type VmPrivilege = {
324
324
  id: XoAclBasePrivilege['id']
325
325
  resource: 'vm'
326
- action: '*' | 'delete' | 'export' | 'pause' | 'read' | 'reboot' | '*' | 'reboot:clean' | 'reboot:hard' | 'resume' | 'revert-snapshot' | 'shutdown' | '*' | 'shutdown:clean' | 'shutdown:hard' | 'snapshot' | 'start' | 'suspend' | 'unpause' | 'update' | '*' | 'update:datasources' | 'update:tags'
326
+ action: '*' | 'clone' | 'delete' | 'export' | 'migrate-send' | 'pause' | 'read' | 'reboot' | '*' | 'reboot:clean' | 'reboot:hard' | 'resume' | 'revert-snapshot' | 'shutdown' | '*' | 'shutdown:clean' | 'shutdown:hard' | 'snapshot' | 'start' | 'suspend' | 'unpause' | 'update' | '*' | 'update:affinityHost' | 'update:autoPoweron' | 'update:blockedOperations' | 'update:coresPerSocket' | 'update:cpuCap' | 'update:cpuMask' | 'update:cpuWeight' | 'update:cpus' | 'update:cpusStaticMax' | 'update:creation' | 'update:datasources' | 'update:expNestedHvm' | 'update:hasVendorDevice' | 'update:highAvailability' | 'update:hvmBootFirmware' | 'update:memory' | 'update:memoryMax' | 'update:memoryMin' | 'update:memoryStaticMax' | 'update:nameDescription' | 'update:nameLabel' | 'update:nestedVirt' | 'update:nicType' | 'update:notes' | 'update:PV_args' | 'update:resourceSet' | 'update:secureBoot' | 'update:share' | 'update:startDelay' | 'update:suspendSr' | 'update:tags' | 'update:uefiMode' | 'update:vga' | 'update:videoram' | 'update:viridian' | 'update:virtualizationMode' | 'update:xenStoreData'
327
327
  selector?: XoAclBasePrivilege['selector']
328
328
  effect: XoAclBasePrivilege['effect']
329
329
  roleId: XoAclBasePrivilege['roleId']
package/dist/index.d.mts CHANGED
@@ -23,7 +23,7 @@ export declare function hasPrivilegeOn<T extends SupportedResource>({ user, acti
23
23
  export declare function getMissingPrivileges(params: AnyPrivilegeOnParam[], userPrivileges: AnyPrivilege[]): {
24
24
  objectId: unknown;
25
25
  objectIds: unknown[] | undefined;
26
- action: "create" | "delete" | "read" | "update" | "allow-vm" | "disable" | "enable" | "evacuate" | "export" | "emergency-shutdown" | "rolling-reboot" | "rolling-update" | "run" | "connect" | "disconnect" | "import" | "abort" | "boot" | "export-content" | "import-content" | "instantiate" | "pause" | "reboot" | "resume" | "revert-snapshot" | "shutdown" | "snapshot" | "start" | "suspend" | "unpause" | "*" | "update:action" | "update:resource" | "update:effect" | "update:selector" | "update:description" | "update:groups" | "update:name" | "update:users" | "update:tags" | "export:logs" | "update:management" | "create:network" | "create:vm" | "import:vdi" | "import:vm" | "update:password" | "update:permission" | "update:preferences" | "update:datasources" | "reboot:clean" | "reboot:hard" | "shutdown:clean" | "shutdown:hard";
26
+ action: "create" | "delete" | "read" | "update" | "forget" | "allow-vm" | "disable" | "migrate-receive" | "enable" | "evacuate" | "export" | "join-pool" | "plug" | "unplug" | "add-host" | "emergency-shutdown" | "rolling-reboot" | "rolling-update" | "run" | "connect" | "disconnect" | "import" | "reclaim-space" | "scan" | "abort" | "boot" | "export-content" | "import-content" | "migrate-send" | "instantiate" | "clone" | "pause" | "reboot" | "resume" | "revert-snapshot" | "shutdown" | "snapshot" | "start" | "suspend" | "unpause" | "*" | "update:action" | "update:resource" | "update:effect" | "update:selector" | "update:description" | "update:groups" | "update:name" | "update:users" | "update:proxy" | "update:enabled" | "update:options" | "update:url" | "update:tags" | "export:logs" | "update:management" | "create:network" | "create:vm" | "import:vdi" | "import:vm" | "update:password" | "update:permission" | "update:preferences" | "update:allowedIpv4Addresses" | "update:allowedIpv6Addresses" | "update:lockingMode" | "update:rateLimit" | "update:txChecksumming" | "update:affinityHost" | "update:autoPoweron" | "update:blockedOperations" | "update:coresPerSocket" | "update:cpuCap" | "update:cpuMask" | "update:cpuWeight" | "update:cpus" | "update:cpusStaticMax" | "update:creation" | "update:datasources" | "update:expNestedHvm" | "update:hasVendorDevice" | "update:highAvailability" | "update:hvmBootFirmware" | "update:memory" | "update:memoryMax" | "update:memoryMin" | "update:memoryStaticMax" | "update:nameDescription" | "update:nameLabel" | "update:nestedVirt" | "update:nicType" | "update:notes" | "update:PV_args" | "update:resourceSet" | "update:secureBoot" | "update:share" | "update:startDelay" | "update:suspendSr" | "update:uefiMode" | "update:vga" | "update:videoram" | "update:viridian" | "update:virtualizationMode" | "update:xenStoreData" | "reboot:clean" | "reboot:hard" | "shutdown:clean" | "shutdown:hard";
27
27
  resource: "acl-privilege" | "acl-role" | "alarm" | "backup-archive" | "backup-job" | "backup-log" | "backup-repository" | "group" | "gpuGroup" | "host" | "message" | "network" | "pbd" | "pci" | "pgpu" | "pif" | "pool" | "proxy" | "restore-log" | "schedule" | "server" | "sm" | "sr" | "task" | "user" | "vbd" | "vdi-snapshot" | "vdi-unmanaged" | "vdi" | "vgpu" | "vgpuType" | "vif" | "vm-controller" | "vm-snapshot" | "vm-template" | "vm" | "vtpm";
28
28
  }[];
29
29
  export declare function hasPrivileges(params: AnyPrivilegeOnParam[], userPrivileges: AnyPrivilege[]): boolean;
package/package.json CHANGED
@@ -6,7 +6,7 @@
6
6
  "main": "dist/index.mjs",
7
7
  "name": "@xen-orchestra/acl",
8
8
  "homepage": "https://github.com/vatesfr/xen-orchestra/tree/master/@xen-orchestra/acl",
9
- "version": "1.1.0",
9
+ "version": "1.3.0",
10
10
  "license": "AGPL-3.0-or-later",
11
11
  "private": false,
12
12
  "type": "module",
@@ -30,10 +30,10 @@
30
30
  },
31
31
  "devDependencies": {
32
32
  "@eslint/js": "^9.19.0",
33
- "@vates/types": "^1.25.0",
33
+ "@vates/types": "^1.27.0",
34
34
  "rimraf": "^6.0.1",
35
35
  "typescript": "~5.6",
36
- "typescript-eslint": "^8.23.0"
36
+ "typescript-eslint": "^8.61.0"
37
37
  },
38
38
  "bugs": "https://github.com/vatesfr/xen-orchestra/issues",
39
39
  "repository": {