@getcommunity/gc-validators 0.0.192 → 0.0.193

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 (73) hide show
  1. package/dist/constants/index.d.cts +14 -1
  2. package/dist/constants/index.d.ts +14 -1
  3. package/dist/constants/permission.constants.cjs.map +1 -1
  4. package/dist/constants/permission.constants.d.cts +17 -29
  5. package/dist/constants/permission.constants.d.ts +17 -29
  6. package/dist/constants/permission.constants.js.map +1 -1
  7. package/dist/index.d.cts +2 -4
  8. package/dist/index.d.ts +2 -4
  9. package/dist/{client-content-pillar.document-BmtrCuzt.d.cts → permission.constants-Cz0fuVJx.d.cts} +118 -4
  10. package/dist/{client-content-pillar.document-XoX1rNnY.d.ts → permission.constants-DVf4IlLp.d.ts} +118 -4
  11. package/dist/schemas/client-user.schemas.d.cts +17 -1
  12. package/dist/schemas/client-user.schemas.d.ts +17 -1
  13. package/dist/schemas/index.d.cts +17 -1
  14. package/dist/schemas/index.d.ts +17 -1
  15. package/dist/types/documents/blog-post.document.d.cts +2 -2
  16. package/dist/types/documents/blog-post.document.d.ts +2 -2
  17. package/dist/types/documents/category.document.d.cts +2 -2
  18. package/dist/types/documents/category.document.d.ts +2 -2
  19. package/dist/types/documents/client-content-pillar.document.d.cts +5 -4
  20. package/dist/types/documents/client-content-pillar.document.d.ts +5 -4
  21. package/dist/types/documents/client-media-platform-content-type.document.d.cts +5 -4
  22. package/dist/types/documents/client-media-platform-content-type.document.d.ts +5 -4
  23. package/dist/types/documents/client-media-platform.document.d.cts +5 -4
  24. package/dist/types/documents/client-media-platform.document.d.ts +5 -4
  25. package/dist/types/documents/client-project.document.d.cts +5 -4
  26. package/dist/types/documents/client-project.document.d.ts +5 -4
  27. package/dist/types/documents/client-report.document.d.cts +5 -4
  28. package/dist/types/documents/client-report.document.d.ts +5 -4
  29. package/dist/types/documents/client-styleguide.document.d.cts +5 -4
  30. package/dist/types/documents/client-styleguide.document.d.ts +5 -4
  31. package/dist/types/documents/client-user.document.d.cts +5 -4
  32. package/dist/types/documents/client-user.document.d.ts +5 -4
  33. package/dist/types/documents/client.document.d.cts +4 -3
  34. package/dist/types/documents/client.document.d.ts +4 -3
  35. package/dist/types/documents/content-pillar.document.d.cts +5 -4
  36. package/dist/types/documents/content-pillar.document.d.ts +5 -4
  37. package/dist/types/documents/gcflytour-snap.document.d.cts +5 -4
  38. package/dist/types/documents/gcflytour-snap.document.d.ts +5 -4
  39. package/dist/types/documents/gcflytour.document.d.cts +5 -4
  40. package/dist/types/documents/gcflytour.document.d.ts +5 -4
  41. package/dist/types/documents/index.d.cts +3 -4
  42. package/dist/types/documents/index.d.ts +3 -4
  43. package/dist/types/documents/media-content-type.document.d.cts +5 -4
  44. package/dist/types/documents/media-content-type.document.d.ts +5 -4
  45. package/dist/types/documents/media-platform.document.d.cts +5 -4
  46. package/dist/types/documents/media-platform.document.d.ts +5 -4
  47. package/dist/types/documents/permission.document.d.cts +5 -4
  48. package/dist/types/documents/permission.document.d.ts +5 -4
  49. package/dist/types/documents/product-highlight.document.d.cts +5 -4
  50. package/dist/types/documents/product-highlight.document.d.ts +5 -4
  51. package/dist/types/documents/role.document.d.cts +5 -4
  52. package/dist/types/documents/role.document.d.ts +5 -4
  53. package/dist/types/documents/team-member.document.d.cts +2 -2
  54. package/dist/types/documents/team-member.document.d.ts +2 -2
  55. package/dist/types/documents/trend.document.d.cts +2 -2
  56. package/dist/types/documents/trend.document.d.ts +2 -2
  57. package/dist/types/documents/user-account.document.d.cts +5 -4
  58. package/dist/types/documents/user-account.document.d.ts +5 -4
  59. package/dist/types/documents/user.document.d.cts +5 -4
  60. package/dist/types/documents/user.document.d.ts +5 -4
  61. package/dist/types/documents/utm-tracking-link.document.d.cts +5 -4
  62. package/dist/types/documents/utm-tracking-link.document.d.ts +5 -4
  63. package/dist/types/index.d.cts +2 -4
  64. package/dist/types/index.d.ts +2 -4
  65. package/dist/types/permissions/index.d.cts +3 -5
  66. package/dist/types/permissions/index.d.ts +3 -5
  67. package/dist/types/permissions/permission.types.d.cts +4 -89
  68. package/dist/types/permissions/permission.types.d.ts +4 -89
  69. package/dist/utilities/permission.utilities.d.cts +3 -5
  70. package/dist/utilities/permission.utilities.d.ts +3 -5
  71. package/package.json +1 -1
  72. package/dist/{blog-post.document-sRpXgwmw.d.ts → blog-post.document-DuONcTyz.d.ts} +1 -1
  73. package/dist/{blog-post.document-D-xEXtLS.d.cts → blog-post.document-psR2l_yP.d.cts} +1 -1
@@ -1,10 +1,7 @@
1
- export { LCRUDActions, Permissions, RolesWithPermissions } from './permission.types.js';
2
- import '../../constants/permission.constants.js';
3
- import '../../client-content-pillar.document-XoX1rNnY.js';
1
+ export { x as ClientEntityActions, w as ClientEntityKey, y as ClientEntityScope, L as LCRUDActions, v as Permissions, u as RolesWithPermissions } from '../../permission.constants-DVf4IlLp.js';
4
2
  import '../core/document.js';
5
3
  import '../components/blocks/brand-logos.js';
6
4
  import '../core/media.js';
7
- import '../components/utm/utm-option.js';
8
5
  import '../components/shared/rich-text-block.js';
9
6
  import '../../constants/client-project.constants.js';
10
7
  import '../components/brand/styleguide-color.js';
@@ -12,8 +9,9 @@ import '../components/brand/styleguide-font.js';
12
9
  import '../../constants/font.constants.js';
13
10
  import '../components/blocks/fullscreen-content.js';
14
11
  import '../components/blocks/video.js';
12
+ import '../documents/tag.document.js';
15
13
  import '../documents/product.document.js';
16
14
  import '../components/shared/seo.js';
17
- import '../documents/tag.document.js';
15
+ import '../components/utm/utm-option.js';
18
16
  import '../documents/comment.document.js';
19
17
  import '../../constants/comment.constants.js';
@@ -1,10 +1,8 @@
1
- import { CLIENT_ENTITY_PERMISSIONS } from '../../constants/permission.constants.cjs';
2
- import { R as RoleType, U as UserAccountDocument, h as ClientDocument, f as ClientUserDocument, C as ClientContentPillarDocument, b as ClientMediaPlatformDocument, a as ClientMediaPlatformContentTypeDocument, c as ClientProjectDocument, d as ClientReportDocument, e as ClientStyleguideDocument, i as ContentPillarDocument, k as MediaPlatformDocument, M as MediaContentTypeDocument, q as UtmTrackingLinkDocument, j as GCFlyTourDocument, G as GCFlyTourSnapDocument, A as AuthorizedUserDocument, g as ClientUserDocumentStatus } from '../../client-content-pillar.document-BmtrCuzt.cjs';
3
- import { CommentDocument } from '../documents/comment.document.cjs';
1
+ export { x as ClientEntityActions, w as ClientEntityKey, y as ClientEntityScope, L as LCRUDActions, v as Permissions, u as RolesWithPermissions } from '../../permission.constants-Cz0fuVJx.cjs';
2
+ import '../documents/comment.document.cjs';
4
3
  import '../core/document.cjs';
5
4
  import '../components/blocks/brand-logos.cjs';
6
5
  import '../core/media.cjs';
7
- import '../components/utm/utm-option.cjs';
8
6
  import '../components/shared/rich-text-block.cjs';
9
7
  import '../../constants/client-project.constants.cjs';
10
8
  import '../components/brand/styleguide-color.cjs';
@@ -12,91 +10,8 @@ import '../components/brand/styleguide-font.cjs';
12
10
  import '../../constants/font.constants.cjs';
13
11
  import '../components/blocks/fullscreen-content.cjs';
14
12
  import '../components/blocks/video.cjs';
13
+ import '../documents/tag.document.cjs';
15
14
  import '../documents/product.document.cjs';
16
15
  import '../components/shared/seo.cjs';
17
- import '../documents/tag.document.cjs';
16
+ import '../components/utm/utm-option.cjs';
18
17
  import '../../constants/comment.constants.cjs';
19
-
20
- /**
21
- * Attribute-based access control (ABAC) permissions
22
- *
23
- * @reference https://github.com/WebDevSimplified/permission-system/blob/main/auth-abac.ts
24
- */
25
-
26
- type LCRUDActions = "list" | "create" | "read" | "update" | "delete";
27
- type PermissionCheck<Key extends keyof Permissions> = boolean | ((user: AuthorizedUserDocument, permissions: ClientUserDocumentStatus, data?: Permissions[Key]["dataType"]) => boolean);
28
- type RolesWithPermissions = {
29
- [R in RoleType]: Partial<{
30
- [Key in keyof Permissions]: Partial<{
31
- [Action in Permissions[Key]["action"]]: PermissionCheck<Key>;
32
- }>;
33
- }>;
34
- };
35
- type Permissions = {
36
- "user-account": {
37
- dataType: UserAccountDocument;
38
- action: LCRUDActions;
39
- };
40
- comment: {
41
- dataType: CommentDocument;
42
- action: "list" | "create" | "update" | "delete" | "report";
43
- };
44
- client: {
45
- dataType: ClientDocument;
46
- action: (typeof CLIENT_ENTITY_PERMISSIONS)["client"][number] | LCRUDActions;
47
- };
48
- "client-user": {
49
- dataType: ClientUserDocument;
50
- action: LCRUDActions | "verify";
51
- };
52
- "client-content-pillar": {
53
- dataType: ClientContentPillarDocument;
54
- action: (typeof CLIENT_ENTITY_PERMISSIONS)["client-content-pillar"][number];
55
- };
56
- "client-media-platform": {
57
- dataType: ClientMediaPlatformDocument;
58
- action: (typeof CLIENT_ENTITY_PERMISSIONS)["client-media-platform"][number];
59
- };
60
- "client-media-platform-content-type": {
61
- dataType: ClientMediaPlatformContentTypeDocument;
62
- action: (typeof CLIENT_ENTITY_PERMISSIONS)["client-media-platform-content-type"][number];
63
- };
64
- "client-project": {
65
- dataType: ClientProjectDocument;
66
- action: (typeof CLIENT_ENTITY_PERMISSIONS)["client-project"][number];
67
- };
68
- "client-report": {
69
- dataType: ClientReportDocument;
70
- action: (typeof CLIENT_ENTITY_PERMISSIONS)["client-report"][number];
71
- };
72
- "client-styleguide": {
73
- dataType: ClientStyleguideDocument;
74
- action: (typeof CLIENT_ENTITY_PERMISSIONS)["client-styleguide"][number];
75
- };
76
- "content-pillar": {
77
- dataType: ContentPillarDocument;
78
- action: LCRUDActions;
79
- };
80
- "media-platform": {
81
- dataType: MediaPlatformDocument;
82
- action: LCRUDActions;
83
- };
84
- "media-content-type": {
85
- dataType: MediaContentTypeDocument;
86
- action: LCRUDActions;
87
- };
88
- "utm-tracking-link": {
89
- dataType: UtmTrackingLinkDocument;
90
- action: (typeof CLIENT_ENTITY_PERMISSIONS)["utm-tracking-link"][number];
91
- };
92
- gcflytour: {
93
- dataType: GCFlyTourDocument;
94
- action: (typeof CLIENT_ENTITY_PERMISSIONS)["gcflytour"][number];
95
- };
96
- "gcflytour-snap": {
97
- dataType: GCFlyTourSnapDocument;
98
- action: (typeof CLIENT_ENTITY_PERMISSIONS)["gcflytour-snap"][number];
99
- };
100
- };
101
-
102
- export type { LCRUDActions, Permissions, RolesWithPermissions };
@@ -1,10 +1,8 @@
1
- import { CLIENT_ENTITY_PERMISSIONS } from '../../constants/permission.constants.js';
2
- import { R as RoleType, U as UserAccountDocument, h as ClientDocument, f as ClientUserDocument, C as ClientContentPillarDocument, b as ClientMediaPlatformDocument, a as ClientMediaPlatformContentTypeDocument, c as ClientProjectDocument, d as ClientReportDocument, e as ClientStyleguideDocument, i as ContentPillarDocument, k as MediaPlatformDocument, M as MediaContentTypeDocument, q as UtmTrackingLinkDocument, j as GCFlyTourDocument, G as GCFlyTourSnapDocument, A as AuthorizedUserDocument, g as ClientUserDocumentStatus } from '../../client-content-pillar.document-XoX1rNnY.js';
3
- import { CommentDocument } from '../documents/comment.document.js';
1
+ export { x as ClientEntityActions, w as ClientEntityKey, y as ClientEntityScope, L as LCRUDActions, v as Permissions, u as RolesWithPermissions } from '../../permission.constants-DVf4IlLp.js';
2
+ import '../documents/comment.document.js';
4
3
  import '../core/document.js';
5
4
  import '../components/blocks/brand-logos.js';
6
5
  import '../core/media.js';
7
- import '../components/utm/utm-option.js';
8
6
  import '../components/shared/rich-text-block.js';
9
7
  import '../../constants/client-project.constants.js';
10
8
  import '../components/brand/styleguide-color.js';
@@ -12,91 +10,8 @@ import '../components/brand/styleguide-font.js';
12
10
  import '../../constants/font.constants.js';
13
11
  import '../components/blocks/fullscreen-content.js';
14
12
  import '../components/blocks/video.js';
13
+ import '../documents/tag.document.js';
15
14
  import '../documents/product.document.js';
16
15
  import '../components/shared/seo.js';
17
- import '../documents/tag.document.js';
16
+ import '../components/utm/utm-option.js';
18
17
  import '../../constants/comment.constants.js';
19
-
20
- /**
21
- * Attribute-based access control (ABAC) permissions
22
- *
23
- * @reference https://github.com/WebDevSimplified/permission-system/blob/main/auth-abac.ts
24
- */
25
-
26
- type LCRUDActions = "list" | "create" | "read" | "update" | "delete";
27
- type PermissionCheck<Key extends keyof Permissions> = boolean | ((user: AuthorizedUserDocument, permissions: ClientUserDocumentStatus, data?: Permissions[Key]["dataType"]) => boolean);
28
- type RolesWithPermissions = {
29
- [R in RoleType]: Partial<{
30
- [Key in keyof Permissions]: Partial<{
31
- [Action in Permissions[Key]["action"]]: PermissionCheck<Key>;
32
- }>;
33
- }>;
34
- };
35
- type Permissions = {
36
- "user-account": {
37
- dataType: UserAccountDocument;
38
- action: LCRUDActions;
39
- };
40
- comment: {
41
- dataType: CommentDocument;
42
- action: "list" | "create" | "update" | "delete" | "report";
43
- };
44
- client: {
45
- dataType: ClientDocument;
46
- action: (typeof CLIENT_ENTITY_PERMISSIONS)["client"][number] | LCRUDActions;
47
- };
48
- "client-user": {
49
- dataType: ClientUserDocument;
50
- action: LCRUDActions | "verify";
51
- };
52
- "client-content-pillar": {
53
- dataType: ClientContentPillarDocument;
54
- action: (typeof CLIENT_ENTITY_PERMISSIONS)["client-content-pillar"][number];
55
- };
56
- "client-media-platform": {
57
- dataType: ClientMediaPlatformDocument;
58
- action: (typeof CLIENT_ENTITY_PERMISSIONS)["client-media-platform"][number];
59
- };
60
- "client-media-platform-content-type": {
61
- dataType: ClientMediaPlatformContentTypeDocument;
62
- action: (typeof CLIENT_ENTITY_PERMISSIONS)["client-media-platform-content-type"][number];
63
- };
64
- "client-project": {
65
- dataType: ClientProjectDocument;
66
- action: (typeof CLIENT_ENTITY_PERMISSIONS)["client-project"][number];
67
- };
68
- "client-report": {
69
- dataType: ClientReportDocument;
70
- action: (typeof CLIENT_ENTITY_PERMISSIONS)["client-report"][number];
71
- };
72
- "client-styleguide": {
73
- dataType: ClientStyleguideDocument;
74
- action: (typeof CLIENT_ENTITY_PERMISSIONS)["client-styleguide"][number];
75
- };
76
- "content-pillar": {
77
- dataType: ContentPillarDocument;
78
- action: LCRUDActions;
79
- };
80
- "media-platform": {
81
- dataType: MediaPlatformDocument;
82
- action: LCRUDActions;
83
- };
84
- "media-content-type": {
85
- dataType: MediaContentTypeDocument;
86
- action: LCRUDActions;
87
- };
88
- "utm-tracking-link": {
89
- dataType: UtmTrackingLinkDocument;
90
- action: (typeof CLIENT_ENTITY_PERMISSIONS)["utm-tracking-link"][number];
91
- };
92
- gcflytour: {
93
- dataType: GCFlyTourDocument;
94
- action: (typeof CLIENT_ENTITY_PERMISSIONS)["gcflytour"][number];
95
- };
96
- "gcflytour-snap": {
97
- dataType: GCFlyTourSnapDocument;
98
- action: (typeof CLIENT_ENTITY_PERMISSIONS)["gcflytour-snap"][number];
99
- };
100
- };
101
-
102
- export type { LCRUDActions, Permissions, RolesWithPermissions };
@@ -1,21 +1,19 @@
1
- import { A as AuthorizedUserDocument, g as ClientUserDocumentStatus, U as UserAccountDocument, h as ClientDocument, C as ClientContentPillarDocument, b as ClientMediaPlatformDocument, a as ClientMediaPlatformContentTypeDocument, c as ClientProjectDocument, d as ClientReportDocument, e as ClientStyleguideDocument, q as UtmTrackingLinkDocument, j as GCFlyTourDocument, G as GCFlyTourSnapDocument } from '../client-content-pillar.document-BmtrCuzt.cjs';
1
+ import { A as AuthorizedUserDocument, j as ClientUserDocumentStatus, U as UserAccountDocument, k as ClientDocument, c as ClientContentPillarDocument, e as ClientMediaPlatformDocument, d as ClientMediaPlatformContentTypeDocument, f as ClientProjectDocument, g as ClientReportDocument, h as ClientStyleguideDocument, t as UtmTrackingLinkDocument, m as GCFlyTourDocument, G as GCFlyTourSnapDocument, v as Permissions } from '../permission.constants-Cz0fuVJx.cjs';
2
2
  import { CommentDocument } from '../types/documents/comment.document.cjs';
3
- import { Permissions } from '../types/permissions/permission.types.cjs';
4
3
  import '../types/core/document.cjs';
5
4
  import '../types/components/blocks/brand-logos.cjs';
6
5
  import '../types/core/media.cjs';
7
- import '../types/components/utm/utm-option.cjs';
8
6
  import '../types/components/shared/rich-text-block.cjs';
9
7
  import '../constants/client-project.constants.cjs';
10
8
  import '../types/components/brand/styleguide-color.cjs';
11
9
  import '../types/components/brand/styleguide-font.cjs';
12
10
  import '../constants/font.constants.cjs';
13
- import '../constants/permission.constants.cjs';
14
11
  import '../types/components/blocks/fullscreen-content.cjs';
15
12
  import '../types/components/blocks/video.cjs';
13
+ import '../types/documents/tag.document.cjs';
16
14
  import '../types/documents/product.document.cjs';
17
15
  import '../types/components/shared/seo.cjs';
18
- import '../types/documents/tag.document.cjs';
16
+ import '../types/components/utm/utm-option.cjs';
19
17
  import '../constants/comment.constants.cjs';
20
18
 
21
19
  declare const ROLE_PERMISSIONS: {
@@ -1,21 +1,19 @@
1
- import { A as AuthorizedUserDocument, g as ClientUserDocumentStatus, U as UserAccountDocument, h as ClientDocument, C as ClientContentPillarDocument, b as ClientMediaPlatformDocument, a as ClientMediaPlatformContentTypeDocument, c as ClientProjectDocument, d as ClientReportDocument, e as ClientStyleguideDocument, q as UtmTrackingLinkDocument, j as GCFlyTourDocument, G as GCFlyTourSnapDocument } from '../client-content-pillar.document-XoX1rNnY.js';
1
+ import { A as AuthorizedUserDocument, j as ClientUserDocumentStatus, U as UserAccountDocument, k as ClientDocument, c as ClientContentPillarDocument, e as ClientMediaPlatformDocument, d as ClientMediaPlatformContentTypeDocument, f as ClientProjectDocument, g as ClientReportDocument, h as ClientStyleguideDocument, t as UtmTrackingLinkDocument, m as GCFlyTourDocument, G as GCFlyTourSnapDocument, v as Permissions } from '../permission.constants-DVf4IlLp.js';
2
2
  import { CommentDocument } from '../types/documents/comment.document.js';
3
- import { Permissions } from '../types/permissions/permission.types.js';
4
3
  import '../types/core/document.js';
5
4
  import '../types/components/blocks/brand-logos.js';
6
5
  import '../types/core/media.js';
7
- import '../types/components/utm/utm-option.js';
8
6
  import '../types/components/shared/rich-text-block.js';
9
7
  import '../constants/client-project.constants.js';
10
8
  import '../types/components/brand/styleguide-color.js';
11
9
  import '../types/components/brand/styleguide-font.js';
12
10
  import '../constants/font.constants.js';
13
- import '../constants/permission.constants.js';
14
11
  import '../types/components/blocks/fullscreen-content.js';
15
12
  import '../types/components/blocks/video.js';
13
+ import '../types/documents/tag.document.js';
16
14
  import '../types/documents/product.document.js';
17
15
  import '../types/components/shared/seo.js';
18
- import '../types/documents/tag.document.js';
16
+ import '../types/components/utm/utm-option.js';
19
17
  import '../constants/comment.constants.js';
20
18
 
21
19
  declare const ROLE_PERMISSIONS: {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@getcommunity/gc-validators",
3
3
  "description": "Schema Validator for GetCommunity web-stack types",
4
- "version": "0.0.192",
4
+ "version": "0.0.193",
5
5
  "author": "Joey Grable <joey@getcommunity.com> (https://joeygrable.com)",
6
6
  "contributors": [],
7
7
  "main": "dist/index.js",
@@ -10,9 +10,9 @@ import { ComponentBlockGraphicImage } from './types/components/blocks/graphic-im
10
10
  import { ComponentBlockPullQuote } from './types/components/blocks/pull-quote.js';
11
11
  import { ComponentBlockSectionTitle } from './types/components/blocks/section-title.js';
12
12
  import { BlockVideoEmbed, ComponentBlockVideo } from './types/components/blocks/video.js';
13
+ import { TagDocument } from './types/documents/tag.document.js';
13
14
  import { ComponentFormSelect } from './types/components/forms/form-select.js';
14
15
  import { ComponentSlideshow } from './types/components/slideshow/slideshow.js';
15
- import { TagDocument } from './types/documents/tag.document.js';
16
16
 
17
17
  type CategoryDocument = {
18
18
  label: string;
@@ -10,9 +10,9 @@ import { ComponentBlockGraphicImage } from './types/components/blocks/graphic-im
10
10
  import { ComponentBlockPullQuote } from './types/components/blocks/pull-quote.cjs';
11
11
  import { ComponentBlockSectionTitle } from './types/components/blocks/section-title.cjs';
12
12
  import { BlockVideoEmbed, ComponentBlockVideo } from './types/components/blocks/video.cjs';
13
+ import { TagDocument } from './types/documents/tag.document.cjs';
13
14
  import { ComponentFormSelect } from './types/components/forms/form-select.cjs';
14
15
  import { ComponentSlideshow } from './types/components/slideshow/slideshow.cjs';
15
- import { TagDocument } from './types/documents/tag.document.cjs';
16
16
 
17
17
  type CategoryDocument = {
18
18
  label: string;