@nualang/nualang-ui-components 0.1.1177 → 0.1.1178
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/Dialogs/InactivePopover/InactivePopover.js +1 -1
- package/dist/Editors/Bot/Bot.js +1 -1
- package/dist/Editors/Roleplay/Roleplay.js +1 -1
- package/dist/Live/GameSettings/GameSettings.js +1 -1
- package/dist/Misc/ImageLibrary/ImageLibrary.js +1 -1
- package/dist/Screens/Bots/SearchBots/SearchBots.js +1 -1
- package/dist/Screens/Classrooms/SearchClassrooms/SearchClassrooms.js +1 -1
- package/dist/Screens/Courses/SearchCourses/SearchCourses.js +1 -1
- package/dist/Screens/Roleplays/SearchRoleplays/SearchRoleplays.js +1 -1
- package/dist/Screens/Search/Search.js +1 -1
- package/package.json +1 -1
- package/dist/hooks/querys/avatars.js +0 -20
- package/dist/hooks/querys/bots.js +0 -153
- package/dist/hooks/querys/classrooms.js +0 -260
- package/dist/hooks/querys/completions.js +0 -199
- package/dist/hooks/querys/courses.js +0 -750
- package/dist/hooks/querys/games.js +0 -169
- package/dist/hooks/querys/index.js +0 -43
- package/dist/hooks/querys/progress.js +0 -240
- package/dist/hooks/querys/roleplays.js +0 -153
- package/dist/hooks/querys/users.js +0 -63
- package/dist/utils/hooks/useWidth.js +0 -25
- package/dist/utils/hooks/useWindowResize.js +0 -21
- /package/dist/{utils/hooks → hooks}/useDebounce.js +0 -0
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
8
|
-
var _useDebounce = _interopRequireDefault(require("../../
|
|
8
|
+
var _useDebounce = _interopRequireDefault(require("../../hooks/useDebounce"));
|
|
9
9
|
var _Popover = _interopRequireDefault(require("@mui/material/Popover"));
|
|
10
10
|
var _mui = require("tss-react/mui");
|
|
11
11
|
var _Typography = _interopRequireDefault(require("@mui/material/Typography"));
|
package/dist/Editors/Bot/Bot.js
CHANGED
|
@@ -28,7 +28,7 @@ var _Chat = _interopRequireDefault(require("../../Chat"));
|
|
|
28
28
|
var _UpdateBot = _interopRequireDefault(require("../../Forms/UpdateBot"));
|
|
29
29
|
var _Tutorial = _interopRequireDefault(require("./Tutorial"));
|
|
30
30
|
var _index = require("../../utils/index");
|
|
31
|
-
var _useDebounce = _interopRequireDefault(require("../../
|
|
31
|
+
var _useDebounce = _interopRequireDefault(require("../../hooks/useDebounce"));
|
|
32
32
|
var _useRecognition = _interopRequireDefault(require("../../hooks/useRecognition"));
|
|
33
33
|
var _constants = require("../../utils/constants");
|
|
34
34
|
var _useExerciseState = _interopRequireDefault(require("../../hooks/useExerciseState"));
|
|
@@ -24,7 +24,7 @@ var _Chat = _interopRequireDefault(require("../../Chat"));
|
|
|
24
24
|
var _UpdateRoleplay = _interopRequireDefault(require("../../Forms/UpdateRoleplay"));
|
|
25
25
|
var _CreateQuestion = _interopRequireDefault(require("../../Dialogs/CreateQuestion"));
|
|
26
26
|
var _GenerateRoleplay = _interopRequireDefault(require("../../Dialogs/GenerateRoleplay"));
|
|
27
|
-
var _useDebounce = _interopRequireDefault(require("../../
|
|
27
|
+
var _useDebounce = _interopRequireDefault(require("../../hooks/useDebounce"));
|
|
28
28
|
var _useRecognition = _interopRequireDefault(require("../../hooks/useRecognition"));
|
|
29
29
|
var _useExerciseState = _interopRequireDefault(require("../../hooks/useExerciseState"));
|
|
30
30
|
var _useConfirm = _interopRequireDefault(require("../../hooks/useConfirm"));
|
|
@@ -7,7 +7,7 @@ exports.default = GameSettings;
|
|
|
7
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _material = require("@mui/material");
|
|
9
9
|
var _SwipeableDrawer = _interopRequireDefault(require("@mui/material/SwipeableDrawer"));
|
|
10
|
-
var _useDebounce = _interopRequireDefault(require("../../
|
|
10
|
+
var _useDebounce = _interopRequireDefault(require("../../hooks/useDebounce"));
|
|
11
11
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
12
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
13
13
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
@@ -10,7 +10,7 @@ var _mui = require("tss-react/mui");
|
|
|
10
10
|
var _Skeleton = _interopRequireDefault(require("@mui/material/Skeleton"));
|
|
11
11
|
var _Search = _interopRequireDefault(require("@mui/icons-material/Search"));
|
|
12
12
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
13
|
-
var _useDebounce = _interopRequireDefault(require("../../
|
|
13
|
+
var _useDebounce = _interopRequireDefault(require("../../hooks/useDebounce"));
|
|
14
14
|
var _reactInfiniteScroller = _interopRequireDefault(require("react-infinite-scroller"));
|
|
15
15
|
var _styles = require("@mui/material/styles");
|
|
16
16
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
@@ -15,7 +15,7 @@ var _LanguageSelector = _interopRequireDefault(require("../../../Forms/LanguageS
|
|
|
15
15
|
var _SortBySelector = _interopRequireDefault(require("../../../Forms/SortBySelector/SortBySelector"));
|
|
16
16
|
var _HideOnScroll = _interopRequireDefault(require("../../../Misc/HideOnScroll"));
|
|
17
17
|
var _Search = _interopRequireDefault(require("@mui/icons-material/Search"));
|
|
18
|
-
var _useDebounce = _interopRequireDefault(require("../../../
|
|
18
|
+
var _useDebounce = _interopRequireDefault(require("../../../hooks/useDebounce"));
|
|
19
19
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
20
20
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
21
21
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
@@ -15,7 +15,7 @@ var _InfiniteScroll = _interopRequireDefault(require("../../../Misc/InfiniteScro
|
|
|
15
15
|
var _LanguageSelector = _interopRequireDefault(require("../../../Forms/LanguageSelector/LanguageSelector"));
|
|
16
16
|
var _UpgradeSubscription = _interopRequireDefault(require("../../../Dialogs/UpgradeSubscription/UpgradeSubscription"));
|
|
17
17
|
var _HideOnScroll = _interopRequireDefault(require("../../../Misc/HideOnScroll"));
|
|
18
|
-
var _useDebounce = _interopRequireDefault(require("../../../
|
|
18
|
+
var _useDebounce = _interopRequireDefault(require("../../../hooks/useDebounce"));
|
|
19
19
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
20
20
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
21
21
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
@@ -14,7 +14,7 @@ var _LanguageSelector = _interopRequireDefault(require("../../../Forms/LanguageS
|
|
|
14
14
|
var _HideOnScroll = _interopRequireDefault(require("../../../Misc/HideOnScroll"));
|
|
15
15
|
var _SortBySelector = _interopRequireDefault(require("../../../Forms/SortBySelector/SortBySelector"));
|
|
16
16
|
var _Search = _interopRequireDefault(require("@mui/icons-material/Search"));
|
|
17
|
-
var _useDebounce = _interopRequireDefault(require("../../../
|
|
17
|
+
var _useDebounce = _interopRequireDefault(require("../../../hooks/useDebounce"));
|
|
18
18
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
19
19
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
20
20
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
@@ -14,7 +14,7 @@ var _LanguageSelector = _interopRequireDefault(require("../../../Forms/LanguageS
|
|
|
14
14
|
var _HideOnScroll = _interopRequireDefault(require("../../../Misc/HideOnScroll"));
|
|
15
15
|
var _SortBySelector = _interopRequireDefault(require("../../../Forms/SortBySelector/SortBySelector"));
|
|
16
16
|
var _Search = _interopRequireDefault(require("@mui/icons-material/Search"));
|
|
17
|
-
var _useDebounce = _interopRequireDefault(require("../../../
|
|
17
|
+
var _useDebounce = _interopRequireDefault(require("../../../hooks/useDebounce"));
|
|
18
18
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
19
19
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
20
20
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
@@ -12,7 +12,7 @@ var _Courses2 = _interopRequireDefault(require("../../Misc/NotFound/Courses"));
|
|
|
12
12
|
var _LanguageSelector = _interopRequireDefault(require("../../Forms/LanguageSelector/LanguageSelector"));
|
|
13
13
|
var _HideOnScroll = _interopRequireDefault(require("../../Misc/HideOnScroll"));
|
|
14
14
|
var _SortBySelector = _interopRequireDefault(require("../../Forms/SortBySelector/SortBySelector"));
|
|
15
|
-
var _useDebounce = _interopRequireDefault(require("../../
|
|
15
|
+
var _useDebounce = _interopRequireDefault(require("../../hooks/useDebounce"));
|
|
16
16
|
var _reactRouterDom = require("react-router-dom");
|
|
17
17
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
18
18
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
package/package.json
CHANGED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.avatarKeys = void 0;
|
|
7
|
-
exports.useAvatars = useAvatars;
|
|
8
|
-
var _Queries = require("@nualang/nualang-api-and-queries/Queries");
|
|
9
|
-
const avatarKeys = exports.avatarKeys = {
|
|
10
|
-
all: ["avatars"],
|
|
11
|
-
lists: () => [...avatarKeys.all, "list"],
|
|
12
|
-
list: () => [...avatarKeys.lists()]
|
|
13
|
-
};
|
|
14
|
-
function useAvatars(func, args, queryOptions = {}) {
|
|
15
|
-
return (0, _Queries.useQuery)({
|
|
16
|
-
queryKey: avatarKeys.list(),
|
|
17
|
-
queryFn: () => func(),
|
|
18
|
-
...queryOptions
|
|
19
|
-
});
|
|
20
|
-
}
|
|
@@ -1,153 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.botKeys = void 0;
|
|
7
|
-
exports.useBot = useBot;
|
|
8
|
-
exports.useBots = useBots;
|
|
9
|
-
exports.useCreateBot = useCreateBot;
|
|
10
|
-
exports.useDeleteBot = useDeleteBot;
|
|
11
|
-
exports.useDuplicateBot = useDuplicateBot;
|
|
12
|
-
exports.useUpdateBot = useUpdateBot;
|
|
13
|
-
var _Queries = require("@nualang/nualang-api-and-queries/Queries");
|
|
14
|
-
const botKeys = exports.botKeys = {
|
|
15
|
-
all: ["bots"],
|
|
16
|
-
lists: () => [...botKeys.all, "list"],
|
|
17
|
-
list: filters => [...botKeys.lists(), {
|
|
18
|
-
filters
|
|
19
|
-
}],
|
|
20
|
-
items: () => [...botKeys.all, "item"],
|
|
21
|
-
item: botId => [...botKeys.items(), botId]
|
|
22
|
-
};
|
|
23
|
-
function useBot(func, args, queryOptions = {}) {
|
|
24
|
-
return (0, _Queries.useQuery)({
|
|
25
|
-
queryKey: botKeys.item(args.botId),
|
|
26
|
-
queryFn: () => func(args.botId),
|
|
27
|
-
...queryOptions
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
function useBots(func, args, queryOptions = {}) {
|
|
31
|
-
return (0, _Queries.useQuery)({
|
|
32
|
-
queryKey: botKeys.list(args.filters),
|
|
33
|
-
queryFn: () => func(args.filters),
|
|
34
|
-
...queryOptions
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
// Mutations
|
|
39
|
-
|
|
40
|
-
function useCreateBot(func, callbacks = {}) {
|
|
41
|
-
const queryClient = (0, _Queries.useQueryClient)();
|
|
42
|
-
return (0, _Queries.useMutation)({
|
|
43
|
-
mutationFn: variables => {
|
|
44
|
-
return func(variables.values);
|
|
45
|
-
},
|
|
46
|
-
onError: error => {
|
|
47
|
-
// An error happened!
|
|
48
|
-
console.error(error);
|
|
49
|
-
callbacks.onError && callbacks.onError(error);
|
|
50
|
-
},
|
|
51
|
-
onSuccess: data => {
|
|
52
|
-
queryClient.invalidateQueries({
|
|
53
|
-
queryKey: botKeys.lists()
|
|
54
|
-
});
|
|
55
|
-
callbacks.onSuccess && callbacks.onSuccess(data);
|
|
56
|
-
},
|
|
57
|
-
onSettled: () => {
|
|
58
|
-
callbacks.onSettled && callbacks.onSettled();
|
|
59
|
-
}
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
function useUpdateBot(func, callbacks = {}) {
|
|
63
|
-
const queryClient = (0, _Queries.useQueryClient)();
|
|
64
|
-
return (0, _Queries.useMutation)({
|
|
65
|
-
mutationFn: variables => {
|
|
66
|
-
return func(variables.botId, variables.values);
|
|
67
|
-
},
|
|
68
|
-
onMutate: async variables => {
|
|
69
|
-
// Cancel current queries for the bot details
|
|
70
|
-
await queryClient.cancelQueries({
|
|
71
|
-
queryKey: botKeys.item(variables.botId)
|
|
72
|
-
});
|
|
73
|
-
let prevState, nextState;
|
|
74
|
-
queryClient.setQueryData(botKeys.item(variables.botId), old => {
|
|
75
|
-
prevState = old;
|
|
76
|
-
nextState = {
|
|
77
|
-
...prevState,
|
|
78
|
-
...variables.values
|
|
79
|
-
};
|
|
80
|
-
return nextState;
|
|
81
|
-
});
|
|
82
|
-
return {
|
|
83
|
-
prevState,
|
|
84
|
-
nextState
|
|
85
|
-
};
|
|
86
|
-
},
|
|
87
|
-
onError: (error, variables, context) => {
|
|
88
|
-
// An error happened!
|
|
89
|
-
console.error(error);
|
|
90
|
-
console.log(`rolling back optimistic update with id ${context.id}`);
|
|
91
|
-
queryClient.setQueryData(botKeys.item(variables.botId), context.prevState);
|
|
92
|
-
callbacks.onError && callbacks.onError(error, variables, context);
|
|
93
|
-
},
|
|
94
|
-
onSuccess: (data, variables, context) => {
|
|
95
|
-
queryClient.setQueryData(botKeys.item(variables.botId), {
|
|
96
|
-
...context.prevState,
|
|
97
|
-
...data.Attributes
|
|
98
|
-
});
|
|
99
|
-
callbacks.onSuccess && callbacks.onSuccess(data, variables, context);
|
|
100
|
-
}
|
|
101
|
-
});
|
|
102
|
-
}
|
|
103
|
-
function useDeleteBot(func, callbacks = {}) {
|
|
104
|
-
const queryClient = (0, _Queries.useQueryClient)();
|
|
105
|
-
return (0, _Queries.useMutation)({
|
|
106
|
-
mutationFn: variables => {
|
|
107
|
-
if (variables.saveLibrary !== undefined) {
|
|
108
|
-
return func(variables.botId, variables.saveLibrary);
|
|
109
|
-
} else {
|
|
110
|
-
return func(variables.botId);
|
|
111
|
-
}
|
|
112
|
-
},
|
|
113
|
-
onError: error => {
|
|
114
|
-
// An error happened!
|
|
115
|
-
console.error(error);
|
|
116
|
-
callbacks.onError && callbacks.onError(error);
|
|
117
|
-
},
|
|
118
|
-
onSuccess: (data, variables) => {
|
|
119
|
-
queryClient.invalidateQueries({
|
|
120
|
-
queryKey: botKeys.lists()
|
|
121
|
-
});
|
|
122
|
-
queryClient.invalidateQueries({
|
|
123
|
-
queryKey: botKeys.item(variables.botId)
|
|
124
|
-
});
|
|
125
|
-
callbacks.onSuccess && callbacks.onSuccess(data, variables);
|
|
126
|
-
},
|
|
127
|
-
onSettled: () => {
|
|
128
|
-
callbacks.onSettled && callbacks.onSettled();
|
|
129
|
-
}
|
|
130
|
-
});
|
|
131
|
-
}
|
|
132
|
-
function useDuplicateBot(func, callbacks = {}) {
|
|
133
|
-
const queryClient = (0, _Queries.useQueryClient)();
|
|
134
|
-
return (0, _Queries.useMutation)({
|
|
135
|
-
mutationFn: variables => {
|
|
136
|
-
return func(variables.values, variables.courseId, variables.sectionId, variables.topicId);
|
|
137
|
-
},
|
|
138
|
-
onError: error => {
|
|
139
|
-
// An error happened!
|
|
140
|
-
console.error(error);
|
|
141
|
-
callbacks.onError && callbacks.onError(error);
|
|
142
|
-
},
|
|
143
|
-
onSuccess: data => {
|
|
144
|
-
queryClient.invalidateQueries({
|
|
145
|
-
queryKey: botKeys.lists()
|
|
146
|
-
});
|
|
147
|
-
callbacks.onSuccess && callbacks.onSuccess(data);
|
|
148
|
-
},
|
|
149
|
-
onSettled: () => {
|
|
150
|
-
callbacks.onSettled && callbacks.onSettled();
|
|
151
|
-
}
|
|
152
|
-
});
|
|
153
|
-
}
|
|
@@ -1,260 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.classroomKeys = void 0;
|
|
7
|
-
exports.useClassroom = useClassroom;
|
|
8
|
-
exports.useClassroomMember = useClassroomMember;
|
|
9
|
-
exports.useClassroomMembers = useClassroomMembers;
|
|
10
|
-
exports.useClassroomReviews = useClassroomReviews;
|
|
11
|
-
exports.useClassrooms = useClassrooms;
|
|
12
|
-
exports.useCreateClassroom = useCreateClassroom;
|
|
13
|
-
exports.useDeleteClassroom = useDeleteClassroom;
|
|
14
|
-
exports.useDeleteClassroomMember = useDeleteClassroomMember;
|
|
15
|
-
exports.useJoinClassroom = useJoinClassroom;
|
|
16
|
-
exports.useLeaveClassroom = useLeaveClassroom;
|
|
17
|
-
exports.useUpdateClassroom = useUpdateClassroom;
|
|
18
|
-
var _Queries = require("@nualang/nualang-api-and-queries/Queries");
|
|
19
|
-
const classroomKeys = exports.classroomKeys = {
|
|
20
|
-
all: ["classrooms"],
|
|
21
|
-
lists: () => [...classroomKeys.all, "list"],
|
|
22
|
-
list: filters => [...classroomKeys.lists(), {
|
|
23
|
-
filters
|
|
24
|
-
}],
|
|
25
|
-
items: () => [...classroomKeys.all, "item"],
|
|
26
|
-
item: (classroomId, username) => [...classroomKeys.items(), classroomId, username],
|
|
27
|
-
itemMember: (classroomId, username, memberId) => [...classroomKeys.item(classroomId, username), "member", memberId],
|
|
28
|
-
itemMembers: (classroomId, username) => [...classroomKeys.item(classroomId, username), "members"],
|
|
29
|
-
itemReviews: (classroomId, username) => [...classroomKeys.item(classroomId, username), "reviews"]
|
|
30
|
-
};
|
|
31
|
-
function useClassroom(func, args, queryOptions = {}) {
|
|
32
|
-
const {
|
|
33
|
-
classroomId,
|
|
34
|
-
username
|
|
35
|
-
} = args;
|
|
36
|
-
return (0, _Queries.useQuery)({
|
|
37
|
-
queryKey: classroomKeys.item(classroomId, username),
|
|
38
|
-
queryFn: () => func(classroomId),
|
|
39
|
-
...queryOptions
|
|
40
|
-
});
|
|
41
|
-
}
|
|
42
|
-
function useClassroomMember(func, args, queryOptions = {}) {
|
|
43
|
-
const {
|
|
44
|
-
classroomId,
|
|
45
|
-
username,
|
|
46
|
-
memberId
|
|
47
|
-
} = args;
|
|
48
|
-
return (0, _Queries.useQuery)({
|
|
49
|
-
queryKey: classroomKeys.itemMember(classroomId, username, memberId),
|
|
50
|
-
queryFn: () => func(classroomId, memberId),
|
|
51
|
-
...queryOptions
|
|
52
|
-
});
|
|
53
|
-
}
|
|
54
|
-
function useClassroomMembers(func, args, queryOptions = {}) {
|
|
55
|
-
const {
|
|
56
|
-
classroomId,
|
|
57
|
-
username
|
|
58
|
-
} = args;
|
|
59
|
-
return (0, _Queries.useQuery)({
|
|
60
|
-
queryKey: classroomKeys.itemMembers(classroomId, username),
|
|
61
|
-
queryFn: () => func(classroomId),
|
|
62
|
-
...queryOptions
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
function useClassroomReviews(func, args, queryOptions = {}) {
|
|
66
|
-
const {
|
|
67
|
-
classroomId,
|
|
68
|
-
username
|
|
69
|
-
} = args;
|
|
70
|
-
return (0, _Queries.useQuery)({
|
|
71
|
-
queryKey: classroomKeys.itemReviews(classroomId, username),
|
|
72
|
-
queryFn: () => func(classroomId),
|
|
73
|
-
...queryOptions
|
|
74
|
-
});
|
|
75
|
-
}
|
|
76
|
-
function useClassrooms(func, args, queryOptions = {}) {
|
|
77
|
-
return (0, _Queries.useQuery)({
|
|
78
|
-
queryKey: classroomKeys.list(args.filters),
|
|
79
|
-
queryFn: () => func(args.filters),
|
|
80
|
-
...queryOptions
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
// Mutations
|
|
85
|
-
|
|
86
|
-
function useCreateClassroom(func, callbacks = {}) {
|
|
87
|
-
const queryClient = (0, _Queries.useQueryClient)();
|
|
88
|
-
return (0, _Queries.useMutation)({
|
|
89
|
-
mutationFn: variables => {
|
|
90
|
-
return func(variables.values);
|
|
91
|
-
},
|
|
92
|
-
onMutate: () => {
|
|
93
|
-
callbacks.onMutate && callbacks.onMutate();
|
|
94
|
-
},
|
|
95
|
-
onError: error => {
|
|
96
|
-
console.error(error);
|
|
97
|
-
callbacks.onError && callbacks.onError(error);
|
|
98
|
-
},
|
|
99
|
-
onSuccess: data => {
|
|
100
|
-
queryClient.invalidateQueries({
|
|
101
|
-
queryKey: classroomKeys.lists()
|
|
102
|
-
});
|
|
103
|
-
callbacks.onSuccess && callbacks.onSuccess(data);
|
|
104
|
-
},
|
|
105
|
-
onSettled: () => {
|
|
106
|
-
callbacks.onSettled && callbacks.onSettled();
|
|
107
|
-
}
|
|
108
|
-
});
|
|
109
|
-
}
|
|
110
|
-
function useUpdateClassroom(func, callbacks = {}) {
|
|
111
|
-
const queryClient = (0, _Queries.useQueryClient)();
|
|
112
|
-
return (0, _Queries.useMutation)({
|
|
113
|
-
mutationFn: variables => {
|
|
114
|
-
return func(variables.classroomId, variables.values);
|
|
115
|
-
},
|
|
116
|
-
onMutate: async variables => {
|
|
117
|
-
await queryClient.cancelQueries({
|
|
118
|
-
queryKey: classroomKeys.item(variables.classroomId, variables.username)
|
|
119
|
-
});
|
|
120
|
-
let prevState, nextState;
|
|
121
|
-
queryClient.setQueryData(classroomKeys.item(variables.classroomId, variables.username), old => {
|
|
122
|
-
prevState = old;
|
|
123
|
-
nextState = {
|
|
124
|
-
...prevState,
|
|
125
|
-
...variables.values
|
|
126
|
-
};
|
|
127
|
-
return nextState;
|
|
128
|
-
});
|
|
129
|
-
return {
|
|
130
|
-
prevState,
|
|
131
|
-
nextState
|
|
132
|
-
};
|
|
133
|
-
},
|
|
134
|
-
onError: (error, variables, context) => {
|
|
135
|
-
console.error(error);
|
|
136
|
-
console.log(`rolling back optimistic update with id ${context.id}`);
|
|
137
|
-
queryClient.setQueryData(classroomKeys.item(variables.classroomId, variables.username), context.prevState);
|
|
138
|
-
callbacks.onError && callbacks.onError(error, variables, context);
|
|
139
|
-
},
|
|
140
|
-
onSuccess: (data, variables, context) => {
|
|
141
|
-
queryClient.setQueryData(classroomKeys.item(variables.classroomId, variables.username), {
|
|
142
|
-
...context.prevState,
|
|
143
|
-
...data.Attributes
|
|
144
|
-
});
|
|
145
|
-
callbacks.onSuccess && callbacks.onSuccess(data, variables, context);
|
|
146
|
-
}
|
|
147
|
-
});
|
|
148
|
-
}
|
|
149
|
-
function useDeleteClassroom(func, callbacks = {}) {
|
|
150
|
-
const queryClient = (0, _Queries.useQueryClient)();
|
|
151
|
-
return (0, _Queries.useMutation)({
|
|
152
|
-
mutationFn: variables => {
|
|
153
|
-
return func(variables.classroomId);
|
|
154
|
-
},
|
|
155
|
-
onError: error => {
|
|
156
|
-
console.error(error);
|
|
157
|
-
callbacks.onError && callbacks.onError(error);
|
|
158
|
-
},
|
|
159
|
-
onSuccess: (data, variables) => {
|
|
160
|
-
queryClient.invalidateQueries({
|
|
161
|
-
queryKey: classroomKeys.lists()
|
|
162
|
-
});
|
|
163
|
-
queryClient.invalidateQueries({
|
|
164
|
-
queryKey: classroomKeys.item(variables.classroomId, variables.username)
|
|
165
|
-
});
|
|
166
|
-
callbacks.onSuccess && callbacks.onSuccess(data, variables);
|
|
167
|
-
},
|
|
168
|
-
onSettled: () => {
|
|
169
|
-
callbacks.onSettled && callbacks.onSettled();
|
|
170
|
-
}
|
|
171
|
-
});
|
|
172
|
-
}
|
|
173
|
-
function useJoinClassroom(func, callbacks = {}) {
|
|
174
|
-
const queryClient = (0, _Queries.useQueryClient)();
|
|
175
|
-
return (0, _Queries.useMutation)({
|
|
176
|
-
mutationFn: variables => {
|
|
177
|
-
return func(variables.classroomId, variables.enrollmentKey);
|
|
178
|
-
},
|
|
179
|
-
onError: error => {
|
|
180
|
-
console.error(error);
|
|
181
|
-
callbacks.onError && callbacks.onError(error);
|
|
182
|
-
},
|
|
183
|
-
onSuccess: (data, variables) => {
|
|
184
|
-
// Check if there is existing classroom data
|
|
185
|
-
const classroomData = queryClient.getQueryData(classroomKeys.item(variables.classroomId, variables.username));
|
|
186
|
-
if (classroomData) {
|
|
187
|
-
queryClient.setQueryData(classroomKeys.item(variables.classroomId, variables.username), old => {
|
|
188
|
-
if (!old) {
|
|
189
|
-
return old;
|
|
190
|
-
}
|
|
191
|
-
return {
|
|
192
|
-
...old,
|
|
193
|
-
isMember: true
|
|
194
|
-
};
|
|
195
|
-
});
|
|
196
|
-
}
|
|
197
|
-
callbacks.onSuccess && callbacks.onSuccess(data, variables);
|
|
198
|
-
},
|
|
199
|
-
onSettled: () => {
|
|
200
|
-
callbacks.onSettled && callbacks.onSettled();
|
|
201
|
-
}
|
|
202
|
-
});
|
|
203
|
-
}
|
|
204
|
-
function useLeaveClassroom(func, callbacks = {}) {
|
|
205
|
-
const queryClient = (0, _Queries.useQueryClient)();
|
|
206
|
-
return (0, _Queries.useMutation)({
|
|
207
|
-
mutationFn: variables => {
|
|
208
|
-
return func(variables.classroomId, variables.username);
|
|
209
|
-
},
|
|
210
|
-
onError: error => {
|
|
211
|
-
console.error(error);
|
|
212
|
-
callbacks.onError && callbacks.onError(error);
|
|
213
|
-
},
|
|
214
|
-
onSuccess: (data, variables) => {
|
|
215
|
-
// Check if there is existing classroom data
|
|
216
|
-
const classroomData = queryClient.getQueryData(classroomKeys.item(variables.classroomId, variables.username));
|
|
217
|
-
if (classroomData) {
|
|
218
|
-
queryClient.setQueryData(classroomKeys.item(variables.classroomId, variables.username), old => {
|
|
219
|
-
if (!old) {
|
|
220
|
-
return old;
|
|
221
|
-
}
|
|
222
|
-
return {
|
|
223
|
-
...old,
|
|
224
|
-
isMember: false
|
|
225
|
-
};
|
|
226
|
-
});
|
|
227
|
-
}
|
|
228
|
-
const classroomFilter = {
|
|
229
|
-
memberId: variables.username,
|
|
230
|
-
verbose: false
|
|
231
|
-
};
|
|
232
|
-
const dataLearnClassrooms = queryClient.getQueryData(_Queries.classrooms.classroomKeys.list(classroomFilter));
|
|
233
|
-
if (dataLearnClassrooms) {
|
|
234
|
-
queryClient.setQueryData(_Queries.classrooms.classroomKeys.list(classroomFilter), old => {
|
|
235
|
-
return old.filter(item => item.classroomId !== variables.classroomId); // Filter out the classroom with the matching classroomId
|
|
236
|
-
});
|
|
237
|
-
}
|
|
238
|
-
callbacks.onSuccess && callbacks.onSuccess(data, variables);
|
|
239
|
-
},
|
|
240
|
-
onSettled: () => {
|
|
241
|
-
callbacks.onSettled && callbacks.onSettled();
|
|
242
|
-
}
|
|
243
|
-
});
|
|
244
|
-
}
|
|
245
|
-
function useDeleteClassroomMember(func, callbacks = {}) {
|
|
246
|
-
return (0, _Queries.useMutation)({
|
|
247
|
-
mutationFn: variables => {
|
|
248
|
-
return func(variables.classroomId, variables.username);
|
|
249
|
-
},
|
|
250
|
-
onSuccess: (data, variables) => {
|
|
251
|
-
callbacks.onSuccess && callbacks.onSuccess(data, variables);
|
|
252
|
-
},
|
|
253
|
-
onError: error => {
|
|
254
|
-
console.error(error);
|
|
255
|
-
},
|
|
256
|
-
onSettled: () => {
|
|
257
|
-
callbacks.onSettled && callbacks.onSettled();
|
|
258
|
-
}
|
|
259
|
-
});
|
|
260
|
-
}
|