@ossy/sdk-react 0.1.3 → 0.1.5
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/build/node_modules/ramda/es/always.js +1 -0
- package/build/node_modules/ramda/es/assocPath.js +1 -0
- package/build/node_modules/ramda/es/curry.js +1 -0
- package/build/node_modules/ramda/es/curryN.js +1 -0
- package/build/node_modules/ramda/es/equals.js +1 -0
- package/build/node_modules/ramda/es/findIndex.js +1 -0
- package/build/node_modules/ramda/es/internal/_arity.js +1 -0
- package/build/node_modules/ramda/es/internal/_arrayFromIterator.js +1 -0
- package/build/node_modules/ramda/es/internal/_arrayReduce.js +1 -0
- package/build/node_modules/ramda/es/internal/_assoc.js +1 -0
- package/build/node_modules/ramda/es/internal/_curry1.js +1 -0
- package/build/node_modules/ramda/es/internal/_curry2.js +1 -0
- package/build/node_modules/ramda/es/internal/_curry3.js +1 -0
- package/build/node_modules/ramda/es/internal/_curryN.js +1 -0
- package/build/node_modules/ramda/es/internal/_dispatchable.js +1 -0
- package/build/node_modules/ramda/es/internal/_equals.js +1 -0
- package/build/node_modules/ramda/es/internal/_functionName.js +1 -0
- package/build/node_modules/ramda/es/internal/_has.js +1 -0
- package/build/node_modules/ramda/es/internal/_includesWith.js +1 -0
- package/build/node_modules/ramda/es/internal/_isArguments.js +1 -0
- package/build/node_modules/ramda/es/internal/_isArray.js +1 -0
- package/build/node_modules/ramda/es/internal/_isInteger.js +1 -0
- package/build/node_modules/ramda/es/internal/_isPlaceholder.js +1 -0
- package/build/node_modules/ramda/es/internal/_isTransformer.js +1 -0
- package/build/node_modules/ramda/es/internal/_map.js +1 -0
- package/build/node_modules/ramda/es/internal/_nth.js +1 -0
- package/build/node_modules/ramda/es/internal/_objectIs.js +1 -0
- package/build/node_modules/ramda/es/internal/_path.js +1 -0
- package/build/node_modules/ramda/es/internal/_prop.js +1 -0
- package/build/node_modules/ramda/es/internal/_reduced.js +1 -0
- package/build/node_modules/ramda/es/internal/_xfBase.js +1 -0
- package/build/node_modules/ramda/es/internal/_xfindIndex.js +1 -0
- package/build/node_modules/ramda/es/internal/_xmap.js +1 -0
- package/build/node_modules/ramda/es/isNil.js +1 -0
- package/build/node_modules/ramda/es/keys.js +1 -0
- package/build/node_modules/ramda/es/lens.js +1 -0
- package/build/node_modules/ramda/es/lensPath.js +1 -0
- package/build/node_modules/ramda/es/map.js +1 -0
- package/build/node_modules/ramda/es/over.js +1 -0
- package/build/node_modules/ramda/es/path.js +1 -0
- package/build/node_modules/ramda/es/prop.js +1 -0
- package/build/node_modules/ramda/es/propEq.js +1 -0
- package/build/node_modules/ramda/es/remove.js +1 -0
- package/build/node_modules/ramda/es/set.js +1 -0
- package/build/node_modules/ramda/es/type.js +1 -0
- package/build/node_modules/tslib/tslib.es6.js +1 -0
- package/build/public.index.d.ts +108 -0
- package/build/sdk-react/src/Cache.js +1 -0
- package/build/sdk-react/src/WorkspaceProvider.js +1 -0
- package/build/sdk-react/src/asyncStatus.js +1 -0
- package/build/sdk-react/src/public.index.js +1 -0
- package/build/sdk-react/src/removeBy.js +1 -0
- package/build/sdk-react/src/replaceBy.js +1 -0
- package/build/sdk-react/src/useApiTokens.js +1 -0
- package/build/sdk-react/src/useAuthentication.js +1 -0
- package/build/sdk-react/src/useQuery.js +1 -0
- package/build/sdk-react/src/useResource.js +1 -0
- package/build/sdk-react/src/useResourceTemplate.js +1 -0
- package/build/sdk-react/src/useResources.js +1 -0
- package/build/sdk-react/src/useSdk.js +1 -0
- package/build/sdk-react/src/useUser.js +1 -0
- package/build/sdk-react/src/useUsers.js +1 -0
- package/build/sdk-react/src/useWorkspace.js +1 -0
- package/build/sdk-react/src/useWorkspaces.js +1 -0
- package/build/types/Cache.d.ts +10 -0
- package/build/types/WorkspaceProvider.d.ts +7 -0
- package/build/types/asyncStatus.d.ts +6 -0
- package/build/types/public.index.d.ts +13 -0
- package/build/types/removeBy.d.ts +1 -0
- package/build/types/replaceBy.d.ts +1 -0
- package/build/types/useApiTokens.d.ts +10 -0
- package/build/types/useAuthentication.d.ts +16 -0
- package/build/types/useQuery.d.ts +4 -0
- package/build/types/useResource.d.ts +8 -0
- package/build/types/useResourceTemplate.d.ts +1 -0
- package/build/types/useResources.d.ts +15 -0
- package/build/types/useSdk.d.ts +1 -0
- package/build/types/useUser.d.ts +5 -0
- package/build/types/useUsers.d.ts +5 -0
- package/build/types/useWorkspace.d.ts +7 -0
- package/build/types/useWorkspaces.d.ts +6 -0
- package/package.json +6 -2
- package/CHANGELOG.md +0 -155
- package/rollup.config.js +0 -44
- package/src/Cache.tsx +0 -76
- package/src/WorkspaceProvider.tsx +0 -27
- package/src/asyncStatus.ts +0 -6
- package/src/public.index.ts +0 -13
- package/src/removeBy.js +0 -7
- package/src/replaceBy.js +0 -6
- package/src/useApiTokens.ts +0 -63
- package/src/useAuthentication.ts +0 -105
- package/src/useQuery.ts +0 -49
- package/src/useResource.ts +0 -91
- package/src/useResourceTemplate.ts +0 -8
- package/src/useResources.ts +0 -163
- package/src/useSdk.ts +0 -7
- package/src/useUser.ts +0 -55
- package/src/useUsers.ts +0 -38
- package/src/useWorkspace.ts +0 -67
- package/src/useWorkspaces.ts +0 -49
- package/tsconfig.json +0 -27
package/CHANGELOG.md
DELETED
|
@@ -1,155 +0,0 @@
|
|
|
1
|
-
# Change Log
|
|
2
|
-
|
|
3
|
-
All notable changes to this project will be documented in this file.
|
|
4
|
-
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
|
-
|
|
6
|
-
## 0.1.3 (2025-10-31)
|
|
7
|
-
|
|
8
|
-
**Note:** Version bump only for package @ossy/sdk-react
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
## 0.1.2 (2025-10-31)
|
|
15
|
-
|
|
16
|
-
**Note:** Version bump only for package @ossy/sdk-react
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
## 0.1.1 (2025-10-31)
|
|
23
|
-
|
|
24
|
-
**Note:** Version bump only for package @ossy/sdk-react
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
# 0.1.0 (2025-10-30)
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
### Features
|
|
34
|
-
|
|
35
|
-
* **sdk:** get current workspace ([#4](https://github.com/ossy-se/packages/issues/4)) ([afce7d5](https://github.com/ossy-se/packages/commit/afce7d5787af42691f62c9eba672ea1be000e19e))
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
## 0.0.16 (2025-10-30)
|
|
42
|
-
|
|
43
|
-
**Note:** Version bump only for package @ossy/sdk-react
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
## 0.0.15 (2025-10-27)
|
|
50
|
-
|
|
51
|
-
**Note:** Version bump only for package @ossy/sdk-react
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
## 0.0.14 (2025-10-27)
|
|
58
|
-
|
|
59
|
-
**Note:** Version bump only for package @ossy/sdk-react
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
## 0.0.13 (2025-10-27)
|
|
66
|
-
|
|
67
|
-
**Note:** Version bump only for package @ossy/sdk-react
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
## 0.0.12 (2025-10-27)
|
|
74
|
-
|
|
75
|
-
**Note:** Version bump only for package @ossy/sdk-react
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
## 0.0.11 (2025-10-27)
|
|
82
|
-
|
|
83
|
-
**Note:** Version bump only for package @ossy/sdk-react
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
## 0.0.10 (2025-10-25)
|
|
90
|
-
|
|
91
|
-
**Note:** Version bump only for package @ossy/sdk-react
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
## 0.0.9 (2025-10-25)
|
|
98
|
-
|
|
99
|
-
**Note:** Version bump only for package @ossy/sdk-react
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
## 0.0.8 (2025-10-25)
|
|
106
|
-
|
|
107
|
-
**Note:** Version bump only for package @ossy/sdk-react
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
## 0.0.7 (2025-10-25)
|
|
114
|
-
|
|
115
|
-
**Note:** Version bump only for package @ossy/sdk-react
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
## 0.0.6 (2025-10-25)
|
|
122
|
-
|
|
123
|
-
**Note:** Version bump only for package @ossy/sdk-react
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
## 0.0.5 (2025-10-25)
|
|
130
|
-
|
|
131
|
-
**Note:** Version bump only for package @ossy/sdk-react
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
## 0.0.4 (2025-10-25)
|
|
138
|
-
|
|
139
|
-
**Note:** Version bump only for package @ossy/sdk-react
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
## 0.0.3 (2025-10-25)
|
|
146
|
-
|
|
147
|
-
**Note:** Version bump only for package @ossy/sdk-react
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
## 0.0.2 (2025-10-25)
|
|
154
|
-
|
|
155
|
-
**Note:** Version bump only for package @ossy/sdk-react
|
package/rollup.config.js
DELETED
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import babel from '@rollup/plugin-babel'
|
|
2
|
-
import { nodeResolve as resolveDependencies } from '@rollup/plugin-node-resolve'
|
|
3
|
-
import resolveCommonJsDependencies from '@rollup/plugin-commonjs'
|
|
4
|
-
import removeOwnPeerDependencies from 'rollup-plugin-peer-deps-external'
|
|
5
|
-
import minifyJS from '@rollup/plugin-terser'
|
|
6
|
-
import typescript from '@rollup/plugin-typescript'
|
|
7
|
-
import preserveDirectives from "rollup-plugin-preserve-directives"
|
|
8
|
-
import { dts } from "rollup-plugin-dts"
|
|
9
|
-
import pkg from './package.json' with { type: 'json' };
|
|
10
|
-
|
|
11
|
-
export default [
|
|
12
|
-
{
|
|
13
|
-
input: pkg.source,
|
|
14
|
-
output: [
|
|
15
|
-
{
|
|
16
|
-
dir: 'build',
|
|
17
|
-
preserveModules: true,
|
|
18
|
-
format: 'esm'
|
|
19
|
-
}
|
|
20
|
-
],
|
|
21
|
-
plugins: [
|
|
22
|
-
resolveCommonJsDependencies(),
|
|
23
|
-
resolveDependencies(),
|
|
24
|
-
removeOwnPeerDependencies(),
|
|
25
|
-
babel({
|
|
26
|
-
exclude: ['**/node_modules/**/*'],
|
|
27
|
-
presets: ['@babel/preset-react']
|
|
28
|
-
}),
|
|
29
|
-
minifyJS(),
|
|
30
|
-
preserveDirectives(),
|
|
31
|
-
typescript({
|
|
32
|
-
tsconfig: "./tsconfig.json",
|
|
33
|
-
outDir: 'build',
|
|
34
|
-
}),
|
|
35
|
-
]
|
|
36
|
-
},
|
|
37
|
-
{
|
|
38
|
-
input: "build/types/public.index.d.ts",
|
|
39
|
-
output: [{ file: "build/public.index.d.ts", format: "es" }],
|
|
40
|
-
plugins: [
|
|
41
|
-
dts()
|
|
42
|
-
],
|
|
43
|
-
},
|
|
44
|
-
]
|
package/src/Cache.tsx
DELETED
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
import React, {
|
|
2
|
-
createContext,
|
|
3
|
-
useReducer,
|
|
4
|
-
useContext,
|
|
5
|
-
useCallback
|
|
6
|
-
} from 'react'
|
|
7
|
-
|
|
8
|
-
const getInitialState = () => ({})
|
|
9
|
-
export const CacheContext = createContext<any>({})
|
|
10
|
-
|
|
11
|
-
const Actions = {
|
|
12
|
-
Set: 'SET'
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
const createReducer = ({ set, get }: { set: any, get: any }) => (
|
|
16
|
-
state = getInitialState(),
|
|
17
|
-
action: any
|
|
18
|
-
) => {
|
|
19
|
-
switch (action.type) {
|
|
20
|
-
|
|
21
|
-
case Actions.Set: {
|
|
22
|
-
let data
|
|
23
|
-
|
|
24
|
-
if (typeof action.data === 'function') {
|
|
25
|
-
const previousValue = get(action.cachePath, state)
|
|
26
|
-
data = action.data(previousValue)
|
|
27
|
-
} else {
|
|
28
|
-
data = action.data
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
return set(action.cachePath, data, state)
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
default:
|
|
35
|
-
return ({ ...state })
|
|
36
|
-
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
export const createCache = ({ get: _get, set: _set }: { get: any, set: any}) => (props: any) => {
|
|
41
|
-
|
|
42
|
-
const [state, updateState] = useReducer(
|
|
43
|
-
createReducer({ set: _set, get: _get }),
|
|
44
|
-
getInitialState()
|
|
45
|
-
)
|
|
46
|
-
|
|
47
|
-
const set = useCallback((cachePath: any) => (data: any) => {
|
|
48
|
-
updateState({ type: Actions.Set, cachePath, data })
|
|
49
|
-
}, [updateState])
|
|
50
|
-
|
|
51
|
-
const get = useCallback((cachePath: any) =>
|
|
52
|
-
_get(cachePath, state),
|
|
53
|
-
[state, _get]
|
|
54
|
-
)
|
|
55
|
-
|
|
56
|
-
return (
|
|
57
|
-
<CacheContext.Provider value={{ get, set }} {...props} />
|
|
58
|
-
)
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
export const useCache = (cachePath: any, defaultValue?: any) => {
|
|
62
|
-
// TODO: Add default value to context here, otherwise it will be undefined in the set((data) => { ... }) function
|
|
63
|
-
const { get, set } = useContext(CacheContext)
|
|
64
|
-
|
|
65
|
-
const getData = () => {
|
|
66
|
-
const data = get(cachePath)
|
|
67
|
-
return data === undefined || data === null
|
|
68
|
-
? defaultValue
|
|
69
|
-
: data
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
return ({
|
|
73
|
-
data: getData(),
|
|
74
|
-
set: set(cachePath)
|
|
75
|
-
})
|
|
76
|
-
}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import React, { createContext, PropsWithChildren } from 'react'
|
|
2
|
-
import { createCache } from './Cache'
|
|
3
|
-
import { path, set, lensPath } from 'ramda'
|
|
4
|
-
import { type SDK } from '@ossy/sdk'
|
|
5
|
-
|
|
6
|
-
export const Context = createContext<Config>({} as Config)
|
|
7
|
-
|
|
8
|
-
const Cache = createCache({
|
|
9
|
-
get: path,
|
|
10
|
-
set: (path: any, value: any, data: any) => set(lensPath(path), value, data)
|
|
11
|
-
})
|
|
12
|
-
|
|
13
|
-
export interface Config {
|
|
14
|
-
sdk: SDK
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
export const WorkspaceProvider = ({ sdk, children }: PropsWithChildren<Config>) => {
|
|
18
|
-
return (
|
|
19
|
-
<Cache>
|
|
20
|
-
<Context.Provider value={{ sdk }}>
|
|
21
|
-
{children}
|
|
22
|
-
</Context.Provider>
|
|
23
|
-
</Cache>
|
|
24
|
-
)
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
|
package/src/asyncStatus.ts
DELETED
package/src/public.index.ts
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
export * from './asyncStatus'
|
|
2
|
-
export * from './useApiTokens'
|
|
3
|
-
export * from './useAuthentication'
|
|
4
|
-
export * from './useWorkspace'
|
|
5
|
-
export * from './useWorkspaces'
|
|
6
|
-
export * from './useQuery'
|
|
7
|
-
export * from './useResource'
|
|
8
|
-
export * from './useResourceTemplate'
|
|
9
|
-
export * from './useResources'
|
|
10
|
-
export * from './WorkspaceProvider'
|
|
11
|
-
export * from './useSdk'
|
|
12
|
-
export * from './useUser'
|
|
13
|
-
export * from './useUsers'
|
package/src/removeBy.js
DELETED
package/src/replaceBy.js
DELETED
package/src/useApiTokens.ts
DELETED
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import { useCallback, useEffect } from 'react'
|
|
2
|
-
import { useCache } from './Cache'
|
|
3
|
-
import { AsyncStatus } from './asyncStatus'
|
|
4
|
-
import { useSdk } from './useSdk'
|
|
5
|
-
import { removeBy } from './removeBy'
|
|
6
|
-
|
|
7
|
-
const statusPath = ['apiTokens', 'status']
|
|
8
|
-
const dataPath = ['apiTokens', 'data']
|
|
9
|
-
|
|
10
|
-
export const useApiTokens = () => {
|
|
11
|
-
const sdk = useSdk()
|
|
12
|
-
|
|
13
|
-
const {
|
|
14
|
-
data: status = AsyncStatus.NotInitialized,
|
|
15
|
-
set: setStatus
|
|
16
|
-
} = useCache(statusPath)
|
|
17
|
-
|
|
18
|
-
const {
|
|
19
|
-
data: tokens = [],
|
|
20
|
-
set: setTokens
|
|
21
|
-
} = useCache(dataPath)
|
|
22
|
-
|
|
23
|
-
const createApiToken = useCallback(
|
|
24
|
-
(token: {
|
|
25
|
-
name: string;
|
|
26
|
-
description: string;
|
|
27
|
-
expiresAt: string;
|
|
28
|
-
}) => sdk.apiTokens.create(token)
|
|
29
|
-
.then((token: any) => {
|
|
30
|
-
setTokens((tokens: any[]) => [...tokens, token])
|
|
31
|
-
return token
|
|
32
|
-
}),
|
|
33
|
-
[sdk]
|
|
34
|
-
)
|
|
35
|
-
|
|
36
|
-
const invalidateApiToken = useCallback(
|
|
37
|
-
(id: string) => sdk.apiTokens.invalidate({ id })
|
|
38
|
-
.then(() => setTokens((tokens: any[]) => removeBy('id', id, tokens))),
|
|
39
|
-
[sdk]
|
|
40
|
-
)
|
|
41
|
-
|
|
42
|
-
const loadApiTokens = useCallback(() => {
|
|
43
|
-
setStatus(AsyncStatus.Loading)
|
|
44
|
-
sdk.apiTokens.list()
|
|
45
|
-
.then((tokens: any[]) => {
|
|
46
|
-
setTokens(tokens)
|
|
47
|
-
setStatus(AsyncStatus.Success)
|
|
48
|
-
})
|
|
49
|
-
.catch(() => { setStatus(AsyncStatus.Error) })
|
|
50
|
-
}, [sdk])
|
|
51
|
-
|
|
52
|
-
useEffect(() => {
|
|
53
|
-
if (status !== AsyncStatus.NotInitialized) return
|
|
54
|
-
loadApiTokens()
|
|
55
|
-
}, [status])
|
|
56
|
-
|
|
57
|
-
return {
|
|
58
|
-
status,
|
|
59
|
-
tokens,
|
|
60
|
-
createApiToken,
|
|
61
|
-
invalidateApiToken,
|
|
62
|
-
}
|
|
63
|
-
}
|
package/src/useAuthentication.ts
DELETED
|
@@ -1,105 +0,0 @@
|
|
|
1
|
-
import { useCallback, useEffect } from 'react'
|
|
2
|
-
import { useCache } from './Cache'
|
|
3
|
-
import { useSdk } from './useSdk'
|
|
4
|
-
|
|
5
|
-
export const AuthenticationStatus = {
|
|
6
|
-
AuthenticationError: 'AuthenticationError',
|
|
7
|
-
NotInitialized: 'NotInitialized',
|
|
8
|
-
NotAuthenticated: 'NotAuthenticated',
|
|
9
|
-
Verifying: 'Verifying',
|
|
10
|
-
Authenticated: 'Authenticated',
|
|
11
|
-
VerifySignIn: 'VerifySignIn'
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
const statusPath = ['auth', 'status']
|
|
15
|
-
|
|
16
|
-
export const useAuthentication = () => {
|
|
17
|
-
const sdk = useSdk()
|
|
18
|
-
|
|
19
|
-
const {
|
|
20
|
-
data: status = AuthenticationStatus.NotInitialized,
|
|
21
|
-
set: setStatus
|
|
22
|
-
} = useCache(statusPath)
|
|
23
|
-
|
|
24
|
-
const signUp = useCallback(
|
|
25
|
-
(email: string) => {
|
|
26
|
-
setStatus(() => AuthenticationStatus.Verifying)
|
|
27
|
-
return sdk.auth.signUp({ email })
|
|
28
|
-
.then(() => setStatus(AuthenticationStatus.VerifySignIn))
|
|
29
|
-
.catch((error: any) => {
|
|
30
|
-
setStatus(AuthenticationStatus.AuthenticationError)
|
|
31
|
-
return Promise.reject(error)
|
|
32
|
-
})
|
|
33
|
-
},
|
|
34
|
-
[sdk]
|
|
35
|
-
)
|
|
36
|
-
|
|
37
|
-
const signIn = useCallback(
|
|
38
|
-
(email: any) => {
|
|
39
|
-
setStatus(() => AuthenticationStatus.Verifying)
|
|
40
|
-
return sdk.auth.signIn(email)
|
|
41
|
-
.then(() => setStatus(AuthenticationStatus.VerifySignIn))
|
|
42
|
-
.catch((error: any) => {
|
|
43
|
-
setStatus(AuthenticationStatus.AuthenticationError)
|
|
44
|
-
return Promise.reject(error)
|
|
45
|
-
})
|
|
46
|
-
},
|
|
47
|
-
[sdk]
|
|
48
|
-
)
|
|
49
|
-
|
|
50
|
-
const verifySignIn = useCallback(
|
|
51
|
-
(token: string) => {
|
|
52
|
-
setStatus(() => AuthenticationStatus.Verifying)
|
|
53
|
-
return sdk.auth.verifySignIn({ token })
|
|
54
|
-
.then(() => setStatus(AuthenticationStatus.Authenticated))
|
|
55
|
-
.catch((error: any) => {
|
|
56
|
-
setStatus(AuthenticationStatus.AuthenticationError)
|
|
57
|
-
return Promise.reject(error)
|
|
58
|
-
})
|
|
59
|
-
},
|
|
60
|
-
[sdk]
|
|
61
|
-
)
|
|
62
|
-
|
|
63
|
-
const verifyInvitation = useCallback(
|
|
64
|
-
(workspaceId: string, token: string) => {
|
|
65
|
-
setStatus(() => AuthenticationStatus.Verifying)
|
|
66
|
-
return sdk.auth.verifyInvitation({ workspaceId, token})
|
|
67
|
-
.then(() => setStatus(AuthenticationStatus.Authenticated))
|
|
68
|
-
.catch((error: any) => {
|
|
69
|
-
setStatus(AuthenticationStatus.AuthenticationError)
|
|
70
|
-
return Promise.reject(error)
|
|
71
|
-
})
|
|
72
|
-
},
|
|
73
|
-
[sdk]
|
|
74
|
-
)
|
|
75
|
-
|
|
76
|
-
const signOff = useCallback(
|
|
77
|
-
() => sdk.auth.signOff()
|
|
78
|
-
.then(() => setStatus(AuthenticationStatus.NotAuthenticated)),
|
|
79
|
-
[sdk]
|
|
80
|
-
)
|
|
81
|
-
|
|
82
|
-
useEffect(() => {
|
|
83
|
-
if (status !== AuthenticationStatus.NotInitialized) return
|
|
84
|
-
setStatus(() => AuthenticationStatus.Verifying)
|
|
85
|
-
|
|
86
|
-
sdk.auth.getAuthenticatedUser()
|
|
87
|
-
.then((user: any) => {
|
|
88
|
-
if (!user) return Promise.reject()
|
|
89
|
-
setStatus(() => AuthenticationStatus.Authenticated)
|
|
90
|
-
})
|
|
91
|
-
.catch(() => {
|
|
92
|
-
setStatus(() => AuthenticationStatus.NotAuthenticated)
|
|
93
|
-
})
|
|
94
|
-
|
|
95
|
-
}, [status])
|
|
96
|
-
|
|
97
|
-
return {
|
|
98
|
-
status,
|
|
99
|
-
signUp,
|
|
100
|
-
signIn,
|
|
101
|
-
signOff,
|
|
102
|
-
verifySignIn,
|
|
103
|
-
verifyInvitation
|
|
104
|
-
}
|
|
105
|
-
}
|
package/src/useQuery.ts
DELETED
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { useCallback, useMemo, useEffect } from 'react'
|
|
2
|
-
import { useCache } from './Cache'
|
|
3
|
-
import { AsyncStatus } from './asyncStatus'
|
|
4
|
-
import { useSdk } from './useSdk'
|
|
5
|
-
|
|
6
|
-
export const useQuery = (incomingQuery: any) => {
|
|
7
|
-
const sdk = useSdk()
|
|
8
|
-
const workspaceId = sdk.workspaceId
|
|
9
|
-
const queryString = new URLSearchParams(incomingQuery).toString()
|
|
10
|
-
|
|
11
|
-
const statusCachePath = useMemo(
|
|
12
|
-
() => [workspaceId, 'queries', queryString, 'status'],
|
|
13
|
-
[workspaceId, queryString]
|
|
14
|
-
)
|
|
15
|
-
|
|
16
|
-
const dataCachePath = useMemo(
|
|
17
|
-
() => [workspaceId, 'queries', queryString, 'data'],
|
|
18
|
-
[workspaceId, queryString]
|
|
19
|
-
)
|
|
20
|
-
|
|
21
|
-
const {
|
|
22
|
-
data: status,
|
|
23
|
-
set: setStatus
|
|
24
|
-
} = useCache(statusCachePath, AsyncStatus.NotInitialized)
|
|
25
|
-
|
|
26
|
-
const {
|
|
27
|
-
data: resources,
|
|
28
|
-
set: setResources
|
|
29
|
-
} = useCache(dataCachePath, [])
|
|
30
|
-
|
|
31
|
-
const loadResources = useCallback((query: any) => {
|
|
32
|
-
setStatus(AsyncStatus.Loading)
|
|
33
|
-
sdk.resources.get(query)
|
|
34
|
-
.then((resources: any) => {
|
|
35
|
-
setStatus(AsyncStatus.Success)
|
|
36
|
-
setResources(resources)
|
|
37
|
-
})
|
|
38
|
-
.catch(() => { setStatus(AsyncStatus.Error) })
|
|
39
|
-
}, [sdk])
|
|
40
|
-
|
|
41
|
-
useEffect(() => {
|
|
42
|
-
if (!workspaceId) return
|
|
43
|
-
if (!incomingQuery) return
|
|
44
|
-
if (status !== AsyncStatus.NotInitialized) return
|
|
45
|
-
loadResources(incomingQuery)
|
|
46
|
-
}, [workspaceId, incomingQuery, status])
|
|
47
|
-
|
|
48
|
-
return { status, resources }
|
|
49
|
-
}
|
package/src/useResource.ts
DELETED
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
import { useCallback, useMemo, useEffect } from 'react'
|
|
2
|
-
import { useCache } from './Cache'
|
|
3
|
-
import { AsyncStatus } from './asyncStatus'
|
|
4
|
-
import { useResources } from './useResources'
|
|
5
|
-
import { useSdk } from './useSdk'
|
|
6
|
-
|
|
7
|
-
export const useResource = (id: string) => {
|
|
8
|
-
const sdk = useSdk()
|
|
9
|
-
const workspaceId = sdk.workspaceId
|
|
10
|
-
|
|
11
|
-
const statusCachePath = useMemo(
|
|
12
|
-
() => ['resource', workspaceId, id, 'status'],
|
|
13
|
-
[id, workspaceId]
|
|
14
|
-
)
|
|
15
|
-
|
|
16
|
-
const dataCachePath = useMemo(
|
|
17
|
-
() => ['resource', workspaceId, id, 'data'],
|
|
18
|
-
[id, workspaceId]
|
|
19
|
-
)
|
|
20
|
-
|
|
21
|
-
const {
|
|
22
|
-
data: status = AsyncStatus.NotInitialized,
|
|
23
|
-
set: setStatus
|
|
24
|
-
} = useCache(statusCachePath)
|
|
25
|
-
|
|
26
|
-
const {
|
|
27
|
-
data: resource = {},
|
|
28
|
-
set: setResource
|
|
29
|
-
} = useCache(dataCachePath)
|
|
30
|
-
|
|
31
|
-
const {
|
|
32
|
-
loadResource: _loadResource,
|
|
33
|
-
removeResource: _removeResource,
|
|
34
|
-
updateResourceContent: _updateResourceContent,
|
|
35
|
-
renameResource: _renameResource
|
|
36
|
-
} = useResources()
|
|
37
|
-
|
|
38
|
-
const loadResource = useCallback(() => {
|
|
39
|
-
setStatus(AsyncStatus.Loading)
|
|
40
|
-
setResource({})
|
|
41
|
-
_loadResource(id)
|
|
42
|
-
.then((resource: any) => {
|
|
43
|
-
setStatus(AsyncStatus.Success)
|
|
44
|
-
setResource(resource)
|
|
45
|
-
})
|
|
46
|
-
.catch(() => {
|
|
47
|
-
setStatus(AsyncStatus.Error)
|
|
48
|
-
setResource({})
|
|
49
|
-
})
|
|
50
|
-
}, [id, _loadResource])
|
|
51
|
-
|
|
52
|
-
const removeResource = useCallback(
|
|
53
|
-
() => _removeResource(id)
|
|
54
|
-
.then(() => {
|
|
55
|
-
setStatus(AsyncStatus.NotInitialized)
|
|
56
|
-
setResource({})
|
|
57
|
-
}),
|
|
58
|
-
[id, _removeResource]
|
|
59
|
-
)
|
|
60
|
-
|
|
61
|
-
const updateResourceContent = useCallback(
|
|
62
|
-
(content: any) => _updateResourceContent(id, content)
|
|
63
|
-
.then((resource: any) => setResource(resource)),
|
|
64
|
-
[id, _updateResourceContent]
|
|
65
|
-
)
|
|
66
|
-
|
|
67
|
-
const renameResource = useCallback(
|
|
68
|
-
(name: string) => _renameResource(id, name)
|
|
69
|
-
.then((resource: any) => setResource(resource)),
|
|
70
|
-
[id, _renameResource]
|
|
71
|
-
)
|
|
72
|
-
|
|
73
|
-
useEffect(() => {
|
|
74
|
-
|
|
75
|
-
if (!workspaceId) return
|
|
76
|
-
if (!id) return
|
|
77
|
-
if (status !== AsyncStatus.NotInitialized) return
|
|
78
|
-
|
|
79
|
-
loadResource()
|
|
80
|
-
|
|
81
|
-
}, [workspaceId, id, loadResource])
|
|
82
|
-
|
|
83
|
-
return {
|
|
84
|
-
status,
|
|
85
|
-
resource,
|
|
86
|
-
loadResource,
|
|
87
|
-
removeResource,
|
|
88
|
-
updateResourceContent,
|
|
89
|
-
renameResource
|
|
90
|
-
}
|
|
91
|
-
}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { useWorkspace } from './useWorkspace'
|
|
2
|
-
|
|
3
|
-
export const useResourceTemplate = (id: string) => {
|
|
4
|
-
const { workspace } = useWorkspace()
|
|
5
|
-
// TODO: workspace.resourceTemplates might not exist yet
|
|
6
|
-
const template = workspace.resourceTemplates.find((template: { id: string }) => template.id === id)
|
|
7
|
-
return template
|
|
8
|
-
}
|