@sudobility/entity_client 0.0.11 → 0.0.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.
- package/dist/hooks/index.d.ts +2 -2
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +2 -2
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/useCurrentEntity.d.ts +99 -5
- package/dist/hooks/useCurrentEntity.d.ts.map +1 -1
- package/dist/hooks/useCurrentEntity.js +175 -12
- package/dist/hooks/useCurrentEntity.js.map +1 -1
- package/dist/hooks/useInvitations.d.ts +7 -0
- package/dist/hooks/useInvitations.d.ts.map +1 -1
- package/dist/hooks/useInvitations.js +20 -0
- package/dist/hooks/useInvitations.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/network/EntityClient.d.ts +4 -0
- package/dist/network/EntityClient.d.ts.map +1 -1
- package/dist/network/EntityClient.js +8 -0
- package/dist/network/EntityClient.js.map +1 -1
- package/package.json +1 -1
package/dist/hooks/index.d.ts
CHANGED
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export { useEntities, useEntity, useCreateEntity, useUpdateEntity, useDeleteEntity, entityKeys, } from './useEntities';
|
|
5
5
|
export { useEntityMembers, useUpdateMemberRole, useRemoveMember, memberKeys, } from './useEntityMembers';
|
|
6
|
-
export { useMyInvitations, useEntityInvitations, useCreateInvitation, useCancelInvitation, useAcceptInvitation, useDeclineInvitation, invitationKeys, } from './useInvitations';
|
|
7
|
-
export { useCurrentEntity, CurrentEntityProvider, type CurrentEntityContextValue, type CurrentEntityProviderProps, } from './useCurrentEntity';
|
|
6
|
+
export { useMyInvitations, useEntityInvitations, useCreateInvitation, useCancelInvitation, useRenewInvitation, useAcceptInvitation, useDeclineInvitation, invitationKeys, } from './useInvitations';
|
|
7
|
+
export { useCurrentEntity, useCurrentEntityOptional, CurrentEntityProvider, type CurrentEntityContextValue, type CurrentEntityProviderProps, type AuthUser, } from './useCurrentEntity';
|
|
8
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,WAAW,EACX,SAAS,EACT,eAAe,EACf,eAAe,EACf,eAAe,EACf,UAAU,GACX,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,UAAU,GACX,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,GACf,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,WAAW,EACX,SAAS,EACT,eAAe,EACf,eAAe,EACf,eAAe,EACf,UAAU,GACX,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,UAAU,GACX,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,GACf,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,qBAAqB,EACrB,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,QAAQ,GACd,MAAM,oBAAoB,CAAC"}
|
package/dist/hooks/index.js
CHANGED
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export { useEntities, useEntity, useCreateEntity, useUpdateEntity, useDeleteEntity, entityKeys, } from './useEntities';
|
|
5
5
|
export { useEntityMembers, useUpdateMemberRole, useRemoveMember, memberKeys, } from './useEntityMembers';
|
|
6
|
-
export { useMyInvitations, useEntityInvitations, useCreateInvitation, useCancelInvitation, useAcceptInvitation, useDeclineInvitation, invitationKeys, } from './useInvitations';
|
|
7
|
-
export { useCurrentEntity, CurrentEntityProvider, } from './useCurrentEntity';
|
|
6
|
+
export { useMyInvitations, useEntityInvitations, useCreateInvitation, useCancelInvitation, useRenewInvitation, useAcceptInvitation, useDeclineInvitation, invitationKeys, } from './useInvitations';
|
|
7
|
+
export { useCurrentEntity, useCurrentEntityOptional, CurrentEntityProvider, } from './useCurrentEntity';
|
|
8
8
|
//# sourceMappingURL=index.js.map
|
package/dist/hooks/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,WAAW,EACX,SAAS,EACT,eAAe,EACf,eAAe,EACf,eAAe,EACf,UAAU,GACX,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,UAAU,GACX,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,GACf,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,gBAAgB,EAChB,qBAAqB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,WAAW,EACX,SAAS,EACT,eAAe,EACf,eAAe,EACf,eAAe,EACf,UAAU,GACX,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,UAAU,GACX,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,GACf,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,qBAAqB,GAItB,MAAM,oBAAoB,CAAC"}
|
|
@@ -1,26 +1,78 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @fileoverview Current Entity Context Hook
|
|
3
3
|
* @description React context and hook for managing current entity selection
|
|
4
|
+
*
|
|
5
|
+
* This module provides a context-based system for managing the current entity
|
|
6
|
+
* (workspace) selection. It automatically fetches entities when the user is
|
|
7
|
+
* authenticated and selects the personal entity by default.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```tsx
|
|
11
|
+
* // In your app root
|
|
12
|
+
* <CurrentEntityProvider client={entityClient} user={firebaseUser}>
|
|
13
|
+
* <App />
|
|
14
|
+
* </CurrentEntityProvider>
|
|
15
|
+
*
|
|
16
|
+
* // In any component
|
|
17
|
+
* function MyComponent() {
|
|
18
|
+
* const { currentEntity, entities, selectEntity, isLoading } = useCurrentEntity();
|
|
19
|
+
*
|
|
20
|
+
* if (isLoading) return <Loading />;
|
|
21
|
+
*
|
|
22
|
+
* return (
|
|
23
|
+
* <div>
|
|
24
|
+
* <h1>Current: {currentEntity?.displayName}</h1>
|
|
25
|
+
* <select onChange={e => selectEntity(e.target.value)}>
|
|
26
|
+
* {entities.map(e => (
|
|
27
|
+
* <option key={e.entitySlug} value={e.entitySlug}>
|
|
28
|
+
* {e.displayName}
|
|
29
|
+
* </option>
|
|
30
|
+
* ))}
|
|
31
|
+
* </select>
|
|
32
|
+
* </div>
|
|
33
|
+
* );
|
|
34
|
+
* }
|
|
35
|
+
* ```
|
|
4
36
|
*/
|
|
5
37
|
import { type ReactNode } from 'react';
|
|
6
|
-
import type
|
|
38
|
+
import { type EntityWithRole } from '@sudobility/types';
|
|
7
39
|
import { EntityClient } from '../network/EntityClient';
|
|
40
|
+
/**
|
|
41
|
+
* Minimal user interface for authentication.
|
|
42
|
+
* Compatible with Firebase User object.
|
|
43
|
+
*/
|
|
44
|
+
export interface AuthUser {
|
|
45
|
+
/** User's unique identifier (e.g., Firebase UID) */
|
|
46
|
+
uid: string;
|
|
47
|
+
/** User's email address */
|
|
48
|
+
email?: string | null;
|
|
49
|
+
}
|
|
8
50
|
/**
|
|
9
51
|
* Context value for current entity.
|
|
10
52
|
*/
|
|
11
53
|
export interface CurrentEntityContextValue {
|
|
12
|
-
/** Currently selected entity */
|
|
54
|
+
/** Currently selected entity (full object with role) */
|
|
13
55
|
currentEntity: EntityWithRole | null;
|
|
56
|
+
/** Current entity's slug for URL routing */
|
|
57
|
+
currentEntitySlug: string | null;
|
|
58
|
+
/** Current entity's ID */
|
|
59
|
+
currentEntityId: string | null;
|
|
14
60
|
/** All user's entities */
|
|
15
61
|
entities: EntityWithRole[];
|
|
16
62
|
/** Whether entities are loading */
|
|
17
63
|
isLoading: boolean;
|
|
64
|
+
/** Whether the initial load has completed (even if there was an error) */
|
|
65
|
+
isInitialized: boolean;
|
|
18
66
|
/** Error if any */
|
|
19
67
|
error: Error | null;
|
|
20
|
-
/** Select a different entity */
|
|
68
|
+
/** Select a different entity by slug */
|
|
21
69
|
selectEntity: (entitySlug: string) => void;
|
|
70
|
+
/** Select a different entity by ID */
|
|
71
|
+
selectEntityById: (entityId: string) => void;
|
|
22
72
|
/** Refresh entities list */
|
|
23
73
|
refresh: () => void;
|
|
74
|
+
/** Clear the current entity (e.g., on logout) */
|
|
75
|
+
clear: () => void;
|
|
24
76
|
}
|
|
25
77
|
/**
|
|
26
78
|
* Props for CurrentEntityProvider.
|
|
@@ -30,15 +82,57 @@ export interface CurrentEntityProviderProps {
|
|
|
30
82
|
client: EntityClient;
|
|
31
83
|
/** Child components */
|
|
32
84
|
children: ReactNode;
|
|
33
|
-
/**
|
|
85
|
+
/** Current authenticated user (null if not authenticated) */
|
|
86
|
+
user: AuthUser | null;
|
|
87
|
+
/** Optional default entity slug (overrides personal entity auto-selection) */
|
|
34
88
|
defaultEntitySlug?: string;
|
|
89
|
+
/** Optional callback when current entity changes */
|
|
90
|
+
onEntityChange?: (entity: EntityWithRole | null) => void;
|
|
35
91
|
}
|
|
36
92
|
/**
|
|
37
93
|
* Provider component for current entity context.
|
|
94
|
+
*
|
|
95
|
+
* Features:
|
|
96
|
+
* - Auto-fetches entities when user is authenticated
|
|
97
|
+
* - Auto-selects personal entity by default
|
|
98
|
+
* - Persists last selected entity to localStorage
|
|
99
|
+
* - Clears state on logout
|
|
38
100
|
*/
|
|
39
|
-
export declare function CurrentEntityProvider({ client, children, defaultEntitySlug, }: CurrentEntityProviderProps): import("react/jsx-runtime").JSX.Element;
|
|
101
|
+
export declare function CurrentEntityProvider({ client, children, user, defaultEntitySlug, onEntityChange, }: CurrentEntityProviderProps): import("react/jsx-runtime").JSX.Element;
|
|
40
102
|
/**
|
|
41
103
|
* Hook to access current entity context.
|
|
104
|
+
*
|
|
105
|
+
* @throws Error if used outside of CurrentEntityProvider
|
|
106
|
+
*
|
|
107
|
+
* @example
|
|
108
|
+
* ```tsx
|
|
109
|
+
* function Dashboard() {
|
|
110
|
+
* const { currentEntity, isLoading, selectEntity } = useCurrentEntity();
|
|
111
|
+
*
|
|
112
|
+
* if (isLoading) return <Spinner />;
|
|
113
|
+
* if (!currentEntity) return <div>Please select a workspace</div>;
|
|
114
|
+
*
|
|
115
|
+
* return <h1>Welcome to {currentEntity.displayName}</h1>;
|
|
116
|
+
* }
|
|
117
|
+
* ```
|
|
42
118
|
*/
|
|
43
119
|
export declare function useCurrentEntity(): CurrentEntityContextValue;
|
|
120
|
+
/**
|
|
121
|
+
* Hook to access current entity context with a fallback for optional usage.
|
|
122
|
+
* Returns null if not within a provider, instead of throwing.
|
|
123
|
+
*
|
|
124
|
+
* @example
|
|
125
|
+
* ```tsx
|
|
126
|
+
* function OptionalEntityDisplay() {
|
|
127
|
+
* const entityContext = useCurrentEntityOptional();
|
|
128
|
+
*
|
|
129
|
+
* if (!entityContext?.currentEntity) {
|
|
130
|
+
* return <div>No workspace selected</div>;
|
|
131
|
+
* }
|
|
132
|
+
*
|
|
133
|
+
* return <div>{entityContext.currentEntity.displayName}</div>;
|
|
134
|
+
* }
|
|
135
|
+
* ```
|
|
136
|
+
*/
|
|
137
|
+
export declare function useCurrentEntityOptional(): CurrentEntityContextValue | null;
|
|
44
138
|
//# sourceMappingURL=useCurrentEntity.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCurrentEntity.d.ts","sourceRoot":"","sources":["../../src/hooks/useCurrentEntity.tsx"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"useCurrentEntity.d.ts","sourceRoot":"","sources":["../../src/hooks/useCurrentEntity.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAEH,OAAO,EAEL,KAAK,SAAS,EAMf,MAAM,OAAO,CAAC;AACf,OAAO,EAAc,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAGvD;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB,oDAAoD;IACpD,GAAG,EAAE,MAAM,CAAC;IACZ,2BAA2B;IAC3B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,wDAAwD;IACxD,aAAa,EAAE,cAAc,GAAG,IAAI,CAAC;IACrC,4CAA4C;IAC5C,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,0BAA0B;IAC1B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,0BAA0B;IAC1B,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,mCAAmC;IACnC,SAAS,EAAE,OAAO,CAAC;IACnB,0EAA0E;IAC1E,aAAa,EAAE,OAAO,CAAC;IACvB,mBAAmB;IACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,wCAAwC;IACxC,YAAY,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,sCAAsC;IACtC,gBAAgB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,4BAA4B;IAC5B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,iDAAiD;IACjD,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAWD;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,wBAAwB;IACxB,MAAM,EAAE,YAAY,CAAC;IACrB,uBAAuB;IACvB,QAAQ,EAAE,SAAS,CAAC;IACpB,6DAA6D;IAC7D,IAAI,EAAE,QAAQ,GAAG,IAAI,CAAC;IACtB,8EAA8E;IAC9E,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,oDAAoD;IACpD,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,KAAK,IAAI,CAAC;CAC1D;AAWD;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CAAC,EACpC,MAAM,EACN,QAAQ,EACR,IAAI,EACJ,iBAAiB,EACjB,cAAc,GACf,EAAE,0BAA0B,2CA0J5B;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,gBAAgB,IAAI,yBAAyB,CAQ5D;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,wBAAwB,IAAI,yBAAyB,GAAG,IAAI,CAE3E"}
|
|
@@ -2,18 +2,63 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
2
2
|
/**
|
|
3
3
|
* @fileoverview Current Entity Context Hook
|
|
4
4
|
* @description React context and hook for managing current entity selection
|
|
5
|
+
*
|
|
6
|
+
* This module provides a context-based system for managing the current entity
|
|
7
|
+
* (workspace) selection. It automatically fetches entities when the user is
|
|
8
|
+
* authenticated and selects the personal entity by default.
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```tsx
|
|
12
|
+
* // In your app root
|
|
13
|
+
* <CurrentEntityProvider client={entityClient} user={firebaseUser}>
|
|
14
|
+
* <App />
|
|
15
|
+
* </CurrentEntityProvider>
|
|
16
|
+
*
|
|
17
|
+
* // In any component
|
|
18
|
+
* function MyComponent() {
|
|
19
|
+
* const { currentEntity, entities, selectEntity, isLoading } = useCurrentEntity();
|
|
20
|
+
*
|
|
21
|
+
* if (isLoading) return <Loading />;
|
|
22
|
+
*
|
|
23
|
+
* return (
|
|
24
|
+
* <div>
|
|
25
|
+
* <h1>Current: {currentEntity?.displayName}</h1>
|
|
26
|
+
* <select onChange={e => selectEntity(e.target.value)}>
|
|
27
|
+
* {entities.map(e => (
|
|
28
|
+
* <option key={e.entitySlug} value={e.entitySlug}>
|
|
29
|
+
* {e.displayName}
|
|
30
|
+
* </option>
|
|
31
|
+
* ))}
|
|
32
|
+
* </select>
|
|
33
|
+
* </div>
|
|
34
|
+
* );
|
|
35
|
+
* }
|
|
36
|
+
* ```
|
|
5
37
|
*/
|
|
6
|
-
import { createContext, useCallback, useContext, useEffect, useState, } from 'react';
|
|
38
|
+
import { createContext, useCallback, useContext, useEffect, useRef, useState, } from 'react';
|
|
39
|
+
import { EntityType } from '@sudobility/types';
|
|
7
40
|
import { useEntities } from './useEntities';
|
|
8
41
|
const CurrentEntityContext = createContext(null);
|
|
9
42
|
/**
|
|
10
43
|
* Storage key for persisting selected entity.
|
|
11
44
|
*/
|
|
12
45
|
const STORAGE_KEY = 'currentEntitySlug';
|
|
46
|
+
/**
|
|
47
|
+
* Find the personal entity from a list of entities.
|
|
48
|
+
*/
|
|
49
|
+
function findPersonalEntity(entities) {
|
|
50
|
+
return entities.find(e => e.entityType === EntityType.PERSONAL);
|
|
51
|
+
}
|
|
13
52
|
/**
|
|
14
53
|
* Provider component for current entity context.
|
|
54
|
+
*
|
|
55
|
+
* Features:
|
|
56
|
+
* - Auto-fetches entities when user is authenticated
|
|
57
|
+
* - Auto-selects personal entity by default
|
|
58
|
+
* - Persists last selected entity to localStorage
|
|
59
|
+
* - Clears state on logout
|
|
15
60
|
*/
|
|
16
|
-
export function CurrentEntityProvider({ client, children, defaultEntitySlug, }) {
|
|
61
|
+
export function CurrentEntityProvider({ client, children, user, defaultEntitySlug, onEntityChange, }) {
|
|
17
62
|
const [selectedSlug, setSelectedSlug] = useState(() => {
|
|
18
63
|
// Try to restore from storage
|
|
19
64
|
if (typeof window !== 'undefined') {
|
|
@@ -21,39 +66,137 @@ export function CurrentEntityProvider({ client, children, defaultEntitySlug, })
|
|
|
21
66
|
}
|
|
22
67
|
return defaultEntitySlug || null;
|
|
23
68
|
});
|
|
24
|
-
const
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
69
|
+
const [isInitialized, setIsInitialized] = useState(false);
|
|
70
|
+
const previousUserUid = useRef(null);
|
|
71
|
+
// Only fetch entities when user is authenticated
|
|
72
|
+
const { data: entities = [], isLoading: isEntitiesLoading, error, refetch, } = useEntities(client);
|
|
73
|
+
// Track if we're authenticated
|
|
74
|
+
const isAuthenticated = !!user;
|
|
75
|
+
// Handle user changes (login/logout)
|
|
28
76
|
useEffect(() => {
|
|
77
|
+
const currentUid = user?.uid ?? null;
|
|
78
|
+
// User logged in
|
|
79
|
+
if (currentUid && currentUid !== previousUserUid.current) {
|
|
80
|
+
// Refetch entities for the new user
|
|
81
|
+
refetch();
|
|
82
|
+
}
|
|
83
|
+
// User logged out
|
|
84
|
+
if (!currentUid && previousUserUid.current) {
|
|
85
|
+
// Clear the selected entity
|
|
86
|
+
setSelectedSlug(null);
|
|
87
|
+
setIsInitialized(false);
|
|
88
|
+
if (typeof window !== 'undefined') {
|
|
89
|
+
localStorage.removeItem(STORAGE_KEY);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
previousUserUid.current = currentUid;
|
|
93
|
+
}, [user?.uid, refetch]);
|
|
94
|
+
// Determine current entity based on selection priority:
|
|
95
|
+
// 1. Selected slug (if still valid in entities list)
|
|
96
|
+
// 2. Last used (from localStorage, if still valid)
|
|
97
|
+
// 3. Personal entity
|
|
98
|
+
// 4. First entity
|
|
99
|
+
const currentEntity = (() => {
|
|
100
|
+
if (!isAuthenticated || entities.length === 0) {
|
|
101
|
+
return null;
|
|
102
|
+
}
|
|
103
|
+
// If we have a selected slug, try to find it
|
|
104
|
+
if (selectedSlug) {
|
|
105
|
+
const found = entities.find(e => e.entitySlug === selectedSlug);
|
|
106
|
+
if (found)
|
|
107
|
+
return found;
|
|
108
|
+
}
|
|
109
|
+
// Try to find personal entity
|
|
110
|
+
const personal = findPersonalEntity(entities);
|
|
111
|
+
if (personal)
|
|
112
|
+
return personal;
|
|
113
|
+
// Fallback to first entity
|
|
114
|
+
return entities[0] || null;
|
|
115
|
+
})();
|
|
116
|
+
// Persist selection and mark as initialized
|
|
117
|
+
useEffect(() => {
|
|
118
|
+
if (!isAuthenticated)
|
|
119
|
+
return;
|
|
29
120
|
if (currentEntity && typeof window !== 'undefined') {
|
|
30
121
|
localStorage.setItem(STORAGE_KEY, currentEntity.entitySlug);
|
|
31
122
|
}
|
|
32
|
-
|
|
33
|
-
|
|
123
|
+
// Mark as initialized once we have entities (even if empty) and not loading
|
|
124
|
+
if (!isEntitiesLoading && isAuthenticated) {
|
|
125
|
+
setIsInitialized(true);
|
|
126
|
+
}
|
|
127
|
+
}, [currentEntity, isEntitiesLoading, isAuthenticated]);
|
|
128
|
+
// Auto-select personal entity when entities are first loaded
|
|
34
129
|
useEffect(() => {
|
|
35
|
-
if (!
|
|
36
|
-
|
|
130
|
+
if (!isAuthenticated || isEntitiesLoading || entities.length === 0) {
|
|
131
|
+
return;
|
|
37
132
|
}
|
|
38
|
-
|
|
133
|
+
// If no entity is currently selected, select the personal entity
|
|
134
|
+
if (!selectedSlug || !entities.find(e => e.entitySlug === selectedSlug)) {
|
|
135
|
+
const personal = findPersonalEntity(entities);
|
|
136
|
+
if (personal) {
|
|
137
|
+
setSelectedSlug(personal.entitySlug);
|
|
138
|
+
}
|
|
139
|
+
else if (entities.length > 0) {
|
|
140
|
+
setSelectedSlug(entities[0].entitySlug);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
}, [entities, isEntitiesLoading, selectedSlug, isAuthenticated]);
|
|
144
|
+
// Notify when current entity changes
|
|
145
|
+
useEffect(() => {
|
|
146
|
+
onEntityChange?.(currentEntity);
|
|
147
|
+
}, [currentEntity, onEntityChange]);
|
|
39
148
|
const selectEntity = useCallback((entitySlug) => {
|
|
40
149
|
setSelectedSlug(entitySlug);
|
|
41
150
|
}, []);
|
|
151
|
+
const selectEntityById = useCallback((entityId) => {
|
|
152
|
+
const entity = entities.find(e => e.id === entityId);
|
|
153
|
+
if (entity) {
|
|
154
|
+
setSelectedSlug(entity.entitySlug);
|
|
155
|
+
}
|
|
156
|
+
}, [entities]);
|
|
42
157
|
const refresh = useCallback(() => {
|
|
43
158
|
refetch();
|
|
44
159
|
}, [refetch]);
|
|
160
|
+
const clear = useCallback(() => {
|
|
161
|
+
setSelectedSlug(null);
|
|
162
|
+
setIsInitialized(false);
|
|
163
|
+
if (typeof window !== 'undefined') {
|
|
164
|
+
localStorage.removeItem(STORAGE_KEY);
|
|
165
|
+
}
|
|
166
|
+
}, []);
|
|
167
|
+
// Compute loading state
|
|
168
|
+
const isLoading = isAuthenticated && isEntitiesLoading;
|
|
45
169
|
const value = {
|
|
46
170
|
currentEntity,
|
|
47
|
-
|
|
171
|
+
currentEntitySlug: currentEntity?.entitySlug ?? null,
|
|
172
|
+
currentEntityId: currentEntity?.id ?? null,
|
|
173
|
+
entities: isAuthenticated ? entities : [],
|
|
48
174
|
isLoading,
|
|
175
|
+
isInitialized,
|
|
49
176
|
error: error,
|
|
50
177
|
selectEntity,
|
|
178
|
+
selectEntityById,
|
|
51
179
|
refresh,
|
|
180
|
+
clear,
|
|
52
181
|
};
|
|
53
182
|
return (_jsx(CurrentEntityContext.Provider, { value: value, children: children }));
|
|
54
183
|
}
|
|
55
184
|
/**
|
|
56
185
|
* Hook to access current entity context.
|
|
186
|
+
*
|
|
187
|
+
* @throws Error if used outside of CurrentEntityProvider
|
|
188
|
+
*
|
|
189
|
+
* @example
|
|
190
|
+
* ```tsx
|
|
191
|
+
* function Dashboard() {
|
|
192
|
+
* const { currentEntity, isLoading, selectEntity } = useCurrentEntity();
|
|
193
|
+
*
|
|
194
|
+
* if (isLoading) return <Spinner />;
|
|
195
|
+
* if (!currentEntity) return <div>Please select a workspace</div>;
|
|
196
|
+
*
|
|
197
|
+
* return <h1>Welcome to {currentEntity.displayName}</h1>;
|
|
198
|
+
* }
|
|
199
|
+
* ```
|
|
57
200
|
*/
|
|
58
201
|
export function useCurrentEntity() {
|
|
59
202
|
const context = useContext(CurrentEntityContext);
|
|
@@ -62,4 +205,24 @@ export function useCurrentEntity() {
|
|
|
62
205
|
}
|
|
63
206
|
return context;
|
|
64
207
|
}
|
|
208
|
+
/**
|
|
209
|
+
* Hook to access current entity context with a fallback for optional usage.
|
|
210
|
+
* Returns null if not within a provider, instead of throwing.
|
|
211
|
+
*
|
|
212
|
+
* @example
|
|
213
|
+
* ```tsx
|
|
214
|
+
* function OptionalEntityDisplay() {
|
|
215
|
+
* const entityContext = useCurrentEntityOptional();
|
|
216
|
+
*
|
|
217
|
+
* if (!entityContext?.currentEntity) {
|
|
218
|
+
* return <div>No workspace selected</div>;
|
|
219
|
+
* }
|
|
220
|
+
*
|
|
221
|
+
* return <div>{entityContext.currentEntity.displayName}</div>;
|
|
222
|
+
* }
|
|
223
|
+
* ```
|
|
224
|
+
*/
|
|
225
|
+
export function useCurrentEntityOptional() {
|
|
226
|
+
return useContext(CurrentEntityContext);
|
|
227
|
+
}
|
|
65
228
|
//# sourceMappingURL=useCurrentEntity.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCurrentEntity.js","sourceRoot":"","sources":["../../src/hooks/useCurrentEntity.tsx"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"useCurrentEntity.js","sourceRoot":"","sources":["../../src/hooks/useCurrentEntity.tsx"],"names":[],"mappings":"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"}
|
|
@@ -34,6 +34,13 @@ export declare function useCancelInvitation(client: EntityClient): import("@tans
|
|
|
34
34
|
entitySlug: string;
|
|
35
35
|
invitationId: string;
|
|
36
36
|
}, unknown>;
|
|
37
|
+
/**
|
|
38
|
+
* Hook to renew an invitation with a new expiration date.
|
|
39
|
+
*/
|
|
40
|
+
export declare function useRenewInvitation(client: EntityClient): import("@tanstack/react-query").UseMutationResult<import("@sudobility/types").EntityInvitation, Error, {
|
|
41
|
+
entitySlug: string;
|
|
42
|
+
invitationId: string;
|
|
43
|
+
}, unknown>;
|
|
37
44
|
/**
|
|
38
45
|
* Hook to accept an invitation.
|
|
39
46
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useInvitations.d.ts","sourceRoot":"","sources":["../../src/hooks/useInvitations.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAGvD;;GAEG;AACH,eAAO,MAAM,cAAc;;;6BAGA,MAAM;CAEhC,CAAC;AAEF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,YAAY,yGAWpD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,YAAY,EACpB,UAAU,EAAE,MAAM,GAAG,IAAI,yGAc1B;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,YAAY;gBAQtC,MAAM;aACT,mBAAmB;YAcjC;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,YAAY;gBAQtC,MAAM;kBACJ,MAAM;YAazB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,YAAY,mFAgBvD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,YAAY,mFAcxD"}
|
|
1
|
+
{"version":3,"file":"useInvitations.d.ts","sourceRoot":"","sources":["../../src/hooks/useInvitations.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAGvD;;GAEG;AACH,eAAO,MAAM,cAAc;;;6BAGA,MAAM;CAEhC,CAAC;AAEF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,YAAY,yGAWpD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,YAAY,EACpB,UAAU,EAAE,MAAM,GAAG,IAAI,yGAc1B;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,YAAY;gBAQtC,MAAM;aACT,mBAAmB;YAcjC;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,YAAY;gBAQtC,MAAM;kBACJ,MAAM;YAazB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,YAAY;gBAQrC,MAAM;kBACJ,MAAM;YAczB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,YAAY,mFAgBvD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,YAAY,mFAcxD"}
|
|
@@ -84,6 +84,26 @@ export function useCancelInvitation(client) {
|
|
|
84
84
|
},
|
|
85
85
|
});
|
|
86
86
|
}
|
|
87
|
+
/**
|
|
88
|
+
* Hook to renew an invitation with a new expiration date.
|
|
89
|
+
*/
|
|
90
|
+
export function useRenewInvitation(client) {
|
|
91
|
+
const queryClient = useQueryClient();
|
|
92
|
+
return useMutation({
|
|
93
|
+
mutationFn: async ({ entitySlug, invitationId, }) => {
|
|
94
|
+
const response = await client.renewInvitation(entitySlug, invitationId);
|
|
95
|
+
if (!response.success || !response.data) {
|
|
96
|
+
throw new Error(response.error || 'Failed to renew invitation');
|
|
97
|
+
}
|
|
98
|
+
return response.data;
|
|
99
|
+
},
|
|
100
|
+
onSuccess: (_, variables) => {
|
|
101
|
+
queryClient.invalidateQueries({
|
|
102
|
+
queryKey: invitationKeys.entityList(variables.entitySlug),
|
|
103
|
+
});
|
|
104
|
+
},
|
|
105
|
+
});
|
|
106
|
+
}
|
|
87
107
|
/**
|
|
88
108
|
* Hook to accept an invitation.
|
|
89
109
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useInvitations.js","sourceRoot":"","sources":["../../src/hooks/useInvitations.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useInvitations.js","sourceRoot":"","sources":["../../src/hooks/useInvitations.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAG9E,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,GAAG,EAAE,CAAC,aAAa,CAAU;IAC7B,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,cAAc,CAAC,GAAG,EAAE,IAAI,CAAU;IACpD,UAAU,EAAE,CAAC,UAAkB,EAAE,EAAE,CACjC,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,aAAa,CAAU;CAC7D,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAoB;IACnD,OAAO,QAAQ,CAAC;QACd,QAAQ,EAAE,cAAc,CAAC,MAAM,EAAE;QACjC,OAAO,EAAE,KAAK,IAAI,EAAE;YAClB,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,iBAAiB,EAAE,CAAC;YAClD,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACxC,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,6BAA6B,CAAC,CAAC;YACnE,CAAC;YACD,OAAO,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAClC,MAAoB,EACpB,UAAyB;IAEzB,OAAO,QAAQ,CAAC;QACd,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;QAC3E,OAAO,EAAE,KAAK,IAAI,EAAE;YAClB,IAAI,CAAC,UAAU;gBAAE,OAAO,EAAE,CAAC;YAC3B,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;YAChE,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACxC,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,6BAA6B,CAAC,CAAC;YACnE,CAAC;YACD,OAAO,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;QACD,OAAO,EAAE,CAAC,CAAC,UAAU;KACtB,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAoB;IACtD,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,OAAO,WAAW,CAAC;QACjB,UAAU,EAAE,KAAK,EAAE,EACjB,UAAU,EACV,OAAO,GAIR,EAAE,EAAE;YACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YACpE,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACxC,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,6BAA6B,CAAC,CAAC;YACnE,CAAC;YACD,OAAO,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;QACD,SAAS,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE;YAC1B,WAAW,CAAC,iBAAiB,CAAC;gBAC5B,QAAQ,EAAE,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC;aAC1D,CAAC,CAAC;QACL,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAoB;IACtD,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,OAAO,WAAW,CAAC;QACjB,UAAU,EAAE,KAAK,EAAE,EACjB,UAAU,EACV,YAAY,GAIb,EAAE,EAAE;YACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;YACzE,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACtB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,6BAA6B,CAAC,CAAC;YACnE,CAAC;QACH,CAAC;QACD,SAAS,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE;YAC1B,WAAW,CAAC,iBAAiB,CAAC;gBAC5B,QAAQ,EAAE,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC;aAC1D,CAAC,CAAC;QACL,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAoB;IACrD,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,OAAO,WAAW,CAAC;QACjB,UAAU,EAAE,KAAK,EAAE,EACjB,UAAU,EACV,YAAY,GAIb,EAAE,EAAE;YACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;YACxE,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACxC,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,4BAA4B,CAAC,CAAC;YAClE,CAAC;YACD,OAAO,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;QACD,SAAS,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE;YAC1B,WAAW,CAAC,iBAAiB,CAAC;gBAC5B,QAAQ,EAAE,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC;aAC1D,CAAC,CAAC;QACL,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAoB;IACtD,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,OAAO,WAAW,CAAC;QACjB,UAAU,EAAE,KAAK,EAAE,KAAa,EAAE,EAAE;YAClC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;YACtD,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACtB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,6BAA6B,CAAC,CAAC;YACnE,CAAC;QACH,CAAC;QACD,SAAS,EAAE,GAAG,EAAE;YACd,iDAAiD;YACjD,WAAW,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YACrE,WAAW,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,UAAU,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAClE,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAoB;IACvD,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,OAAO,WAAW,CAAC;QACjB,UAAU,EAAE,KAAK,EAAE,KAAa,EAAE,EAAE;YAClC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACvD,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACtB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,8BAA8B,CAAC,CAAC;YACpE,CAAC;QACH,CAAC;QACD,SAAS,EAAE,GAAG,EAAE;YACd,WAAW,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACvE,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -25,6 +25,6 @@
|
|
|
25
25
|
* ```
|
|
26
26
|
*/
|
|
27
27
|
export { EntityClient, type EntityClientConfig, type ApiResponse, } from './network';
|
|
28
|
-
export { useEntities, useEntity, useCreateEntity, useUpdateEntity, useDeleteEntity, entityKeys, useEntityMembers, useUpdateMemberRole, useRemoveMember, memberKeys, useMyInvitations, useEntityInvitations, useCreateInvitation, useCancelInvitation, useAcceptInvitation, useDeclineInvitation, invitationKeys, useCurrentEntity, CurrentEntityProvider, type CurrentEntityContextValue, type CurrentEntityProviderProps, } from './hooks';
|
|
28
|
+
export { useEntities, useEntity, useCreateEntity, useUpdateEntity, useDeleteEntity, entityKeys, useEntityMembers, useUpdateMemberRole, useRemoveMember, memberKeys, useMyInvitations, useEntityInvitations, useCreateInvitation, useCancelInvitation, useAcceptInvitation, useDeclineInvitation, invitationKeys, useCurrentEntity, useCurrentEntityOptional, CurrentEntityProvider, type CurrentEntityContextValue, type CurrentEntityProviderProps, type AuthUser, } from './hooks';
|
|
29
29
|
export type { Entity, EntityWithRole, EntityMember, EntityMemberUser, EntityInvitation, EntityType, EntityRole, InvitationStatus, EntityPermissions, CreateEntityRequest, UpdateEntityRequest, InviteMemberRequest, UpdateMemberRoleRequest, } from '@sudobility/types';
|
|
30
30
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAGH,OAAO,EACL,YAAY,EACZ,KAAK,kBAAkB,EACvB,KAAK,WAAW,GACjB,MAAM,WAAW,CAAC;AAGnB,OAAO,EAEL,WAAW,EACX,SAAS,EACT,eAAe,EACf,eAAe,EACf,eAAe,EACf,UAAU,EAEV,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,UAAU,EAEV,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,EAEd,gBAAgB,EAChB,qBAAqB,EACrB,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAGH,OAAO,EACL,YAAY,EACZ,KAAK,kBAAkB,EACvB,KAAK,WAAW,GACjB,MAAM,WAAW,CAAC;AAGnB,OAAO,EAEL,WAAW,EACX,SAAS,EACT,eAAe,EACf,eAAe,EACf,eAAe,EACf,UAAU,EAEV,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,UAAU,EAEV,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,EAEd,gBAAgB,EAChB,wBAAwB,EACxB,qBAAqB,EACrB,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,QAAQ,GACd,MAAM,SAAS,CAAC;AAGjB,YAAY,EACV,MAAM,EACN,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,mBAAmB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -35,5 +35,5 @@ useEntityMembers, useUpdateMemberRole, useRemoveMember, memberKeys,
|
|
|
35
35
|
// Invitation hooks
|
|
36
36
|
useMyInvitations, useEntityInvitations, useCreateInvitation, useCancelInvitation, useAcceptInvitation, useDeclineInvitation, invitationKeys,
|
|
37
37
|
// Context
|
|
38
|
-
useCurrentEntity, CurrentEntityProvider, } from './hooks';
|
|
38
|
+
useCurrentEntity, useCurrentEntityOptional, CurrentEntityProvider, } from './hooks';
|
|
39
39
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,kBAAkB;AAClB,OAAO,EACL,YAAY,GAGb,MAAM,WAAW,CAAC;AAEnB,eAAe;AACf,OAAO;AACL,eAAe;AACf,WAAW,EACX,SAAS,EACT,eAAe,EACf,eAAe,EACf,eAAe,EACf,UAAU;AACV,eAAe;AACf,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,UAAU;AACV,mBAAmB;AACnB,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,cAAc;AACd,UAAU;AACV,gBAAgB,EAChB,qBAAqB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,kBAAkB;AAClB,OAAO,EACL,YAAY,GAGb,MAAM,WAAW,CAAC;AAEnB,eAAe;AACf,OAAO;AACL,eAAe;AACf,WAAW,EACX,SAAS,EACT,eAAe,EACf,eAAe,EACf,eAAe,EACf,UAAU;AACV,eAAe;AACf,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,UAAU;AACV,mBAAmB;AACnB,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,cAAc;AACd,UAAU;AACV,gBAAgB,EAChB,wBAAwB,EACxB,qBAAqB,GAItB,MAAM,SAAS,CAAC"}
|
|
@@ -74,6 +74,10 @@ export declare class EntityClient {
|
|
|
74
74
|
* Cancel an invitation.
|
|
75
75
|
*/
|
|
76
76
|
cancelInvitation(entitySlug: string, invitationId: string): Promise<ApiResponse<void>>;
|
|
77
|
+
/**
|
|
78
|
+
* Renew an invitation with a new expiration date.
|
|
79
|
+
*/
|
|
80
|
+
renewInvitation(entitySlug: string, invitationId: string): Promise<ApiResponse<EntityInvitation>>;
|
|
77
81
|
/**
|
|
78
82
|
* List pending invitations for the current user.
|
|
79
83
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityClient.d.ts","sourceRoot":"","sources":["../../src/network/EntityClient.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,mBAAmB,EACnB,MAAM,EACN,gBAAgB,EAChB,YAAY,EACZ,UAAU,EACV,cAAc,EACd,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,mBAAmB,CAAC;AAE3B;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,oEAAoE;IACpE,OAAO,EAAE,MAAM,CAAC;IAChB,6CAA6C;IAC7C,YAAY,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CAC5C;AAED;;GAEG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,qBAAa,YAAY;IACvB,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;gBAElC,MAAM,EAAE,kBAAkB;IAItC;;OAEG;YACW,OAAO;IAiCrB;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC,CAAC;IAI5D;;OAEG;IACG,YAAY,CAChB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAO/B;;OAEG;IACG,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IAIzE;;OAEG;IACG,YAAY,CAChB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAO/B;;OAEG;IACG,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAUlE;;OAEG;IACG,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC;IAI3E;;OAEG;IACG,gBAAgB,CACpB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IAUrC;;OAEG;IACG,YAAY,CAChB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAU7B;;OAEG;IACG,qBAAqB,CACzB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAM3C;;OAEG;IACG,gBAAgB,CACpB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;IAUzC;;OAEG;IACG,gBAAgB,CACpB,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAS7B;;OAEG;IACG,iBAAiB,IAAI,OAAO,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAInE;;OAEG;IACG,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAMjE;;OAEG;IACG,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;CAKnE"}
|
|
1
|
+
{"version":3,"file":"EntityClient.d.ts","sourceRoot":"","sources":["../../src/network/EntityClient.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,mBAAmB,EACnB,MAAM,EACN,gBAAgB,EAChB,YAAY,EACZ,UAAU,EACV,cAAc,EACd,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,mBAAmB,CAAC;AAE3B;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,oEAAoE;IACpE,OAAO,EAAE,MAAM,CAAC;IAChB,6CAA6C;IAC7C,YAAY,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CAC5C;AAED;;GAEG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,qBAAa,YAAY;IACvB,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;gBAElC,MAAM,EAAE,kBAAkB;IAItC;;OAEG;YACW,OAAO;IAiCrB;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC,CAAC;IAI5D;;OAEG;IACG,YAAY,CAChB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAO/B;;OAEG;IACG,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IAIzE;;OAEG;IACG,YAAY,CAChB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAO/B;;OAEG;IACG,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAUlE;;OAEG;IACG,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC;IAI3E;;OAEG;IACG,gBAAgB,CACpB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IAUrC;;OAEG;IACG,YAAY,CAChB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAU7B;;OAEG;IACG,qBAAqB,CACzB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAM3C;;OAEG;IACG,gBAAgB,CACpB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;IAUzC;;OAEG;IACG,gBAAgB,CACpB,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAS7B;;OAEG;IACG,eAAe,CACnB,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;IASzC;;OAEG;IACG,iBAAiB,IAAI,OAAO,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAInE;;OAEG;IACG,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAMjE;;OAEG;IACG,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;CAKnE"}
|
|
@@ -128,6 +128,14 @@ export class EntityClient {
|
|
|
128
128
|
method: 'DELETE',
|
|
129
129
|
});
|
|
130
130
|
}
|
|
131
|
+
/**
|
|
132
|
+
* Renew an invitation with a new expiration date.
|
|
133
|
+
*/
|
|
134
|
+
async renewInvitation(entitySlug, invitationId) {
|
|
135
|
+
return this.request(`/entities/${entitySlug}/invitations/${invitationId}`, {
|
|
136
|
+
method: 'PUT',
|
|
137
|
+
});
|
|
138
|
+
}
|
|
131
139
|
/**
|
|
132
140
|
* List pending invitations for the current user.
|
|
133
141
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityClient.js","sourceRoot":"","sources":["../../src/network/EntityClient.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"EntityClient.js","sourceRoot":"","sources":["../../src/network/EntityClient.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAgCH;;GAEG;AACH,MAAM,OAAO,YAAY;IAGvB,YAAY,MAA0B;QACpC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,OAAO,CACnB,IAAY,EACZ,UAAuB,EAAE;QAEzB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;QAC/C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC;QACxD,CAAC;QAED,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAgB;YAC3B,cAAc,EAAE,kBAAkB;YAClC,aAAa,EAAE,UAAU,KAAK,EAAE;YAChC,GAAG,OAAO,CAAC,OAAO;SACnB,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAChC,GAAG,OAAO;gBACV,OAAO;aACR,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnC,OAAO,IAAsB,CAAC;QAChC,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;QAClD,CAAC;IACH,CAAC;IAED,gFAAgF;IAChF,cAAc;IACd,gFAAgF;IAEhF;;OAEG;IACH,KAAK,CAAC,YAAY;QAChB,OAAO,IAAI,CAAC,OAAO,CAAmB,WAAW,CAAC,CAAC;IACrD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAChB,OAA4B;QAE5B,OAAO,IAAI,CAAC,OAAO,CAAS,WAAW,EAAE;YACvC,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;SAC9B,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CAAC,UAAkB;QAChC,OAAO,IAAI,CAAC,OAAO,CAAiB,aAAa,UAAU,EAAE,CAAC,CAAC;IACjE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAChB,UAAkB,EAClB,OAA4B;QAE5B,OAAO,IAAI,CAAC,OAAO,CAAS,aAAa,UAAU,EAAE,EAAE;YACrD,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;SAC9B,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,UAAkB;QACnC,OAAO,IAAI,CAAC,OAAO,CAAO,aAAa,UAAU,EAAE,EAAE;YACnD,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;IACL,CAAC;IAED,gFAAgF;IAChF,oBAAoB;IACpB,gFAAgF;IAEhF;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,UAAkB;QAClC,OAAO,IAAI,CAAC,OAAO,CAAiB,aAAa,UAAU,UAAU,CAAC,CAAC;IACzE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB,CACpB,UAAkB,EAClB,QAAgB,EAChB,IAAgB;QAEhB,OAAO,IAAI,CAAC,OAAO,CACjB,aAAa,UAAU,YAAY,QAAQ,EAAE,EAC7C;YACE,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC;SAC/B,CACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAChB,UAAkB,EAClB,QAAgB;QAEhB,OAAO,IAAI,CAAC,OAAO,CAAO,aAAa,UAAU,YAAY,QAAQ,EAAE,EAAE;YACvE,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;IACL,CAAC;IAED,gFAAgF;IAChF,wBAAwB;IACxB,gFAAgF;IAEhF;;OAEG;IACH,KAAK,CAAC,qBAAqB,CACzB,UAAkB;QAElB,OAAO,IAAI,CAAC,OAAO,CACjB,aAAa,UAAU,cAAc,CACtC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB,CACpB,UAAkB,EAClB,OAA4B;QAE5B,OAAO,IAAI,CAAC,OAAO,CACjB,aAAa,UAAU,cAAc,EACrC;YACE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;SAC9B,CACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB,CACpB,UAAkB,EAClB,YAAoB;QAEpB,OAAO,IAAI,CAAC,OAAO,CACjB,aAAa,UAAU,gBAAgB,YAAY,EAAE,EACrD;YACE,MAAM,EAAE,QAAQ;SACjB,CACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CACnB,UAAkB,EAClB,YAAoB;QAEpB,OAAO,IAAI,CAAC,OAAO,CACjB,aAAa,UAAU,gBAAgB,YAAY,EAAE,EACrD;YACE,MAAM,EAAE,KAAK;SACd,CACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB;QACrB,OAAO,IAAI,CAAC,OAAO,CAAqB,cAAc,CAAC,CAAC;IAC1D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB,CAAC,KAAa;QAClC,OAAO,IAAI,CAAC,OAAO,CAAO,gBAAgB,KAAK,SAAS,EAAE;YACxD,MAAM,EAAE,MAAM;SACf,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB,CAAC,KAAa;QACnC,OAAO,IAAI,CAAC,OAAO,CAAO,gBAAgB,KAAK,UAAU,EAAE;YACzD,MAAM,EAAE,MAAM;SACf,CAAC,CAAC;IACL,CAAC;CACF"}
|