@happyvertical/smrt-users 0.51.12 → 0.51.14

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.
@@ -2,7 +2,7 @@
2
2
  "version": "1.0.0",
3
3
  "timestamp": 0,
4
4
  "packageName": "@happyvertical/smrt-users",
5
- "packageVersion": "0.51.12",
5
+ "packageVersion": "0.51.14",
6
6
  "objects": {
7
7
  "@happyvertical/smrt-users:AccessRequestCollection": {
8
8
  "name": "accessrequestcollection",
@@ -1893,6 +1893,201 @@
1893
1893
  },
1894
1894
  "importPath": "@happyvertical/smrt-users"
1895
1895
  },
1896
+ "@happyvertical/smrt-users:ResourceGrantCollection": {
1897
+ "name": "resourcegrantcollection",
1898
+ "className": "ResourceGrantCollection",
1899
+ "qualifiedName": "@happyvertical/smrt-users:ResourceGrantCollection",
1900
+ "collection": "resourcegrants",
1901
+ "filePath": "/home/runner/work/smrt/smrt/packages/users/src/collections/ResourceGrantCollection.ts",
1902
+ "packageName": "@happyvertical/smrt-users",
1903
+ "fields": {},
1904
+ "methods": {
1905
+ "findExact": {
1906
+ "name": "findExact",
1907
+ "async": true,
1908
+ "parameters": [
1909
+ {
1910
+ "name": "tenantId",
1911
+ "type": "string",
1912
+ "optional": false
1913
+ },
1914
+ {
1915
+ "name": "userId",
1916
+ "type": "string",
1917
+ "optional": false
1918
+ },
1919
+ {
1920
+ "name": "resourceType",
1921
+ "type": "string",
1922
+ "optional": false
1923
+ },
1924
+ {
1925
+ "name": "resourceId",
1926
+ "type": "string",
1927
+ "optional": false
1928
+ },
1929
+ {
1930
+ "name": "permission",
1931
+ "type": "string",
1932
+ "optional": false
1933
+ }
1934
+ ],
1935
+ "returnType": "Promise<ResourceGrant[]>",
1936
+ "isStatic": false,
1937
+ "isPublic": true
1938
+ },
1939
+ "findChildren": {
1940
+ "name": "findChildren",
1941
+ "async": true,
1942
+ "parameters": [
1943
+ {
1944
+ "name": "parentGrantId",
1945
+ "type": "string",
1946
+ "optional": false
1947
+ }
1948
+ ],
1949
+ "returnType": "Promise<ResourceGrant[]>",
1950
+ "isStatic": false,
1951
+ "isPublic": true
1952
+ }
1953
+ },
1954
+ "decoratorConfig": {},
1955
+ "extends": "SmrtCollection",
1956
+ "extendsTypeArg": "ResourceGrant",
1957
+ "exportName": "ResourceGrantCollection",
1958
+ "collectionExportName": "ResourceGrantCollectionCollection",
1959
+ "schema": {
1960
+ "tableName": "resource_grants",
1961
+ "ddl": "CREATE TABLE IF NOT EXISTS \"resource_grants\" (\n \"id\" UUID PRIMARY KEY NOT NULL,\n \"slug\" TEXT NOT NULL,\n \"context\" TEXT NOT NULL DEFAULT '',\n \"created_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"updated_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"tenant_id\" UUID NOT NULL,\n \"user_id\" UUID NOT NULL,\n \"resource_type\" TEXT,\n \"resource_id\" TEXT,\n \"permission\" TEXT,\n \"effect\" TEXT,\n \"can_delegate\" BOOLEAN DEFAULT FALSE,\n \"parent_grant_id\" UUID,\n \"revoked_at\" TEXT\n);",
1962
+ "columns": {
1963
+ "id": {
1964
+ "type": "UUID",
1965
+ "primaryKey": true,
1966
+ "referenceKind": "id",
1967
+ "notNull": true
1968
+ },
1969
+ "slug": {
1970
+ "type": "TEXT",
1971
+ "notNull": true
1972
+ },
1973
+ "context": {
1974
+ "type": "TEXT",
1975
+ "notNull": true,
1976
+ "default": ""
1977
+ },
1978
+ "created_at": {
1979
+ "type": "TIMESTAMP",
1980
+ "notNull": true,
1981
+ "default": "current_timestamp"
1982
+ },
1983
+ "updated_at": {
1984
+ "type": "TIMESTAMP",
1985
+ "notNull": true,
1986
+ "default": "current_timestamp"
1987
+ },
1988
+ "tenant_id": {
1989
+ "type": "UUID",
1990
+ "referenceKind": "tenantId",
1991
+ "notNull": true,
1992
+ "unique": false
1993
+ },
1994
+ "user_id": {
1995
+ "type": "UUID",
1996
+ "referenceKind": "foreignKey",
1997
+ "notNull": true,
1998
+ "unique": false,
1999
+ "foreignKey": {
2000
+ "table": "users",
2001
+ "column": "id",
2002
+ "onDelete": "NO ACTION",
2003
+ "onUpdate": "CASCADE"
2004
+ }
2005
+ },
2006
+ "resource_type": {
2007
+ "type": "TEXT",
2008
+ "notNull": false,
2009
+ "unique": false
2010
+ },
2011
+ "resource_id": {
2012
+ "type": "TEXT",
2013
+ "notNull": false,
2014
+ "unique": false
2015
+ },
2016
+ "permission": {
2017
+ "type": "TEXT",
2018
+ "notNull": false,
2019
+ "unique": false
2020
+ },
2021
+ "effect": {
2022
+ "type": "TEXT",
2023
+ "notNull": false,
2024
+ "unique": false
2025
+ },
2026
+ "can_delegate": {
2027
+ "type": "BOOLEAN",
2028
+ "notNull": false,
2029
+ "unique": false,
2030
+ "default": false
2031
+ },
2032
+ "parent_grant_id": {
2033
+ "type": "UUID",
2034
+ "referenceKind": "foreignKey",
2035
+ "notNull": false,
2036
+ "unique": false,
2037
+ "foreignKey": {
2038
+ "table": "resource_grants",
2039
+ "column": "id",
2040
+ "onDelete": "NO ACTION",
2041
+ "onUpdate": "CASCADE"
2042
+ }
2043
+ },
2044
+ "revoked_at": {
2045
+ "type": "TEXT",
2046
+ "notNull": false,
2047
+ "unique": false
2048
+ }
2049
+ },
2050
+ "indexes": [
2051
+ {
2052
+ "name": "resource_grants_slug_context_idx",
2053
+ "columns": [
2054
+ "tenant_id",
2055
+ "slug",
2056
+ "context"
2057
+ ],
2058
+ "unique": true
2059
+ },
2060
+ {
2061
+ "name": "resource_grants_lookup_idx",
2062
+ "columns": [
2063
+ "tenant_id",
2064
+ "user_id"
2065
+ ]
2066
+ },
2067
+ {
2068
+ "name": "resource_grants_tenant_id_created_at_idx",
2069
+ "columns": [
2070
+ "tenant_id",
2071
+ "created_at"
2072
+ ]
2073
+ },
2074
+ {
2075
+ "name": "resource_grants_user_id_idx",
2076
+ "columns": [
2077
+ "user_id"
2078
+ ]
2079
+ },
2080
+ {
2081
+ "name": "resource_grants_parent_grant_id_idx",
2082
+ "columns": [
2083
+ "parent_grant_id"
2084
+ ]
2085
+ }
2086
+ ],
2087
+ "version": "52e03776"
2088
+ },
2089
+ "importPath": "@happyvertical/smrt-users"
2090
+ },
1896
2091
  "@happyvertical/smrt-users:RoleCollection": {
1897
2092
  "name": "rolecollection",
1898
2093
  "className": "RoleCollection",
@@ -5590,6 +5785,253 @@
5590
5785
  },
5591
5786
  "importPath": "@happyvertical/smrt-users"
5592
5787
  },
5788
+ "@happyvertical/smrt-users:ResourceGrant": {
5789
+ "name": "resourcegrant",
5790
+ "className": "ResourceGrant",
5791
+ "qualifiedName": "@happyvertical/smrt-users:ResourceGrant",
5792
+ "collection": "resourcegrants",
5793
+ "filePath": "/home/runner/work/smrt/smrt/packages/users/src/models/ResourceGrant.ts",
5794
+ "packageName": "@happyvertical/smrt-users",
5795
+ "fields": {
5796
+ "tenantId": {
5797
+ "type": "foreignKey",
5798
+ "required": true,
5799
+ "related": "Tenant",
5800
+ "_meta": {
5801
+ "required": true,
5802
+ "sqlType": "UUID",
5803
+ "__tenancy": {
5804
+ "isTenantIdField": true,
5805
+ "mode": "required",
5806
+ "field": "tenantId",
5807
+ "autoFilter": true,
5808
+ "autoPopulate": true,
5809
+ "allowSuperAdminBypass": false
5810
+ }
5811
+ }
5812
+ },
5813
+ "userId": {
5814
+ "type": "foreignKey",
5815
+ "required": true,
5816
+ "related": "User",
5817
+ "_meta": {
5818
+ "required": true
5819
+ }
5820
+ },
5821
+ "resourceType": {
5822
+ "type": "text",
5823
+ "required": false,
5824
+ "_meta": {}
5825
+ },
5826
+ "resourceId": {
5827
+ "type": "text",
5828
+ "required": false,
5829
+ "_meta": {}
5830
+ },
5831
+ "permission": {
5832
+ "type": "text",
5833
+ "required": false,
5834
+ "_meta": {}
5835
+ },
5836
+ "effect": {
5837
+ "type": "text",
5838
+ "required": false,
5839
+ "_meta": {}
5840
+ },
5841
+ "canDelegate": {
5842
+ "type": "boolean",
5843
+ "required": false,
5844
+ "default": false
5845
+ },
5846
+ "parentGrantId": {
5847
+ "type": "foreignKey",
5848
+ "required": false,
5849
+ "related": "ResourceGrant"
5850
+ },
5851
+ "revokedAt": {
5852
+ "type": "text",
5853
+ "required": false,
5854
+ "_meta": {}
5855
+ }
5856
+ },
5857
+ "methods": {
5858
+ "isActive": {
5859
+ "name": "isActive",
5860
+ "async": false,
5861
+ "parameters": [],
5862
+ "returnType": "boolean",
5863
+ "isStatic": false,
5864
+ "isPublic": true
5865
+ }
5866
+ },
5867
+ "decoratorConfig": {
5868
+ "tenantScoped": true,
5869
+ "api": {
5870
+ "include": []
5871
+ },
5872
+ "mcp": {
5873
+ "include": []
5874
+ },
5875
+ "cli": {
5876
+ "skipApiCheck": true
5877
+ },
5878
+ "indexes": [
5879
+ {
5880
+ "name": "resource_grants_lookup_idx",
5881
+ "columns": [
5882
+ "tenantId",
5883
+ "userId"
5884
+ ]
5885
+ }
5886
+ ],
5887
+ "conflictColumns": [
5888
+ "tenant_id",
5889
+ "slug",
5890
+ "context"
5891
+ ]
5892
+ },
5893
+ "extends": "SmrtObject",
5894
+ "exportName": "ResourceGrant",
5895
+ "collectionExportName": "ResourceGrantCollection",
5896
+ "validationRules": [
5897
+ {
5898
+ "field": "userId",
5899
+ "rule": "required",
5900
+ "fieldType": "foreignKey"
5901
+ }
5902
+ ],
5903
+ "schema": {
5904
+ "tableName": "resource_grants",
5905
+ "ddl": "CREATE TABLE IF NOT EXISTS \"resource_grants\" (\n \"id\" UUID PRIMARY KEY NOT NULL,\n \"slug\" TEXT NOT NULL,\n \"context\" TEXT NOT NULL DEFAULT '',\n \"created_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"updated_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n \"tenant_id\" UUID NOT NULL,\n \"user_id\" UUID NOT NULL,\n \"resource_type\" TEXT,\n \"resource_id\" TEXT,\n \"permission\" TEXT,\n \"effect\" TEXT,\n \"can_delegate\" BOOLEAN DEFAULT FALSE,\n \"parent_grant_id\" UUID,\n \"revoked_at\" TEXT\n);",
5906
+ "columns": {
5907
+ "id": {
5908
+ "type": "UUID",
5909
+ "primaryKey": true,
5910
+ "referenceKind": "id",
5911
+ "notNull": true
5912
+ },
5913
+ "slug": {
5914
+ "type": "TEXT",
5915
+ "notNull": true
5916
+ },
5917
+ "context": {
5918
+ "type": "TEXT",
5919
+ "notNull": true,
5920
+ "default": ""
5921
+ },
5922
+ "created_at": {
5923
+ "type": "TIMESTAMP",
5924
+ "notNull": true,
5925
+ "default": "current_timestamp"
5926
+ },
5927
+ "updated_at": {
5928
+ "type": "TIMESTAMP",
5929
+ "notNull": true,
5930
+ "default": "current_timestamp"
5931
+ },
5932
+ "tenant_id": {
5933
+ "type": "UUID",
5934
+ "referenceKind": "tenantId",
5935
+ "notNull": true,
5936
+ "unique": false
5937
+ },
5938
+ "user_id": {
5939
+ "type": "UUID",
5940
+ "referenceKind": "foreignKey",
5941
+ "notNull": true,
5942
+ "unique": false,
5943
+ "foreignKey": {
5944
+ "table": "users",
5945
+ "column": "id",
5946
+ "onDelete": "NO ACTION",
5947
+ "onUpdate": "CASCADE"
5948
+ }
5949
+ },
5950
+ "resource_type": {
5951
+ "type": "TEXT",
5952
+ "notNull": false,
5953
+ "unique": false
5954
+ },
5955
+ "resource_id": {
5956
+ "type": "TEXT",
5957
+ "notNull": false,
5958
+ "unique": false
5959
+ },
5960
+ "permission": {
5961
+ "type": "TEXT",
5962
+ "notNull": false,
5963
+ "unique": false
5964
+ },
5965
+ "effect": {
5966
+ "type": "TEXT",
5967
+ "notNull": false,
5968
+ "unique": false
5969
+ },
5970
+ "can_delegate": {
5971
+ "type": "BOOLEAN",
5972
+ "notNull": false,
5973
+ "unique": false,
5974
+ "default": false
5975
+ },
5976
+ "parent_grant_id": {
5977
+ "type": "UUID",
5978
+ "referenceKind": "foreignKey",
5979
+ "notNull": false,
5980
+ "unique": false,
5981
+ "foreignKey": {
5982
+ "table": "resource_grants",
5983
+ "column": "id",
5984
+ "onDelete": "NO ACTION",
5985
+ "onUpdate": "CASCADE"
5986
+ }
5987
+ },
5988
+ "revoked_at": {
5989
+ "type": "TEXT",
5990
+ "notNull": false,
5991
+ "unique": false
5992
+ }
5993
+ },
5994
+ "indexes": [
5995
+ {
5996
+ "name": "resource_grants_slug_context_idx",
5997
+ "columns": [
5998
+ "tenant_id",
5999
+ "slug",
6000
+ "context"
6001
+ ],
6002
+ "unique": true
6003
+ },
6004
+ {
6005
+ "name": "resource_grants_lookup_idx",
6006
+ "columns": [
6007
+ "tenant_id",
6008
+ "user_id"
6009
+ ]
6010
+ },
6011
+ {
6012
+ "name": "resource_grants_tenant_id_created_at_idx",
6013
+ "columns": [
6014
+ "tenant_id",
6015
+ "created_at"
6016
+ ]
6017
+ },
6018
+ {
6019
+ "name": "resource_grants_user_id_idx",
6020
+ "columns": [
6021
+ "user_id"
6022
+ ]
6023
+ },
6024
+ {
6025
+ "name": "resource_grants_parent_grant_id_idx",
6026
+ "columns": [
6027
+ "parent_grant_id"
6028
+ ]
6029
+ }
6030
+ ],
6031
+ "version": "52e03776"
6032
+ },
6033
+ "importPath": "@happyvertical/smrt-users"
6034
+ },
5593
6035
  "@happyvertical/smrt-users:Role": {
5594
6036
  "name": "role",
5595
6037
  "className": "Role",
@@ -0,0 +1,32 @@
1
+ import { SmrtObject, SmrtObjectOptions } from '@happyvertical/smrt-core';
2
+ export type ResourceGrantEffect = 'grant' | 'deny';
3
+ export interface ResourceGrantOptions extends SmrtObjectOptions {
4
+ tenantId?: string;
5
+ userId?: string;
6
+ resourceType?: string;
7
+ resourceId?: string;
8
+ permission?: string;
9
+ effect?: ResourceGrantEffect;
10
+ canDelegate?: boolean;
11
+ parentGrantId?: string | null;
12
+ revokedAt?: string | null;
13
+ }
14
+ /**
15
+ * An exact tenant/resource/user/permission decision. This deliberately does
16
+ * not replace tenant RBAC: ResourceGrantResolver only allows after the normal
17
+ * operation guard has allowed the same permission.
18
+ */
19
+ export declare class ResourceGrant extends SmrtObject {
20
+ tenantId?: string;
21
+ userId?: string;
22
+ resourceType: string;
23
+ resourceId: string;
24
+ permission: string;
25
+ effect: ResourceGrantEffect;
26
+ canDelegate: boolean;
27
+ parentGrantId?: string | null;
28
+ revokedAt?: string | null;
29
+ constructor(options?: ResourceGrantOptions);
30
+ isActive(): boolean;
31
+ }
32
+ //# sourceMappingURL=ResourceGrant.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResourceGrant.d.ts","sourceRoot":"","sources":["../../src/models/ResourceGrant.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,OAAO,EAGL,UAAU,EACV,KAAK,iBAAiB,EAEvB,MAAM,0BAA0B,CAAC;AAElC,MAAM,MAAM,mBAAmB,GAAG,OAAO,GAAG,MAAM,CAAC;AAEnD,MAAM,WAAW,oBAAqB,SAAQ,iBAAiB;IAC7D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED;;;;GAIG;AACH,qBAWa,aAAc,SAAQ,UAAU;IACD,QAAQ,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAC/B,YAAY,EAAE,MAAM,CAAM;IAC1B,UAAU,EAAE,MAAM,CAAM;IACxB,UAAU,EAAE,MAAM,CAAM;IACxB,MAAM,EAAE,mBAAmB,CAAW;IAC/D,WAAW,EAAE,OAAO,CAAS;IACA,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;gBACvC,OAAO,GAAE,oBAAyB;IAe9C,QAAQ,IAAI,OAAO;CAGpB"}
@@ -12,6 +12,7 @@ export { DEFAULT_TOKEN_EXPIRY_SECONDS, MagicLinkToken, UsersMagicLinkToken, } fr
12
12
  export { Membership } from './Membership.js';
13
13
  export { MembershipOverride } from './MembershipOverride.js';
14
14
  export { isValidPermissionSlug, type ParsedPermissionSlug, Permission, parsePermissionSlug, } from './Permission.js';
15
+ export { ResourceGrant, type ResourceGrantEffect, type ResourceGrantOptions, } from './ResourceGrant.js';
15
16
  export { Role } from './Role.js';
16
17
  export { RolePermission } from './RolePermission.js';
17
18
  export { DEFAULT_SESSION_TTL, generateSessionId, Session, } from './Session.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/models/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,aAAa,EAAE,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE9E,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EACL,cAAc,EACd,KAAK,oBAAoB,EACzB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EACL,4BAA4B,EAC5B,cAAc,EACd,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EACL,qBAAqB,EACrB,KAAK,oBAAoB,EACzB,UAAU,EACV,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,OAAO,GACR,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,0BAA0B,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,EACL,iBAAiB,EACjB,KAAK,6BAA6B,EAClC,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,GAC7B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAEzE,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/models/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,aAAa,EAAE,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE9E,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EACL,cAAc,EACd,KAAK,oBAAoB,EACzB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EACL,4BAA4B,EAC5B,cAAc,EACd,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EACL,qBAAqB,EACrB,KAAK,oBAAoB,EACzB,UAAU,EACV,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,aAAa,EACb,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,GAC1B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,OAAO,GACR,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,0BAA0B,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,EACL,iBAAiB,EACjB,KAAK,6BAA6B,EAClC,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,GAC7B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAEzE,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"PermissionCatalogService.d.ts","sourceRoot":"","sources":["../../src/services/PermissionCatalogService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PermissionCatalogService.d.ts","sourceRoot":"","sources":["../../src/services/PermissionCatalogService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,53 @@
1
+ import { SmrtClassOptions } from '@happyvertical/smrt-core';
2
+ import { ResourceGrant, ResourceGrantEffect } from '../models/ResourceGrant.js';
3
+ import { OperationPermissionOptions } from './OperationPermissionService.js';
4
+ export declare const MAX_RESOURCE_GRANT_DELEGATION_DEPTH = 8;
5
+ export interface ResourceIdentity {
6
+ tenantId: string;
7
+ resourceType: string;
8
+ resourceId: string;
9
+ }
10
+ export type ResourceIdentityVerifier = (resource: ResourceIdentity) => Promise<boolean> | boolean;
11
+ export interface ResourceGrantDecision {
12
+ allowed: boolean;
13
+ reason: 'tenant_permission_denied' | 'resource_not_verified' | 'resource_grant_denied' | 'resource_grant_missing' | 'resource_grant_allowed';
14
+ grant?: ResourceGrant;
15
+ }
16
+ export interface ResourceOperationPermissionOptions extends OperationPermissionOptions {
17
+ resource: ResourceIdentity;
18
+ verifyResource: ResourceIdentityVerifier;
19
+ }
20
+ export interface CreateResourceGrantOptions extends SmrtClassOptions {
21
+ actor: Omit<OperationPermissionOptions, 'collection' | 'action'> & {
22
+ collection: OperationPermissionOptions['collection'];
23
+ action: string;
24
+ };
25
+ authorization: ResourceOperationPermissionOptions;
26
+ grant: ResourceIdentity & {
27
+ userId: string;
28
+ permission: string;
29
+ effect?: ResourceGrantEffect;
30
+ canDelegate?: boolean;
31
+ parentGrantId?: string | null;
32
+ };
33
+ }
34
+ export interface RevokeResourceGrantOptions {
35
+ actor: OperationPermissionOptions;
36
+ verifyResource: ResourceIdentityVerifier;
37
+ }
38
+ /**
39
+ * Public resource gate. It always verifies application ownership first and
40
+ * requires the existing tenant/catalog operation permission before an exact
41
+ * resource decision can allow. Applications own resource lookup; SMRT never
42
+ * guesses that a project id belongs to a tenant.
43
+ */
44
+ export declare function checkResourceOperationPermission(options: ResourceOperationPermissionOptions): Promise<ResourceGrantDecision>;
45
+ /** Administration surface; generated ResourceGrant writes remain unavailable. */
46
+ export declare class ResourceGrantService {
47
+ private readonly options;
48
+ constructor(options: SmrtClassOptions);
49
+ create(input: CreateResourceGrantOptions): Promise<ResourceGrant>;
50
+ revoke(grantId: string, options: RevokeResourceGrantOptions): Promise<void>;
51
+ private assertDelegationParent;
52
+ }
53
+ //# sourceMappingURL=ResourceGrantService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResourceGrantService.d.ts","sourceRoot":"","sources":["../../src/services/ResourceGrantService.ts"],"names":[],"mappings":"AAAA,oGAAoG;AACpG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAEjE,OAAO,KAAK,EACV,aAAa,EACb,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,iCAAiC,CAAC;AAGzC,eAAO,MAAM,mCAAmC,IAAI,CAAC;AACrD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACpB;AACD,MAAM,MAAM,wBAAwB,GAAG,CACrC,QAAQ,EAAE,gBAAgB,KACvB,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;AAChC,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EACF,0BAA0B,GAC1B,uBAAuB,GACvB,uBAAuB,GACvB,wBAAwB,GACxB,wBAAwB,CAAC;IAC7B,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB;AACD,MAAM,WAAW,kCACf,SAAQ,0BAA0B;IAClC,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,cAAc,EAAE,wBAAwB,CAAC;CAC1C;AACD,MAAM,WAAW,0BAA2B,SAAQ,gBAAgB;IAClE,KAAK,EAAE,IAAI,CAAC,0BAA0B,EAAE,YAAY,GAAG,QAAQ,CAAC,GAAG;QACjE,UAAU,EAAE,0BAA0B,CAAC,YAAY,CAAC,CAAC;QACrD,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,aAAa,EAAE,kCAAkC,CAAC;IAClD,KAAK,EAAE,gBAAgB,GAAG;QACxB,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,mBAAmB,CAAC;QAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KAC/B,CAAC;CACH;AACD,MAAM,WAAW,0BAA0B;IACzC,KAAK,EAAE,0BAA0B,CAAC;IAClC,cAAc,EAAE,wBAAwB,CAAC;CAC1C;AAED;;;;;GAKG;AACH,wBAAsB,gCAAgC,CACpD,OAAO,EAAE,kCAAkC,GAC1C,OAAO,CAAC,qBAAqB,CAAC,CAkChC;AAED,iFAAiF;AACjF,qBAAa,oBAAoB;IACnB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,gBAAgB;IAChD,MAAM,CAAC,KAAK,EAAE,0BAA0B,GAAG,OAAO,CAAC,aAAa,CAAC;IAoCjE,MAAM,CACV,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,0BAA0B,GAClC,OAAO,CAAC,IAAI,CAAC;YAoBF,sBAAsB;CAoCrC"}
@@ -11,6 +11,7 @@ export { assertOperationPermission, checkOperationPermission, hasOperationPermis
11
11
  export { deriveOperationPermissionCollectionName, deriveOperationPermissionSlug, normalizeOperationPermissionAction, type OperationPermissionCollectionInput, type PermissionCatalog, PermissionCatalogService, type PermissionCatalogSource, type PermissionCatalogSyncResult, type PermissionDefinition, type PostgresPermissionAction, type PostgresPermissionBinding, registerPermissionDefinitions, syncPermissionCatalog, type UsersConfig, } from './PermissionCatalogService.js';
12
12
  export { type PermissionResolutionOptions, type PermissionResolutionResult, PermissionResolver, type PermissionResolverOptions, type TenantPermissionInheritanceResult, } from './PermissionResolver.js';
13
13
  export { applyPostgresPermissionPolicies, type GeneratePostgresPermissionSqlResult, generatePostgresPermissionSql, type PostgresPermissionPolicyReportItem, type PostgresPermissionPolicyTarget, } from './PostgresPermissionPolicies.js';
14
+ export { type CreateResourceGrantOptions, checkResourceOperationPermission, MAX_RESOURCE_GRANT_DELEGATION_DEPTH, type ResourceGrantDecision, ResourceGrantService, type ResourceIdentity, type ResourceIdentityVerifier, type ResourceOperationPermissionOptions, type RevokeResourceGrantOptions, } from './ResourceGrantService.js';
14
15
  export { getCurrentSessionPermissionContext, getRequestScopedDatabase, type PrincipalPermissionRuntimeOptions, type SessionPermissionRuntimeContext, type SessionPermissionRuntimeOptions, withPrincipalPermissionContext, withSessionPermissionContext, } from './SessionPermissionContext.js';
15
16
  export { type SessionContext, SessionService, type SessionServiceOptions, type SwitchTenantResult, } from './SessionService.js';
16
17
  export { type EnsureTenantResult, TenantService, type TenantWithOwnershipResult, } from './TenantService.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"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"}