@getcommunity/gc-validators 0.0.216 → 0.0.217

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 (86) hide show
  1. package/dist/chunk-CKQMccvm.cjs +28 -0
  2. package/dist/constants.cjs +461 -438
  3. package/dist/constants.cjs.map +1 -1
  4. package/dist/constants.d.cts +2 -233
  5. package/dist/constants.d.mts +2 -0
  6. package/dist/constants.mjs +355 -0
  7. package/dist/constants.mjs.map +1 -0
  8. package/dist/index-B6pNPQrV.d.mts +4192 -0
  9. package/dist/index-CQtazKyX.d.cts +4192 -0
  10. package/dist/index-CiWVYf_f.d.cts +292 -0
  11. package/dist/index-DOR_It7I.d.mts +292 -0
  12. package/dist/index.cjs +350 -1388
  13. package/dist/index.d.cts +3 -10
  14. package/dist/index.d.mts +3 -0
  15. package/dist/index.mjs +6 -0
  16. package/dist/permissions.cjs +757 -30
  17. package/dist/permissions.cjs.map +1 -1
  18. package/dist/permissions.d.cts +2 -747
  19. package/dist/permissions.d.mts +2 -0
  20. package/dist/permissions.mjs +753 -0
  21. package/dist/permissions.mjs.map +1 -0
  22. package/dist/schemas.cjs +1781 -896
  23. package/dist/schemas.cjs.map +1 -1
  24. package/dist/schemas.d.cts +2 -1935
  25. package/dist/schemas.d.mts +2 -0
  26. package/dist/schemas.mjs +1559 -0
  27. package/dist/schemas.mjs.map +1 -0
  28. package/dist/types.cjs +0 -6
  29. package/dist/types.d.cts +2 -851
  30. package/dist/types.d.mts +2 -0
  31. package/dist/types.mjs +1 -0
  32. package/dist/utilities.cjs +76 -38
  33. package/dist/utilities.cjs.map +1 -1
  34. package/dist/utilities.d.cts +2 -26
  35. package/dist/utilities.d.mts +2 -0
  36. package/dist/utilities.mjs +68 -0
  37. package/dist/utilities.mjs.map +1 -0
  38. package/package.json +4 -4
  39. package/dist/chunk-57PRSDKM.cjs +0 -368
  40. package/dist/chunk-57PRSDKM.cjs.map +0 -1
  41. package/dist/chunk-7CI3M2JM.js +0 -3
  42. package/dist/chunk-7CI3M2JM.js.map +0 -1
  43. package/dist/chunk-ABPKJ5AP.js +0 -259
  44. package/dist/chunk-ABPKJ5AP.js.map +0 -1
  45. package/dist/chunk-BYTL5J7D.js +0 -2606
  46. package/dist/chunk-BYTL5J7D.js.map +0 -1
  47. package/dist/chunk-CDBT3J75.cjs +0 -4
  48. package/dist/chunk-CDBT3J75.cjs.map +0 -1
  49. package/dist/chunk-DU5WCXJJ.js +0 -685
  50. package/dist/chunk-DU5WCXJJ.js.map +0 -1
  51. package/dist/chunk-IMI6XEMX.cjs +0 -2849
  52. package/dist/chunk-IMI6XEMX.cjs.map +0 -1
  53. package/dist/chunk-NMDMJZPF.cjs +0 -692
  54. package/dist/chunk-NMDMJZPF.cjs.map +0 -1
  55. package/dist/chunk-NNLSUHMQ.js +0 -63
  56. package/dist/chunk-NNLSUHMQ.js.map +0 -1
  57. package/dist/chunk-UAQWYRXG.cjs +0 -92
  58. package/dist/chunk-UAQWYRXG.cjs.map +0 -1
  59. package/dist/comment.document-HT6qJLh5.d.cts +0 -468
  60. package/dist/comment.document-xCsfHOer.d.ts +0 -468
  61. package/dist/constants.d.ts +0 -233
  62. package/dist/constants.js +0 -3
  63. package/dist/constants.js.map +0 -1
  64. package/dist/font.constants-BVwxlH3J.d.cts +0 -52
  65. package/dist/font.constants-BVwxlH3J.d.ts +0 -52
  66. package/dist/index.cjs.map +0 -1
  67. package/dist/index.d.ts +0 -10
  68. package/dist/index.js +0 -7
  69. package/dist/index.js.map +0 -1
  70. package/dist/permission.constants-B99nobws.d.cts +0 -30
  71. package/dist/permission.constants-B99nobws.d.ts +0 -30
  72. package/dist/permissions.d.ts +0 -747
  73. package/dist/permissions.js +0 -3
  74. package/dist/permissions.js.map +0 -1
  75. package/dist/response-8Bkawql4.d.cts +0 -56
  76. package/dist/response-8Bkawql4.d.ts +0 -56
  77. package/dist/schemas.d.ts +0 -1935
  78. package/dist/schemas.js +0 -5
  79. package/dist/schemas.js.map +0 -1
  80. package/dist/types.cjs.map +0 -1
  81. package/dist/types.d.ts +0 -851
  82. package/dist/types.js +0 -3
  83. package/dist/types.js.map +0 -1
  84. package/dist/utilities.d.ts +0 -26
  85. package/dist/utilities.js +0 -3
  86. package/dist/utilities.js.map +0 -1
@@ -1,692 +0,0 @@
1
- 'use strict';
2
-
3
- // src/permissions/permission.abac.ts
4
- var ROLE_PERMISSIONS = {
5
- authenticated: {
6
- "user-account": {
7
- list: false,
8
- create: false,
9
- read: false,
10
- update: false,
11
- delete: false
12
- },
13
- comment: {
14
- list: true,
15
- create: true,
16
- update: (u, p, d) => u.id === Number(d?.author?.id),
17
- delete: (u, p, d) => u.id === Number(d?.author?.id),
18
- report: true
19
- },
20
- client: {
21
- access: false,
22
- billing: false,
23
- owner: false,
24
- manager: false,
25
- admin: false,
26
- list: false,
27
- create: false,
28
- read: false,
29
- update: false,
30
- delete: false
31
- },
32
- "client-user": {
33
- list: false,
34
- create: false,
35
- read: false,
36
- update: false,
37
- delete: false
38
- },
39
- "client-content-pillar": {
40
- list: false,
41
- create: false,
42
- read: false,
43
- update: false,
44
- delete: false
45
- },
46
- "client-media-platform": {
47
- list: false,
48
- create: false,
49
- read: false,
50
- update: false,
51
- delete: false
52
- },
53
- "client-media-platform-content-type": {
54
- list: false,
55
- create: false,
56
- read: false,
57
- update: false,
58
- delete: false
59
- },
60
- "client-project": {
61
- list: false,
62
- create: false,
63
- read: false,
64
- update: false,
65
- delete: false,
66
- assign: false
67
- },
68
- "client-report": {
69
- list: false,
70
- create: false,
71
- read: false,
72
- update: false,
73
- delete: false
74
- },
75
- "client-styleguide": {
76
- list: false,
77
- create: false,
78
- read: false,
79
- update: false,
80
- delete: false
81
- },
82
- "content-pillar": {
83
- list: false,
84
- create: false,
85
- read: false,
86
- update: false,
87
- delete: false
88
- },
89
- "media-platform": {
90
- list: false,
91
- create: false,
92
- read: false,
93
- update: false,
94
- delete: false
95
- },
96
- "media-content-type": {
97
- list: false,
98
- create: false,
99
- read: false,
100
- update: false,
101
- delete: false
102
- },
103
- "monday-workspace": {
104
- list: false,
105
- create: false,
106
- read: false,
107
- update: false,
108
- delete: false
109
- },
110
- "utm-tracking-link": {
111
- list: false,
112
- create: false,
113
- read: false,
114
- update: false,
115
- delete: false
116
- },
117
- gcflytour: {
118
- list: true,
119
- create: false,
120
- read: true,
121
- update: false,
122
- delete: false
123
- },
124
- "gcflytour-snap": {
125
- list: true,
126
- create: false,
127
- read: true,
128
- update: false,
129
- delete: false
130
- }
131
- },
132
- public: {
133
- "user-account": {
134
- list: false,
135
- create: false,
136
- read: false,
137
- update: false,
138
- delete: false
139
- },
140
- comment: {
141
- list: true,
142
- create: false,
143
- update: false,
144
- delete: false,
145
- report: false
146
- },
147
- client: {
148
- access: false,
149
- billing: false,
150
- owner: false,
151
- manager: false,
152
- admin: false,
153
- list: false,
154
- create: false,
155
- read: false,
156
- update: false,
157
- delete: false
158
- },
159
- "client-user": {
160
- list: false,
161
- create: false,
162
- read: false,
163
- update: false,
164
- delete: false
165
- },
166
- "client-content-pillar": {
167
- list: false,
168
- create: false,
169
- read: false,
170
- update: false,
171
- delete: false
172
- },
173
- "client-media-platform": {
174
- list: false,
175
- create: false,
176
- read: false,
177
- update: false,
178
- delete: false
179
- },
180
- "client-media-platform-content-type": {
181
- list: false,
182
- create: false,
183
- read: false,
184
- update: false,
185
- delete: false
186
- },
187
- "client-project": {
188
- list: false,
189
- create: false,
190
- read: false,
191
- update: false,
192
- delete: false,
193
- assign: false
194
- },
195
- "client-report": {
196
- list: false,
197
- create: false,
198
- read: false,
199
- update: false,
200
- delete: false
201
- },
202
- "client-styleguide": {
203
- list: false,
204
- create: false,
205
- read: false,
206
- update: false,
207
- delete: false
208
- },
209
- "content-pillar": {
210
- list: false,
211
- create: false,
212
- read: false,
213
- update: false,
214
- delete: false
215
- },
216
- "media-platform": {
217
- list: false,
218
- create: false,
219
- read: false,
220
- update: false,
221
- delete: false
222
- },
223
- "media-content-type": {
224
- list: false,
225
- create: false,
226
- read: false,
227
- update: false,
228
- delete: false
229
- },
230
- "monday-workspace": {
231
- list: false,
232
- create: false,
233
- read: false,
234
- update: false,
235
- delete: false
236
- },
237
- "utm-tracking-link": {
238
- list: false,
239
- create: false,
240
- read: false,
241
- update: false,
242
- delete: false
243
- },
244
- gcflytour: {
245
- list: true,
246
- create: false,
247
- read: true,
248
- update: false,
249
- delete: false
250
- },
251
- "gcflytour-snap": {
252
- list: true,
253
- create: false,
254
- read: true,
255
- update: false,
256
- delete: false
257
- }
258
- },
259
- employee: {
260
- "user-account": {
261
- list: true,
262
- create: false,
263
- read: true,
264
- update: (u, p, d) => u.account.documentId === d?.documentId,
265
- delete: false
266
- },
267
- comment: {
268
- list: true,
269
- create: true,
270
- update: (u, p, d) => u.id === Number(d?.author?.id),
271
- delete: (u, p, d) => u.id === Number(d?.author?.id),
272
- report: true
273
- },
274
- client: {
275
- access: (u, p, d) => p.scopes.includes("client:access"),
276
- billing: (u, p, d) => p.scopes.includes("client:billing"),
277
- owner: (u, p, d) => p.scopes.includes("client:owner"),
278
- manager: (u, p, d) => p.scopes.includes("client:manager"),
279
- admin: (u, p, d) => p.scopes.includes("client:admin"),
280
- list: (u, p, d) => p.scopes.includes("client:access"),
281
- create: false,
282
- read: (u, p, d) => p.scopes.includes("client:access"),
283
- update: (u, p, d) => p.scopes.includes("client:manager"),
284
- delete: false
285
- },
286
- "client-user": {
287
- list: true,
288
- create: false,
289
- read: true,
290
- update: false,
291
- delete: false,
292
- verify: true
293
- },
294
- "client-content-pillar": {
295
- list: (u, p, d) => p.scopes.includes("client-content-pillar:list"),
296
- create: (u, p) => p.scopes.includes("client-content-pillar:create"),
297
- read: (u, p, d) => p.scopes.includes("client-content-pillar:read"),
298
- update: (u, p, d) => p.scopes.includes("client-content-pillar:update"),
299
- delete: false
300
- },
301
- "client-media-platform": {
302
- list: (u, p, d) => p.scopes.includes("client-media-platform:list"),
303
- create: (u, p) => p.scopes.includes("client-media-platform:create"),
304
- read: (u, p, d) => p.scopes.includes("client-media-platform:read"),
305
- update: (u, p, d) => p.scopes.includes("client-media-platform:update"),
306
- delete: false
307
- },
308
- "client-media-platform-content-type": {
309
- list: (u, p, d) => p.scopes.includes("client-media-platform-content-type:list"),
310
- create: (u, p) => p.scopes.includes("client-media-platform-content-type:create"),
311
- read: (u, p, d) => p.scopes.includes("client-media-platform-content-type:read"),
312
- update: (u, p, d) => p.scopes.includes("client-media-platform-content-type:update"),
313
- delete: false
314
- },
315
- "client-project": {
316
- list: (u, p, d) => p.scopes.includes("client-project:list"),
317
- create: (u, p) => p.scopes.includes("client-project:create"),
318
- read: (u, p, d) => p.scopes.includes("client-project:read"),
319
- update: (u, p, d) => p.scopes.includes("client-project:update"),
320
- delete: false,
321
- assign: (u, p, d) => p.scopes.includes("client-project:assign")
322
- },
323
- "client-report": {
324
- list: (u, p, d) => p.scopes.includes("client-report:list"),
325
- create: (u, p) => p.scopes.includes("client-report:create"),
326
- read: (u, p, d) => p.scopes.includes("client-report:read"),
327
- update: (u, p, d) => p.scopes.includes("client-report:update"),
328
- delete: false
329
- },
330
- "client-styleguide": {
331
- list: (u, p, d) => p.scopes.includes("client-styleguide:list"),
332
- create: false,
333
- read: (u, p, d) => p.scopes.includes("client-styleguide:read"),
334
- update: false,
335
- delete: false
336
- },
337
- "content-pillar": {
338
- list: true,
339
- create: false,
340
- read: true,
341
- update: false,
342
- delete: false
343
- },
344
- "media-platform": {
345
- list: true,
346
- create: false,
347
- read: true,
348
- update: false,
349
- delete: false
350
- },
351
- "media-content-type": {
352
- list: true,
353
- create: false,
354
- read: true,
355
- update: false,
356
- delete: false
357
- },
358
- "monday-workspace": {
359
- list: (u, p, d) => p.scopes.includes("monday-workspace:list"),
360
- create: (u, p) => p.scopes.includes("monday-workspace:create"),
361
- read: (u, p, d) => p.scopes.includes("monday-workspace:read"),
362
- update: (u, p, d) => p.scopes.includes("monday-workspace:update"),
363
- delete: (u, p, d) => p.scopes.includes("monday-workspace:delete")
364
- },
365
- "utm-tracking-link": {
366
- list: (u, p, d) => p.scopes.includes("utm-tracking-link:list"),
367
- create: (u, p) => p.scopes.includes("utm-tracking-link:create"),
368
- read: (u, p, d) => d?.creator?.documentId === u.documentId || p.scopes.includes("utm-tracking-link:read"),
369
- update: (u, p, d) => d?.creator?.documentId === u.documentId || p.scopes.includes("utm-tracking-link:update"),
370
- delete: (u, p, d) => d?.creator?.documentId === u.documentId || p.scopes.includes("utm-tracking-link:delete")
371
- },
372
- gcflytour: {
373
- list: true,
374
- create: (u, p) => p.scopes.includes("gcflytour:create"),
375
- read: true,
376
- update: (u, p, d) => p.scopes.includes("gcflytour:update"),
377
- delete: (u, p, d) => p.scopes.includes("gcflytour:delete")
378
- },
379
- "gcflytour-snap": {
380
- list: true,
381
- create: (u, p) => p.scopes.includes("gcflytour-snap:create"),
382
- read: true,
383
- update: (u, p, d) => p.scopes.includes("gcflytour-snap:update"),
384
- delete: (u, p, d) => p.scopes.includes("gcflytour-snap:delete")
385
- }
386
- },
387
- manager: {
388
- "user-account": {
389
- list: true,
390
- create: false,
391
- read: true,
392
- update: (u, p, d) => u.account.documentId === d?.documentId,
393
- delete: false
394
- },
395
- comment: {
396
- list: true,
397
- create: true,
398
- update: (u, p, d) => u.id === Number(d?.author?.id),
399
- delete: (u, p, d) => u.id === Number(d?.author?.id),
400
- report: true
401
- },
402
- client: {
403
- access: true,
404
- billing: true,
405
- owner: true,
406
- manager: true,
407
- admin: true,
408
- list: true,
409
- create: true,
410
- read: true,
411
- update: true,
412
- delete: false
413
- },
414
- "client-user": {
415
- list: true,
416
- create: true,
417
- read: true,
418
- update: true,
419
- delete: true,
420
- verify: true
421
- },
422
- "client-content-pillar": {
423
- list: true,
424
- create: true,
425
- read: true,
426
- update: true,
427
- delete: true
428
- },
429
- "client-media-platform": {
430
- list: true,
431
- create: true,
432
- read: true,
433
- update: true,
434
- delete: true
435
- },
436
- "client-media-platform-content-type": {
437
- list: true,
438
- create: true,
439
- read: true,
440
- update: true,
441
- delete: true
442
- },
443
- "client-project": {
444
- list: true,
445
- create: true,
446
- read: true,
447
- update: true,
448
- delete: true,
449
- assign: true
450
- },
451
- "client-report": {
452
- list: true,
453
- create: true,
454
- read: true,
455
- update: true,
456
- delete: true
457
- },
458
- "client-styleguide": {
459
- list: true,
460
- create: true,
461
- read: true,
462
- update: true,
463
- delete: true
464
- },
465
- "content-pillar": {
466
- list: true,
467
- create: true,
468
- read: true,
469
- update: true,
470
- delete: true
471
- },
472
- "media-platform": {
473
- list: true,
474
- create: true,
475
- read: true,
476
- update: true,
477
- delete: true
478
- },
479
- "media-content-type": {
480
- list: true,
481
- create: true,
482
- read: true,
483
- update: true,
484
- delete: true
485
- },
486
- "monday-workspace": {
487
- list: true,
488
- create: true,
489
- read: true,
490
- update: true,
491
- delete: true
492
- },
493
- "utm-tracking-link": {
494
- list: true,
495
- create: true,
496
- read: true,
497
- update: true,
498
- delete: true
499
- },
500
- gcflytour: {
501
- list: true,
502
- create: true,
503
- read: true,
504
- update: true,
505
- delete: true
506
- },
507
- "gcflytour-snap": {
508
- list: true,
509
- create: true,
510
- read: true,
511
- update: true,
512
- delete: true
513
- }
514
- },
515
- client: {
516
- "user-account": {
517
- list: true,
518
- create: false,
519
- read: true,
520
- update: (u, p, d) => u.account.documentId === d?.documentId,
521
- delete: false
522
- },
523
- comment: {
524
- list: true,
525
- create: true,
526
- update: (u, p, d) => u.id === Number(d?.author?.id),
527
- delete: (u, p, d) => u.id === Number(d?.author?.id),
528
- report: true
529
- },
530
- client: {
531
- access: (u, p, d) => p.scopes.includes("client:access"),
532
- billing: (u, p, d) => p.scopes.includes("client:billing"),
533
- owner: (u, p, d) => p.scopes.includes("client:owner"),
534
- manager: (u, p, d) => p.scopes.includes("client:manager"),
535
- admin: (u, p, d) => p.scopes.includes("client:admin"),
536
- list: (u, p, d) => p.scopes.includes("client:access"),
537
- create: false,
538
- read: (u, p, d) => p.scopes.includes("client:access"),
539
- update: (u, p, d) => p.scopes.includes("client:manager"),
540
- delete: false
541
- },
542
- "client-user": {
543
- list: true,
544
- create: false,
545
- read: true,
546
- update: false,
547
- delete: false,
548
- verify: true
549
- },
550
- "client-content-pillar": {
551
- list: (u, p, d) => p.scopes.includes("client-content-pillar:list"),
552
- create: (u, p) => p.scopes.includes("client-content-pillar:create"),
553
- read: (u, p, d) => p.scopes.includes("client-content-pillar:read"),
554
- update: (u, p, d) => p.scopes.includes("client-content-pillar:update"),
555
- delete: false
556
- },
557
- "client-media-platform": {
558
- list: (u, p, d) => p.scopes.includes("client-media-platform:list"),
559
- create: (u, p) => p.scopes.includes("client-media-platform:create"),
560
- read: (u, p, d) => p.scopes.includes("client-media-platform:read"),
561
- update: (u, p, d) => p.scopes.includes("client-media-platform:update"),
562
- delete: false
563
- },
564
- "client-media-platform-content-type": {
565
- list: (u, p, d) => p.scopes.includes("client-media-platform-content-type:list"),
566
- create: (u, p) => p.scopes.includes("client-media-platform-content-type:create"),
567
- read: (u, p, d) => p.scopes.includes("client-media-platform-content-type:read"),
568
- update: (u, p, d) => p.scopes.includes("client-media-platform-content-type:update"),
569
- delete: false
570
- },
571
- "client-project": {
572
- list: (u, p, d) => p.scopes.includes("client-project:list"),
573
- create: (u, p) => p.scopes.includes("client-project:create"),
574
- read: (u, p, d) => p.scopes.includes("client-project:read"),
575
- update: (u, p, d) => p.scopes.includes("client-project:update"),
576
- delete: false,
577
- assign: (u, p, d) => p.scopes.includes("client-project:assign")
578
- },
579
- "client-report": {
580
- list: (u, p, d) => p.scopes.includes("client-report:list"),
581
- create: (u, p) => p.scopes.includes("client-report:create"),
582
- read: (u, p, d) => p.scopes.includes("client-report:read"),
583
- update: (u, p, d) => p.scopes.includes("client-report:update"),
584
- delete: false
585
- },
586
- "client-styleguide": {
587
- list: (u, p, d) => p.scopes.includes("client-styleguide:list"),
588
- create: false,
589
- read: (u, p, d) => p.scopes.includes("client-styleguide:read"),
590
- update: false,
591
- delete: false
592
- },
593
- "content-pillar": {
594
- list: true,
595
- create: false,
596
- read: true,
597
- update: false,
598
- delete: false
599
- },
600
- "media-platform": {
601
- list: true,
602
- create: false,
603
- read: true,
604
- update: false,
605
- delete: false
606
- },
607
- "media-content-type": {
608
- list: true,
609
- create: false,
610
- read: true,
611
- update: false,
612
- delete: false
613
- },
614
- "monday-workspace": {
615
- list: (u, p, d) => p.scopes.includes("monday-workspace:list"),
616
- create: false,
617
- read: (u, p, d) => p.scopes.includes("monday-workspace:read"),
618
- update: false,
619
- delete: false
620
- },
621
- "utm-tracking-link": {
622
- list: (u, p, d) => p.scopes.includes("utm-tracking-link:list"),
623
- create: (u, p) => p.scopes.includes("utm-tracking-link:create"),
624
- read: (u, p, d) => d?.creator?.documentId === u.documentId || p.scopes.includes("utm-tracking-link:read"),
625
- update: (u, p, d) => d?.creator?.documentId === u.documentId || p.scopes.includes("utm-tracking-link:update"),
626
- delete: (u, p, d) => d?.creator?.documentId === u.documentId || p.scopes.includes("utm-tracking-link:delete")
627
- },
628
- gcflytour: {
629
- list: true,
630
- create: false,
631
- read: true,
632
- update: false,
633
- delete: false
634
- },
635
- "gcflytour-snap": {
636
- list: true,
637
- create: false,
638
- read: true,
639
- update: false,
640
- delete: false
641
- }
642
- }
643
- };
644
-
645
- // src/permissions/permission.constants.ts
646
- var CLIENT_ENTITY_PERMISSIONS = {
647
- client: ["admin", "owner", "manager", "billing", "access"],
648
- "client-project": ["list", "create", "read", "update", "delete", "assign"],
649
- "client-media-platform": ["list", "create", "read", "update", "delete"],
650
- "client-media-platform-content-type": ["list", "create", "read", "update", "delete"],
651
- "client-content-pillar": ["list", "create", "read", "update", "delete"],
652
- "client-report": ["list", "create", "read", "update", "delete"],
653
- "client-styleguide": ["list", "create", "read", "update", "delete"],
654
- "monday-workspace": ["list", "create", "read", "update", "delete"],
655
- "utm-tracking-link": ["list", "create", "read", "update", "delete"],
656
- gcflytour: ["list", "create", "read", "update", "delete"],
657
- "gcflytour-snap": ["list", "create", "read", "update", "delete"]
658
- };
659
- var CLIENT_ENTITY_KEYS = Object.keys(
660
- CLIENT_ENTITY_PERMISSIONS
661
- );
662
- var CLIENT_ENTITY_SCOPES = Object.entries(
663
- CLIENT_ENTITY_PERMISSIONS
664
- ).flatMap(
665
- ([entity, actions]) => actions.map((action) => `${entity}:${action}`)
666
- );
667
-
668
- // src/permissions/permission.utilities.ts
669
- function hasPermission(user, permissions, resource, action, data) {
670
- if (!user) return false;
671
- const permission = ROLE_PERMISSIONS[user.role.type][resource]?.[action];
672
- if (permission == null) return false;
673
- if (typeof permission === "boolean") return permission;
674
- return permission(user, permissions, data);
675
- }
676
- function canAssignPermission(user, resource, action) {
677
- if (!user) return false;
678
- const permission = ROLE_PERMISSIONS[user.role.type][resource]?.[action];
679
- if (permission == null) return false;
680
- if (typeof permission === "boolean") return permission;
681
- if (typeof permission === "function") return true;
682
- return false;
683
- }
684
-
685
- exports.CLIENT_ENTITY_KEYS = CLIENT_ENTITY_KEYS;
686
- exports.CLIENT_ENTITY_PERMISSIONS = CLIENT_ENTITY_PERMISSIONS;
687
- exports.CLIENT_ENTITY_SCOPES = CLIENT_ENTITY_SCOPES;
688
- exports.ROLE_PERMISSIONS = ROLE_PERMISSIONS;
689
- exports.canAssignPermission = canAssignPermission;
690
- exports.hasPermission = hasPermission;
691
- //# sourceMappingURL=chunk-NMDMJZPF.cjs.map
692
- //# sourceMappingURL=chunk-NMDMJZPF.cjs.map