mario-education 2.4.533-feedback → 2.4.535-feedback

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.
@@ -4,6 +4,7 @@ export interface IPermission {
4
4
  classReflections: string[];
5
5
  surveys: string[];
6
6
  students: string[];
7
+ staffs: string[];
7
8
  }
8
9
  export interface IAccessToken {
9
10
  permission: IPermission;
@@ -0,0 +1,6 @@
1
+ import React from "react";
2
+ interface RestApiProgressProps {
3
+ restApiInfo?: object;
4
+ }
5
+ declare const RestApiProgress: React.FC<RestApiProgressProps>;
6
+ export default RestApiProgress;
@@ -0,0 +1,8 @@
1
+ import { FC } from "react";
2
+ import { VERA_CROSS_CONFIG } from "../configs/types";
3
+ interface Props {
4
+ veraCrossConfig: VERA_CROSS_CONFIG;
5
+ updateData: Function;
6
+ }
7
+ declare const VeraCrossConfigForm: FC<Props>;
8
+ export default VeraCrossConfigForm;
@@ -10,3 +10,4 @@ export declare const DEFAULT_PAGE_SIZE: {
10
10
  value: number;
11
11
  };
12
12
  export declare const DEFAULT_FILTER: UserRosterFilter;
13
+ export declare const IMPORT_VERA_CROSS_NAME: string[];
@@ -23,3 +23,9 @@ export declare enum UserRosterSortBy {
23
23
  EMAIL = "Email",
24
24
  ROLE = "Role"
25
25
  }
26
+ export declare type VERA_CROSS_CONFIG = {
27
+ cronjobTime: string;
28
+ clientId: string;
29
+ clientSecret: string;
30
+ endPointUrl: string;
31
+ };
@@ -0,0 +1,9 @@
1
+ import { VERA_CROSS_CONFIG } from "../configs/types";
2
+ declare const userVeraCross: () => {
3
+ veraCrossConfig: VERA_CROSS_CONFIG;
4
+ errorImportRest: string | null;
5
+ updateData: (values: any) => Promise<void>;
6
+ restApiInfo: object | undefined;
7
+ handleImportFromRestfulApi: () => Promise<void>;
8
+ };
9
+ export default userVeraCross;
@@ -0,0 +1,7 @@
1
+ import { VERA_CROSS_CONFIG } from "../configs/types";
2
+ declare const userVeraCrossConfigForm: () => {
3
+ veraCrossConfig: VERA_CROSS_CONFIG;
4
+ errorImportRest: string | null;
5
+ updateData: (values: any) => Promise<void>;
6
+ };
7
+ export default userVeraCrossConfigForm;
@@ -0,0 +1,2 @@
1
+ declare const VeracrossImport: () => JSX.Element;
2
+ export default VeracrossImport;
package/dist/index.js CHANGED
@@ -40901,12 +40901,23 @@ var IMPORT_ZIP_ROSTER_URL = marioCore.BASE_URL + "/api/ImportOneRoster/file";
40901
40901
  var IMPORT_RESTFUL_API_ROSTER_URL = marioCore.BASE_URL + "/api/ImportRestApiRoster/rest";
40902
40902
  var ONE_ROSTER_USER_URL = marioCore.BASE_URL + "/api/usersOneRoster";
40903
40903
  var EDU_ROSTER_USER_URL = marioCore.BASE_URL + "/api/User/roster-users";
40904
+ var VERA_CROSS_URL = marioCore.BASE_URL + "/api/veraCross";
40905
+ var IMPORT_RESTFUL_API_VERA_CROSS_URL = marioCore.BASE_URL + "/api/ImportRestApiVeraCross/rest";
40904
40906
  var getRosterConfig = function getRosterConfig() {
40905
40907
  return marioCore.api.get(ROSTER_URL);
40906
40908
  };
40909
+ var getVeraCrossConfig = function getVeraCrossConfig() {
40910
+ return marioCore.api.get(VERA_CROSS_URL);
40911
+ };
40912
+ var updateVeraCrossConfig = function updateVeraCrossConfig(data) {
40913
+ return marioCore.api.put("" + VERA_CROSS_URL, data);
40914
+ };
40907
40915
  var updateRosterConfig = function updateRosterConfig(data) {
40908
40916
  return marioCore.api.put("" + ROSTER_URL, data);
40909
40917
  };
40918
+ var importVeraCrossFromRestfulApi = function importVeraCrossFromRestfulApi(fileName) {
40919
+ return marioCore.api.post(IMPORT_RESTFUL_API_VERA_CROSS_URL + "?name=" + fileName);
40920
+ };
40910
40921
  var importRosterFromFile = function importRosterFromFile(body, cb) {
40911
40922
  return marioCore.api.post(IMPORT_ZIP_ROSTER_URL, body, {
40912
40923
  onUploadProgress: cb
@@ -40938,6 +40949,7 @@ var DEFAULT_FILTER$1 = {
40938
40949
  pageSize: DEFAULT_PAGE_SIZE$1.value,
40939
40950
  isCreated: false
40940
40951
  };
40952
+ var IMPORT_VERA_CROSS_NAME = ["users"];
40941
40953
 
40942
40954
  var useImportOneRoster = function useImportOneRoster(_ref) {
40943
40955
  var errorImportRest = _ref.errorImportRest;
@@ -49287,10 +49299,319 @@ var OneRosterUserList = function OneRosterUserList() {
49287
49299
  }))));
49288
49300
  };
49289
49301
 
49302
+ var VeraCrossConfigForm = function VeraCrossConfigForm(_ref) {
49303
+ var veraCrossConfig = _ref.veraCrossConfig,
49304
+ updateData = _ref.updateData;
49305
+
49306
+ var _useTranslation = marioCore.useTranslation(),
49307
+ t = _useTranslation.t;
49308
+
49309
+ return React__default.createElement(formik.Formik, {
49310
+ initialValues: veraCrossConfig,
49311
+ enableReinitialize: true,
49312
+ onSubmit: function onSubmit(values) {
49313
+ updateData(values);
49314
+ }
49315
+ }, function (formikProps) {
49316
+ var values = formikProps.values,
49317
+ handleChange = formikProps.handleChange,
49318
+ handleBlur = formikProps.handleBlur,
49319
+ handleSubmit = formikProps.handleSubmit;
49320
+ return React__default.createElement(reactstrap.Row, null, React__default.createElement(reactstrap.Col, {
49321
+ md: 12
49322
+ }, React__default.createElement("h5", {
49323
+ className: "mt-4 font-weight-bold"
49324
+ }, t("one_roster_config"))), React__default.createElement(reactstrap.Col, {
49325
+ md: 12,
49326
+ className: "my-4 mt-2"
49327
+ }, React__default.createElement(reactstrap.Label, {
49328
+ className: "font-weight-bold"
49329
+ }, t("time_vera_cross_sync_hh")), React__default.createElement(reactstrap.Input, {
49330
+ name: "cronjobTime",
49331
+ placeholder: t("time_vera_cross_sync_hh"),
49332
+ value: values.cronjobTime,
49333
+ onChange: function onChange(e) {
49334
+ handleChange(e);
49335
+ },
49336
+ onBlur: handleBlur("cronjobTime")
49337
+ })), React__default.createElement(reactstrap.Col, {
49338
+ md: 12,
49339
+ className: "my-4 mt-2"
49340
+ }, React__default.createElement(reactstrap.Label, {
49341
+ className: "font-weight-bold"
49342
+ }, t("end_point_url"), ":"), React__default.createElement(reactstrap.Input, {
49343
+ name: "endPointUrl",
49344
+ placeholder: t("end_point_url"),
49345
+ value: values.endPointUrl,
49346
+ onChange: function onChange(e) {
49347
+ handleChange(e);
49348
+ },
49349
+ onBlur: handleBlur("endPointUrl")
49350
+ })), React__default.createElement(reactstrap.Col, {
49351
+ md: 12,
49352
+ className: "mb-4 mt-2"
49353
+ }, React__default.createElement(reactstrap.Label, {
49354
+ className: "font-weight-bold"
49355
+ }, t("client_id"), ":"), React__default.createElement(reactstrap.Input, {
49356
+ name: "clientId",
49357
+ placeholder: t("client_id"),
49358
+ value: values.clientId,
49359
+ onChange: function onChange(e) {
49360
+ handleChange(e);
49361
+ },
49362
+ onBlur: handleBlur("clientId")
49363
+ })), React__default.createElement(reactstrap.Col, {
49364
+ md: 12,
49365
+ className: "mb-4"
49366
+ }, React__default.createElement(reactstrap.Label, {
49367
+ className: "font-weight-bold"
49368
+ }, t("client_secret"), ":"), React__default.createElement(reactstrap.Input, {
49369
+ name: "clientSecret",
49370
+ placeholder: t("client_secret"),
49371
+ value: values.clientSecret,
49372
+ onChange: function onChange(e) {
49373
+ handleChange(e);
49374
+ },
49375
+ onBlur: handleBlur("clientSecret")
49376
+ })), React__default.createElement(reactstrap.Col, {
49377
+ md: 12,
49378
+ className: "d-flex justify-content-end"
49379
+ }, React__default.createElement(reactstrap.Button, {
49380
+ onClick: function onClick() {
49381
+ return handleSubmit();
49382
+ },
49383
+ color: "success"
49384
+ }, t("save"))));
49385
+ });
49386
+ };
49387
+
49388
+ var initValue$s = {
49389
+ cronjobTime: "",
49390
+ clientId: "",
49391
+ clientSecret: "",
49392
+ endPointUrl: ""
49393
+ };
49394
+
49395
+ var userVeraCross = function userVeraCross() {
49396
+ var dispatch = reactRedux.useDispatch();
49397
+
49398
+ var _useState = React.useState(),
49399
+ restApiInfo = _useState[0],
49400
+ setRestApiInfo = _useState[1];
49401
+
49402
+ var _useState2 = React.useState(initValue$s),
49403
+ veraCrossConfig = _useState2[0],
49404
+ setVeraCrossConfig = _useState2[1];
49405
+
49406
+ var getData = React.useCallback(function (loading) {
49407
+ if (loading === void 0) {
49408
+ loading = true;
49409
+ }
49410
+
49411
+ try {
49412
+ var _temp3 = function _temp3() {
49413
+ if (loading) dispatch(marioCore.setLoading(false));
49414
+ };
49415
+
49416
+ if (loading) dispatch(marioCore.setLoading(true));
49417
+
49418
+ var _temp4 = _catch(function () {
49419
+ return Promise.resolve(getVeraCrossConfig()).then(function (res) {
49420
+ setVeraCrossConfig(res.data);
49421
+ });
49422
+ }, function (err) {
49423
+ var _err$response, _err$response$data;
49424
+
49425
+ if (loading) dispatch(marioCore.setAlert({
49426
+ type: "danger",
49427
+ message: ((_err$response = err.response) === null || _err$response === void 0 ? void 0 : (_err$response$data = _err$response.data) === null || _err$response$data === void 0 ? void 0 : _err$response$data.title) || err.message
49428
+ }));
49429
+ });
49430
+
49431
+ return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));
49432
+ } catch (e) {
49433
+ return Promise.reject(e);
49434
+ }
49435
+ }, []);
49436
+ var updateData = React.useCallback(function (values) {
49437
+ try {
49438
+ var _temp7 = function _temp7() {
49439
+ dispatch(marioCore.setLoading(false));
49440
+ };
49441
+
49442
+ dispatch(marioCore.setLoading(true));
49443
+
49444
+ var _temp8 = _catch(function () {
49445
+ return Promise.resolve(updateVeraCrossConfig(values)).then(function (res) {
49446
+ setVeraCrossConfig(res.data);
49447
+ return Promise.resolve(getData(false)).then(function () {
49448
+ dispatch(marioCore.setAlert({
49449
+ type: "success",
49450
+ message: "Update vera cross config successfully"
49451
+ }));
49452
+ });
49453
+ });
49454
+ }, function (err) {
49455
+ var _err$response2, _err$response2$data;
49456
+
49457
+ dispatch(marioCore.setAlert({
49458
+ type: "danger",
49459
+ message: ((_err$response2 = err.response) === null || _err$response2 === void 0 ? void 0 : (_err$response2$data = _err$response2.data) === null || _err$response2$data === void 0 ? void 0 : _err$response2$data.title) || err.message
49460
+ }));
49461
+ });
49462
+
49463
+ return Promise.resolve(_temp8 && _temp8.then ? _temp8.then(_temp7) : _temp7(_temp8));
49464
+ } catch (e) {
49465
+ return Promise.reject(e);
49466
+ }
49467
+ }, []);
49468
+ var errorImportRest = React.useMemo(function () {
49469
+ if (!veraCrossConfig.clientId.trim().length && !veraCrossConfig.clientSecret.trim().length && !veraCrossConfig.endPointUrl.trim().length) return "Client Id and Client Secret are required";
49470
+ if (!veraCrossConfig.endPointUrl.trim().length) return "End Point URL is required";
49471
+ if (!veraCrossConfig.clientId.trim().length) return "Client Id is required";
49472
+ if (!veraCrossConfig.clientSecret.trim().length) return "Client Secret is required";
49473
+ return null;
49474
+ }, [JSON.stringify(veraCrossConfig)]);
49475
+ var importRosterRestApi = React.useCallback(function (fileName) {
49476
+ try {
49477
+ var _temp10 = _catch(function () {
49478
+ return Promise.resolve(importVeraCrossFromRestfulApi(fileName)).then(function () {
49479
+ setRestApiInfo(function (state) {
49480
+ var _extends2;
49481
+
49482
+ return _extends({}, state, (_extends2 = {}, _extends2[fileName] = true, _extends2));
49483
+ });
49484
+ });
49485
+ }, function (err) {
49486
+ var _err$response3, _err$response3$data, _err$response3$data$t, _err$response3$data$t2;
49487
+
49488
+ var title = (_err$response3 = err.response) === null || _err$response3 === void 0 ? void 0 : (_err$response3$data = _err$response3.data) === null || _err$response3$data === void 0 ? void 0 : (_err$response3$data$t = _err$response3$data.title) === null || _err$response3$data$t === void 0 ? void 0 : (_err$response3$data$t2 = _err$response3$data$t.replaceAll) === null || _err$response3$data$t2 === void 0 ? void 0 : _err$response3$data$t2.call(_err$response3$data$t, '"', "");
49489
+ setRestApiInfo(function (state) {
49490
+ var _extends3;
49491
+
49492
+ return _extends({}, state, (_extends3 = {}, _extends3[fileName] = title || err.message, _extends3));
49493
+ });
49494
+ });
49495
+
49496
+ return Promise.resolve(_temp10 && _temp10.then ? _temp10.then(function () {}) : void 0);
49497
+ } catch (e) {
49498
+ return Promise.reject(e);
49499
+ }
49500
+ }, [JSON.stringify(restApiInfo)]);
49501
+ var handleImportFromRestfulApi = React.useCallback(function () {
49502
+ try {
49503
+ if (errorImportRest) {
49504
+ dispatch(marioCore.setAlert({
49505
+ type: "danger",
49506
+ message: errorImportRest + " (Please make sure your changes are saved)"
49507
+ }));
49508
+ return Promise.resolve();
49509
+ }
49510
+
49511
+ setRestApiInfo({});
49512
+ dispatch(marioCore.setLoading(true));
49513
+ return Promise.resolve(Promise.all(IMPORT_VERA_CROSS_NAME.map(function (fileName) {
49514
+ return importRosterRestApi(fileName);
49515
+ }))).then(function () {
49516
+ dispatch(marioCore.setLoading(false));
49517
+ });
49518
+ } catch (e) {
49519
+ return Promise.reject(e);
49520
+ }
49521
+ }, [errorImportRest]);
49522
+ React.useEffect(function () {
49523
+ document.title = "Veracross | Settings";
49524
+ getData();
49525
+ }, []);
49526
+ return {
49527
+ veraCrossConfig: veraCrossConfig,
49528
+ errorImportRest: errorImportRest,
49529
+ updateData: updateData,
49530
+ restApiInfo: restApiInfo,
49531
+ handleImportFromRestfulApi: handleImportFromRestfulApi
49532
+ };
49533
+ };
49534
+
49535
+ var RestApiProgress = function RestApiProgress(_ref) {
49536
+ var restApiInfo = _ref.restApiInfo;
49537
+ if (!restApiInfo) return null;
49538
+ var info = IMPORT_VERA_CROSS_NAME.map(function (fileName) {
49539
+ return {
49540
+ name: fileName,
49541
+ status: restApiInfo[fileName]
49542
+ };
49543
+ });
49544
+ var filteredInfo = info.filter(function (i) {
49545
+ return i.status !== "ResourceNotFound";
49546
+ });
49547
+ return React__default.createElement("div", null, filteredInfo.map(function (i) {
49548
+ return React__default.createElement("div", {
49549
+ key: i.name,
49550
+ className: "flex items-center mb-2"
49551
+ }, !i.status ? React__default.createElement(fa.FaSpinner, {
49552
+ color: "#999999",
49553
+ className: "mr-2 " + styles$5.spinner
49554
+ }) : i.status === true ? React__default.createElement(fa.FaCheckCircle, {
49555
+ color: "#28a745",
49556
+ className: "mr-2"
49557
+ }) : React__default.createElement(fa.FaTimesCircle, {
49558
+ color: "#dc3545",
49559
+ className: "mr-2"
49560
+ }), React__default.createElement("b", null, i.name + ": "), "\xA0", !i.status ? "Importing..." : i.status === true ? "Import successful" : React__default.createElement("span", null, i.status === INVALID_CLIENT_ROSTER_CONFIG ? "Invalid Client Id and Client Secret" : i.status));
49561
+ }));
49562
+ };
49563
+
49564
+ var VeracrossImport = function VeracrossImport() {
49565
+ var _userVeraCross = userVeraCross(),
49566
+ veraCrossConfig = _userVeraCross.veraCrossConfig,
49567
+ updateData = _userVeraCross.updateData,
49568
+ restApiInfo = _userVeraCross.restApiInfo,
49569
+ handleImportFromRestfulApi = _userVeraCross.handleImportFromRestfulApi;
49570
+
49571
+ var _useTranslation = marioCore.useTranslation(),
49572
+ t = _useTranslation.t;
49573
+
49574
+ return React__default.createElement("div", {
49575
+ className: "fadeIn animated"
49576
+ }, React__default.createElement(reactstrap.Row, null, React__default.createElement(reactstrap.Col, {
49577
+ md: 7
49578
+ }, React__default.createElement(VeraCrossConfigForm, {
49579
+ veraCrossConfig: veraCrossConfig,
49580
+ updateData: updateData
49581
+ })), React__default.createElement(reactstrap.Col, {
49582
+ md: 5
49583
+ }), React__default.createElement(reactstrap.Col, {
49584
+ md: 7
49585
+ }, React__default.createElement(reactstrap.Row, null, React__default.createElement(reactstrap.Col, {
49586
+ md: 12
49587
+ }, React__default.createElement("h5", {
49588
+ className: "mt-4",
49589
+ style: {
49590
+ fontWeight: 700
49591
+ }
49592
+ }, t("import_vera_cross"))), React__default.createElement(reactstrap.Col, {
49593
+ md: 6
49594
+ }), React__default.createElement(reactstrap.Col, {
49595
+ md: 6
49596
+ }, React__default.createElement(reactstrap.Button, {
49597
+ color: "primary",
49598
+ className: "w-100 mt-4 mb-1",
49599
+ onClick: handleImportFromRestfulApi
49600
+ }, t("import_from_restful_api")), React__default.createElement("div", {
49601
+ className: "mt-2"
49602
+ }, React__default.createElement(RestApiProgress, {
49603
+ restApiInfo: restApiInfo
49604
+ })))))));
49605
+ };
49606
+
49290
49607
  var tabs$9 = [{
49291
49608
  path: "/admin/one-rosters/settings",
49292
49609
  title: "one_roster_setting",
49293
49610
  component: OneRosterImport
49611
+ }, {
49612
+ path: "/admin/one-rosters/veracross-settings",
49613
+ title: "veracross_setting",
49614
+ component: VeracrossImport
49294
49615
  }, {
49295
49616
  path: "/admin/one-rosters/users",
49296
49617
  title: "users",
@@ -72737,7 +73058,8 @@ var useExternalApi = function useExternalApi() {
72737
73058
  createDate: r.createDate,
72738
73059
  token: r.token,
72739
73060
  permission: _extends({}, permission, {
72740
- students: permission.students || []
73061
+ students: permission.students || [],
73062
+ staffs: permission.staffs || []
72741
73063
  })
72742
73064
  };
72743
73065
  }));
@@ -72851,7 +73173,9 @@ var initToken = {
72851
73173
  checkIns: ["GET"],
72852
73174
  classReflections: ["GET"],
72853
73175
  conferences: ["GET"],
72854
- surveys: ["GET"]
73176
+ surveys: ["GET"],
73177
+ staffs: ["GET"],
73178
+ students: ["GET"]
72855
73179
  }
72856
73180
  };
72857
73181
 
@@ -72914,7 +73238,7 @@ var PermissionSelected = function PermissionSelected(_ref) {
72914
73238
  };
72915
73239
 
72916
73240
  var ExternalApi = function ExternalApi() {
72917
- var _tokenDetail$permissi, _tokenDetail$permissi2, _tokenDetail$permissi3, _tokenDetail$permissi4, _tokenDetail$permissi5;
73241
+ var _tokenDetail$permissi, _tokenDetail$permissi2, _tokenDetail$permissi3, _tokenDetail$permissi4, _tokenDetail$permissi5, _tokenDetail$permissi6;
72918
73242
 
72919
73243
  var _useTranslation = marioCore.useTranslation(),
72920
73244
  t = _useTranslation.t;
@@ -72962,10 +73286,12 @@ var ExternalApi = function ExternalApi() {
72962
73286
  className: "align-top"
72963
73287
  }, t("students")), React__default.createElement("th", {
72964
73288
  className: "align-top"
73289
+ }, t("staffs")), React__default.createElement("th", {
73290
+ className: "align-top"
72965
73291
  }, t("created_date")), React__default.createElement("th", {
72966
73292
  className: "text-center"
72967
73293
  }, t("action")))), React__default.createElement("tbody", null, tokens.map(function (record) {
72968
- var _record$permission, _record$permission$ch, _record$permission2, _record$permission2$c, _record$permission3, _record$permission3$c, _record$permission4, _record$permission4$s, _record$permission5, _record$permission5$s;
73294
+ var _record$permission, _record$permission$ch, _record$permission2, _record$permission2$c, _record$permission3, _record$permission3$c, _record$permission4, _record$permission4$s, _record$permission5, _record$permission5$s, _record$permission6, _record$permission6$s;
72969
73295
 
72970
73296
  return React__default.createElement("tr", {
72971
73297
  key: record.id
@@ -72988,6 +73314,8 @@ var ExternalApi = function ExternalApi() {
72988
73314
  className: "align-middle"
72989
73315
  }, (_record$permission5 = record.permission) === null || _record$permission5 === void 0 ? void 0 : (_record$permission5$s = _record$permission5.students) === null || _record$permission5$s === void 0 ? void 0 : _record$permission5$s.toString()), React__default.createElement("td", {
72990
73316
  className: "align-middle"
73317
+ }, (_record$permission6 = record.permission) === null || _record$permission6 === void 0 ? void 0 : (_record$permission6$s = _record$permission6.staffs) === null || _record$permission6$s === void 0 ? void 0 : _record$permission6$s.toString()), React__default.createElement("td", {
73318
+ className: "align-middle"
72991
73319
  }, dateFns.format(new Date(record.createDate), DATE_RESULT)), React__default.createElement("td", {
72992
73320
  className: "text-center align-middle"
72993
73321
  }, React__default.createElement(marioCore.DeleteButtonIcon, {
@@ -73067,6 +73395,14 @@ var ExternalApi = function ExternalApi() {
73067
73395
  name: "students",
73068
73396
  onChange: handleChangePermission,
73069
73397
  permission: (tokenDetail === null || tokenDetail === void 0 ? void 0 : (_tokenDetail$permissi5 = tokenDetail.permission) === null || _tokenDetail$permissi5 === void 0 ? void 0 : _tokenDetail$permissi5.students) || []
73398
+ })), React__default.createElement("div", {
73399
+ className: "d-flex align-items-center mt-4"
73400
+ }, React__default.createElement("h6", {
73401
+ className: "mr-5 mb-0"
73402
+ }, "Staffs:"), React__default.createElement(PermissionSelected, {
73403
+ name: "staffs",
73404
+ onChange: handleChangePermission,
73405
+ permission: (tokenDetail === null || tokenDetail === void 0 ? void 0 : (_tokenDetail$permissi6 = tokenDetail.permission) === null || _tokenDetail$permissi6 === void 0 ? void 0 : _tokenDetail$permissi6.staffs) || []
73070
73406
  })))));
73071
73407
  };
73072
73408
 
@@ -73491,7 +73827,7 @@ var WeeklyQuest = function WeeklyQuest() {
73491
73827
  }))));
73492
73828
  };
73493
73829
 
73494
- var initValue$s = {
73830
+ var initValue$t = {
73495
73831
  challenge: "",
73496
73832
  id: 0,
73497
73833
  order: 0,
@@ -73505,7 +73841,7 @@ var useWeeklyQuestDetail = function useWeeklyQuestDetail(id) {
73505
73841
  var dispatch = reactRedux.useDispatch();
73506
73842
  var history = reactRouterDom.useHistory();
73507
73843
 
73508
- var _useState = React.useState(initValue$s),
73844
+ var _useState = React.useState(initValue$t),
73509
73845
  dataDetail = _useState[0],
73510
73846
  setDataDetail = _useState[1];
73511
73847
 
@@ -73527,7 +73863,7 @@ var useWeeklyQuestDetail = function useWeeklyQuestDetail(id) {
73527
73863
  }, [dataDetail]);
73528
73864
  React.useEffect(function () {
73529
73865
  id && getData();
73530
- return setDataDetail(initValue$s);
73866
+ return setDataDetail(initValue$t);
73531
73867
  }, [id]);
73532
73868
  var getData = React.useCallback(function () {
73533
73869
  try {