mario-core 1.0.2 → 1.0.3-es-alpha
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/index.js +33 -2706
- package/dist/index.modern.js +25834 -2520
- package/dist/mario-core.css +5 -0
- package/package.json +66 -67
- package/README.md +0 -30
- package/dist/assets/Images.d.ts +0 -5
- package/dist/commons/action.d.ts +0 -2
- package/dist/commons/reducer.d.ts +0 -2
- package/dist/components/Alerts/EmptyDataAlert.d.ts +0 -8
- package/dist/components/Alerts/ErrorHandler.d.ts +0 -6
- package/dist/components/Buttons/AddButton.d.ts +0 -7
- package/dist/components/Buttons/AddButtonIcon.d.ts +0 -6
- package/dist/components/Buttons/DeleteButtonIcon.d.ts +0 -6
- package/dist/components/Buttons/DetailActionButtons.d.ts +0 -8
- package/dist/components/Buttons/EditButtonIcon.d.ts +0 -6
- package/dist/components/Buttons/LinkEditButton.d.ts +0 -7
- package/dist/components/Headers/CommonHeader.d.ts +0 -7
- package/dist/components/Inputs/SearchBox.d.ts +0 -10
- package/dist/components/Labels/RequiredLabel.d.ts +0 -6
- package/dist/components/Loading/Loading.d.ts +0 -3
- package/dist/components/Modals/CommonModal.d.ts +0 -3
- package/dist/components/Modals/NotificationModal.d.ts +0 -3
- package/dist/components/Pagination/CustomPagination.d.ts +0 -3
- package/dist/components/Selectors/CreatableSelector.d.ts +0 -3
- package/dist/components/Selectors/CustomSelector.d.ts +0 -3
- package/dist/components/Selectors/MailCategorySelectors.d.ts +0 -3
- package/dist/components/Selectors/QuestionTypeSelector.d.ts +0 -3
- package/dist/components/Selectors/StarRatingSelector.d.ts +0 -3
- package/dist/configs/editorConfig.d.ts +0 -7
- package/dist/containers/Classes/components/ClassDetailModal.d.ts +0 -3
- package/dist/containers/Classes/views/ClassList.d.ts +0 -3
- package/dist/containers/Commons/NotFound.d.ts +0 -3
- package/dist/containers/EmailTemplate/components/MailParam.d.ts +0 -6
- package/dist/containers/EmailTemplate/configs/emailTemplateSchema.d.ts +0 -11
- package/dist/containers/EmailTemplate/hooks/useEmailTemplateDetail.d.ts +0 -15
- package/dist/containers/EmailTemplate/hooks/useEmailTemplateList.d.ts +0 -10
- package/dist/containers/EmailTemplate/views/EmailTemplateDetail.d.ts +0 -3
- package/dist/containers/EmailTemplate/views/EmailTemplateList.d.ts +0 -3
- package/dist/containers/EmailTemplateDetail.d.ts +0 -3
- package/dist/containers/EmailTemplateList.d.ts +0 -3
- package/dist/containers/Faq/components/FaqDetailModal.d.ts +0 -3
- package/dist/containers/Faq/hooks/useFaqDetail.d.ts +0 -13
- package/dist/containers/Faq/hooks/useFaqList.d.ts +0 -9
- package/dist/containers/Faq/views/FaqList.d.ts +0 -3
- package/dist/containers/Login/hooks/useLogin.d.ts +0 -9
- package/dist/containers/Login/views/Login.d.ts +0 -3
- package/dist/containers/Login.d.ts +0 -3
- package/dist/containers/Skill/components/SkillDetailModal.d.ts +0 -3
- package/dist/containers/Skill/hooks/useSkillDetail.d.ts +0 -13
- package/dist/containers/Skill/hooks/useSkillList.d.ts +0 -9
- package/dist/containers/Skill/views/SkillList.d.ts +0 -3
- package/dist/containers/User/hooks/useUserList.d.ts +0 -9
- package/dist/containers/User/views/UserList.d.ts +0 -3
- package/dist/containers/User.d.ts +0 -3
- package/dist/index.css +0 -7
- package/dist/index.d.ts +0 -43
- package/dist/index.js.map +0 -1
- package/dist/index.modern.js.map +0 -1
- package/dist/index.test.d.ts +0 -1
- package/dist/layouts/TheContent.d.ts +0 -3
- package/dist/layouts/TheFooter.d.ts +0 -3
- package/dist/layouts/TheHeader.d.ts +0 -3
- package/dist/layouts/TheHeaderDropdown.d.ts +0 -3
- package/dist/layouts/TheLayout.d.ts +0 -3
- package/dist/layouts/TheSidebar.d.ts +0 -3
- package/dist/redux/badges/action.d.ts +0 -1
- package/dist/redux/badges/reducer.d.ts +0 -2
- package/dist/redux/classes/action.d.ts +0 -1
- package/dist/redux/classes/reducer.d.ts +0 -2
- package/dist/redux/commons/action.d.ts +0 -3
- package/dist/redux/commons/reducer.d.ts +0 -2
- package/dist/redux/emailTemplates/action.d.ts +0 -1
- package/dist/redux/emailTemplates/reducer.d.ts +0 -2
- package/dist/redux/faqs/action.d.ts +0 -1
- package/dist/redux/faqs/reducer.d.ts +0 -2
- package/dist/redux/goalExamples/action.d.ts +0 -1
- package/dist/redux/goalExamples/reducer.d.ts +0 -2
- package/dist/redux/learningStrategies/action.d.ts +0 -1
- package/dist/redux/learningStrategies/reducer.d.ts +0 -2
- package/dist/redux/questionBanks/action.d.ts +0 -1
- package/dist/redux/questionBanks/reducer.d.ts +0 -2
- package/dist/redux/skills/action.d.ts +0 -1
- package/dist/redux/skills/reducer.d.ts +0 -2
- package/dist/redux/subjects/action.d.ts +0 -1
- package/dist/redux/subjects/reducer.d.ts +0 -2
- package/dist/redux/suggestionBanks/action.d.ts +0 -1
- package/dist/redux/suggestionBanks/reducer.d.ts +0 -2
- package/dist/redux/users/action.d.ts +0 -1
- package/dist/redux/users/reducer.d.ts +0 -2
- package/dist/rootReducer.d.ts +0 -15
- package/dist/services/accountService.d.ts +0 -3
- package/dist/services/api.d.ts +0 -2
- package/dist/services/emailTemplateService.d.ts +0 -6
- package/dist/services/faqService.d.ts +0 -6
- package/dist/services/skillService.d.ts +0 -6
- package/dist/services/userService.d.ts +0 -6
- package/dist/store.d.ts +0 -3
- package/dist/types/ClassDetail.d.ts +0 -3
- package/dist/types/Conversation.d.ts +0 -8
- package/dist/types/Filter.d.ts +0 -8
- package/dist/utils/canAccessRoute.d.ts +0 -2
- package/dist/utils/constants.d.ts +0 -41
- package/dist/utils/encodeParams.d.ts +0 -2
- package/dist/utils/firstCheckToken.d.ts +0 -2
- package/dist/utils/generateRandomString.d.ts +0 -2
- package/dist/utils/getAccessToken.d.ts +0 -2
- package/dist/utils/index.d.ts +0 -1
- package/dist/utils/utcToLocalTime.d.ts +0 -2
- package/dist/views/TheContent.d.ts +0 -3
- package/dist/views/TheFooter.d.ts +0 -3
- package/dist/views/TheHeader.d.ts +0 -3
- package/dist/views/TheHeaderDropdown.d.ts +0 -3
- package/dist/views/TheLayout.d.ts +0 -3
- package/dist/views/TheSidebar.d.ts +0 -3
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/components/Alerts/ErrorHandler.tsx","../node_modules/babel-plugin-transform-async-to-promises/helpers.js","../src/utils/constants.ts","../src/utils/getAccessToken.ts","../src/redux/commons/action.ts","../src/utils/encodeParams.ts","../src/services/api.ts","../src/services/accountService.ts","../src/containers/Login/hooks/useLogin.ts","../src/containers/Login/views/Login.tsx","../src/layouts/TheSidebar.tsx","../src/layouts/TheHeaderDropdown.tsx","../src/utils/index.ts","../src/layouts/TheHeader.tsx","../src/containers/Commons/NotFound.tsx","../src/layouts/TheContent.tsx","../src/components/Loading/Loading.tsx","../src/utils/firstCheckToken.ts","../src/utils/canAccessRoute.ts","../src/layouts/TheLayout.tsx","../src/components/Headers/CommonHeader.tsx","../src/components/Buttons/AddButton.tsx","../src/components/Buttons/DeleteButtonIcon.tsx","../src/components/Buttons/LinkEditButton.tsx","../src/components/Alerts/EmptyDataAlert.tsx","../src/utils/utcToLocalTime.ts","../src/redux/emailTemplates/action.ts","../src/services/emailTemplateService.ts","../src/containers/EmailTemplate/hooks/useEmailTemplateList.ts","../src/containers/EmailTemplate/views/EmailTemplateList.tsx","../src/components/Buttons/DetailActionButtons.tsx","../src/components/Buttons/AddButtonIcon.tsx","../src/containers/EmailTemplate/components/MailParam.tsx","../src/components/Selectors/MailCategorySelectors.tsx","../src/configs/editorConfig.ts","../src/containers/EmailTemplate/hooks/useEmailTemplateDetail.ts","../src/containers/EmailTemplate/configs/emailTemplateSchema.ts","../src/containers/EmailTemplate/views/EmailTemplateDetail.tsx","../src/components/Modals/CommonModal.tsx","../src/containers/Faq/components/FaqDetailModal.tsx","../src/redux/faqs/action.ts","../src/services/faqService.ts","../src/containers/Faq/hooks/useFaqList.ts","../src/containers/Faq/hooks/useFaqDetail.ts","../src/containers/Faq/views/FaqList.tsx","../src/components/Pagination/CustomPagination.tsx","../src/containers/Skill/components/SkillDetailModal.tsx","../src/redux/skills/action.ts","../src/services/skillService.ts","../src/containers/Skill/hooks/useSkillList.ts","../src/containers/Skill/hooks/useSkillDetail.ts","../src/containers/Skill/views/SkillList.tsx","../src/redux/users/action.ts","../src/services/userService.ts","../src/containers/User/hooks/useUserList.ts","../src/containers/User/views/UserList.tsx","../src/components/Modals/NotificationModal.tsx","../src/components/Buttons/EditButtonIcon.tsx","../src/components/Selectors/CreatableSelector.tsx","../src/components/Inputs/SearchBox.tsx","../src/components/Selectors/QuestionTypeSelector.tsx","../src/components/Labels/RequiredLabel.tsx","../src/components/Selectors/StarRatingSelector.tsx","../node_modules/redux-logger/dist/redux-logger.js","../node_modules/symbol-observable/es/ponyfill.js","../node_modules/symbol-observable/es/index.js","../node_modules/redux/es/redux.js","../src/redux/commons/reducer.ts","../src/redux/classes/action.ts","../src/redux/classes/reducer.ts","../src/redux/faqs/reducer.ts","../src/redux/skills/reducer.ts","../src/redux/emailTemplates/reducer.ts","../src/redux/suggestionBanks/action.ts","../src/redux/suggestionBanks/reducer.ts","../src/redux/learningStrategies/action.ts","../src/redux/learningStrategies/reducer.ts","../src/redux/subjects/action.ts","../src/redux/subjects/reducer.ts","../src/redux/questionBanks/action.ts","../src/redux/questionBanks/reducer.ts","../src/redux/badges/action.ts","../src/redux/badges/reducer.ts","../src/redux/goalExamples/action.ts","../src/redux/goalExamples/reducer.ts","../src/redux/users/reducer.ts","../src/rootReducer.ts","../src/store.ts","../src/utils/generateRandomString.ts","../src/assets/Images.ts"],"sourcesContent":["import React, { FC } from \"react\"\r\n\r\ninterface Props {\r\n text: string\r\n}\r\n\r\nconst style = {\r\n fontSize: \"0.85rem\"\r\n}\r\n\r\nconst ErrorHandler: FC<Props> = ({ text }: Props) => {\r\n return <p \r\n className=\"text-danger\"\r\n style={style}\r\n >\r\n {text}\r\n </p>\r\n} \r\n\r\nexport default ErrorHandler","// A type of promise-like that resolves synchronously and supports only one observer\nexport const _Pact = /*#__PURE__*/(function() {\n\tfunction _Pact() {}\n\t_Pact.prototype.then = function(onFulfilled, onRejected) {\n\t\tconst result = new _Pact();\n\t\tconst state = this.s;\n\t\tif (state) {\n\t\t\tconst callback = state & 1 ? onFulfilled : onRejected;\n\t\t\tif (callback) {\n\t\t\t\ttry {\n\t\t\t\t\t_settle(result, 1, callback(this.v));\n\t\t\t\t} catch (e) {\n\t\t\t\t\t_settle(result, 2, e);\n\t\t\t\t}\n\t\t\t\treturn result;\n\t\t\t} else {\n\t\t\t\treturn this;\n\t\t\t}\n\t\t}\n\t\tthis.o = function(_this) {\n\t\t\ttry {\n\t\t\t\tconst value = _this.v;\n\t\t\t\tif (_this.s & 1) {\n\t\t\t\t\t_settle(result, 1, onFulfilled ? onFulfilled(value) : value);\n\t\t\t\t} else if (onRejected) {\n\t\t\t\t\t_settle(result, 1, onRejected(value));\n\t\t\t\t} else {\n\t\t\t\t\t_settle(result, 2, value);\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\t_settle(result, 2, e);\n\t\t\t}\n\t\t};\n\t\treturn result;\n\t}\n\treturn _Pact;\n})();\n\n// Settles a pact synchronously\nexport function _settle(pact, state, value) {\n\tif (!pact.s) {\n\t\tif (value instanceof _Pact) {\n\t\t\tif (value.s) {\n\t\t\t\tif (state & 1) {\n\t\t\t\t\tstate = value.s;\n\t\t\t\t}\n\t\t\t\tvalue = value.v;\n\t\t\t} else {\n\t\t\t\tvalue.o = _settle.bind(null, pact, state);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tif (value && value.then) {\n\t\t\tvalue.then(_settle.bind(null, pact, state), _settle.bind(null, pact, 2));\n\t\t\treturn;\n\t\t}\n\t\tpact.s = state;\n\t\tpact.v = value;\n\t\tconst observer = pact.o;\n\t\tif (observer) {\n\t\t\tobserver(pact);\n\t\t}\n\t}\n}\n\nexport function _isSettledPact(thenable) {\n\treturn thenable instanceof _Pact && thenable.s & 1;\n}\n\n// Converts argument to a function that always returns a Promise\nexport function _async(f) {\n\treturn function() {\n\t\tfor (var args = [], i = 0; i < arguments.length; i++) {\n\t\t\targs[i] = arguments[i];\n\t\t}\n\t\ttry {\n\t\t\treturn Promise.resolve(f.apply(this, args));\n\t\t} catch(e) {\n\t\t\treturn Promise.reject(e);\n\t\t}\n\t}\n}\n\n// Awaits on a value that may or may not be a Promise (equivalent to the await keyword in ES2015, with continuations passed explicitly)\nexport function _await(value, then, direct) {\n\tif (direct) {\n\t\treturn then ? then(value) : value;\n\t}\n\tif (!value || !value.then) {\n\t\tvalue = Promise.resolve(value);\n\t}\n\treturn then ? value.then(then) : value;\n}\n\n// Awaits on a value that may or may not be a Promise, then ignores it\nexport function _awaitIgnored(value, direct) {\n\tif (!direct) {\n\t\treturn value && value.then ? value.then(_empty) : Promise.resolve();\n\t}\n}\n\n// Proceeds after a value has resolved, or proceeds immediately if the value is not thenable\nexport function _continue(value, then) {\n\treturn value && value.then ? value.then(then) : then(value);\n}\n\n// Proceeds after a value has resolved, or proceeds immediately if the value is not thenable\nexport function _continueIgnored(value) {\n\tif (value && value.then) {\n\t\treturn value.then(_empty);\n\t}\n}\n\n// Asynchronously iterate through an object that has a length property, passing the index as the first argument to the callback (even as the length property changes)\nexport function _forTo(array, body, check) {\n\tvar i = -1, pact, reject;\n\tfunction _cycle(result) {\n\t\ttry {\n\t\t\twhile (++i < array.length && (!check || !check())) {\n\t\t\t\tresult = body(i);\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\t\tresult = result.v;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresult.then(_cycle, reject || (reject = _settle.bind(null, pact = new _Pact(), 2)));\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (pact) {\n\t\t\t\t_settle(pact, 1, result);\n\t\t\t} else {\n\t\t\t\tpact = result;\n\t\t\t}\n\t\t} catch (e) {\n\t\t\t_settle(pact || (pact = new _Pact()), 2, e);\n\t\t}\n\t}\n\t_cycle();\n\treturn pact;\n}\n\n// Asynchronously iterate through an object's properties (including properties inherited from the prototype)\n// Uses a snapshot of the object's properties\nexport function _forIn(target, body, check) {\n\tvar keys = [];\n\tfor (var key in target) {\n\t\tkeys.push(key);\n\t}\n\treturn _forTo(keys, function(i) { return body(keys[i]); }, check);\n}\n\n// Asynchronously iterate through an object's own properties (excluding properties inherited from the prototype)\n// Uses a snapshot of the object's properties\nexport function _forOwn(target, body, check) {\n\tvar keys = [];\n\tfor (var key in target) {\n\t\tif (Object.prototype.hasOwnProperty.call(target, key)) {\n\t\t\tkeys.push(key);\n\t\t}\n\t}\n\treturn _forTo(keys, function(i) { return body(keys[i]); }, check);\n}\n\nexport const _iteratorSymbol = /*#__PURE__*/ typeof Symbol !== \"undefined\" ? (Symbol.iterator || (Symbol.iterator = Symbol(\"Symbol.iterator\"))) : \"@@iterator\";\n\n// Asynchronously iterate through an object's values\n// Uses for...of if the runtime supports it, otherwise iterates until length on a copy\nexport function _forOf(target, body, check) {\n\tif (typeof target[_iteratorSymbol] === \"function\") {\n\t\tvar iterator = target[_iteratorSymbol](), step, pact, reject;\n\t\tfunction _cycle(result) {\n\t\t\ttry {\n\t\t\t\twhile (!(step = iterator.next()).done && (!check || !check())) {\n\t\t\t\t\tresult = body(step.value);\n\t\t\t\t\tif (result && result.then) {\n\t\t\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\t\t\tresult = result.v;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tresult.then(_cycle, reject || (reject = _settle.bind(null, pact = new _Pact(), 2)));\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (pact) {\n\t\t\t\t\t_settle(pact, 1, result);\n\t\t\t\t} else {\n\t\t\t\t\tpact = result;\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\t_settle(pact || (pact = new _Pact()), 2, e);\n\t\t\t}\n\t\t}\n\t\t_cycle();\n\t\tif (iterator.return) {\n\t\t\tvar _fixup = function(value) {\n\t\t\t\ttry {\n\t\t\t\t\tif (!step.done) {\n\t\t\t\t\t\titerator.return();\n\t\t\t\t\t}\n\t\t\t\t} catch(e) {\n\t\t\t\t}\n\t\t\t\treturn value;\n\t\t\t}\n\t\t\tif (pact && pact.then) {\n\t\t\t\treturn pact.then(_fixup, function(e) {\n\t\t\t\t\tthrow _fixup(e);\n\t\t\t\t});\n\t\t\t}\n\t\t\t_fixup();\n\t\t}\n\t\treturn pact;\n\t}\n\t// No support for Symbol.iterator\n\tif (!(\"length\" in target)) {\n\t\tthrow new TypeError(\"Object is not iterable\");\n\t}\n\t// Handle live collections properly\n\tvar values = [];\n\tfor (var i = 0; i < target.length; i++) {\n\t\tvalues.push(target[i]);\n\t}\n\treturn _forTo(values, function(i) { return body(values[i]); }, check);\n}\n\nexport const _asyncIteratorSymbol = /*#__PURE__*/ typeof Symbol !== \"undefined\" ? (Symbol.asyncIterator || (Symbol.asyncIterator = Symbol(\"Symbol.asyncIterator\"))) : \"@@asyncIterator\";\n\n// Asynchronously iterate on a value using it's async iterator if present, or its synchronous iterator if missing\nexport function _forAwaitOf(target, body, check) {\n\tif (typeof target[_asyncIteratorSymbol] === \"function\") {\n\t\tvar pact = new _Pact();\n\t\tvar iterator = target[_asyncIteratorSymbol]();\n\t\titerator.next().then(_resumeAfterNext).then(void 0, _reject);\n\t\treturn pact;\n\t\tfunction _resumeAfterBody(result) {\n\t\t\tif (check && check()) {\n\t\t\t\treturn _settle(pact, 1, iterator.return ? iterator.return().then(function() { return result; }) : result);\n\t\t\t}\n\t\t\titerator.next().then(_resumeAfterNext).then(void 0, _reject);\n\t\t}\n\t\tfunction _resumeAfterNext(step) {\n\t\t\tif (step.done) {\n\t\t\t\t_settle(pact, 1);\n\t\t\t} else {\n\t\t\t\tPromise.resolve(body(step.value)).then(_resumeAfterBody).then(void 0, _reject);\n\t\t\t}\n\t\t}\n\t\tfunction _reject(error) {\n\t\t\t_settle(pact, 2, iterator.return ? iterator.return().then(function() { return error; }) : error);\n\t\t}\n\t}\n\treturn Promise.resolve(_forOf(target, function(value) { return Promise.resolve(value).then(body); }, check));\n}\n\n// Asynchronously implement a generic for loop\nexport function _for(test, update, body) {\n\tvar stage;\n\tfor (;;) {\n\t\tvar shouldContinue = test();\n\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\tshouldContinue = shouldContinue.v;\n\t\t}\n\t\tif (!shouldContinue) {\n\t\t\treturn result;\n\t\t}\n\t\tif (shouldContinue.then) {\n\t\t\tstage = 0;\n\t\t\tbreak;\n\t\t}\n\t\tvar result = body();\n\t\tif (result && result.then) {\n\t\t\tif (_isSettledPact(result)) {\n\t\t\t\tresult = result.s;\n\t\t\t} else {\n\t\t\t\tstage = 1;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tif (update) {\n\t\t\tvar updateValue = update();\n\t\t\tif (updateValue && updateValue.then && !_isSettledPact(updateValue)) {\n\t\t\t\tstage = 2;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\tvar pact = new _Pact();\n\tvar reject = _settle.bind(null, pact, 2);\n\t(stage === 0 ? shouldContinue.then(_resumeAfterTest) : stage === 1 ? result.then(_resumeAfterBody) : updateValue.then(_resumeAfterUpdate)).then(void 0, reject);\n\treturn pact;\n\tfunction _resumeAfterBody(value) {\n\t\tresult = value;\n\t\tdo {\n\t\t\tif (update) {\n\t\t\t\tupdateValue = update();\n\t\t\t\tif (updateValue && updateValue.then && !_isSettledPact(updateValue)) {\n\t\t\t\t\tupdateValue.then(_resumeAfterUpdate).then(void 0, reject);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t\tshouldContinue = test();\n\t\t\tif (!shouldContinue || (_isSettledPact(shouldContinue) && !shouldContinue.v)) {\n\t\t\t\t_settle(pact, 1, result);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (shouldContinue.then) {\n\t\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tresult = body();\n\t\t\tif (_isSettledPact(result)) {\n\t\t\t\tresult = result.v;\n\t\t\t}\n\t\t} while (!result || !result.then);\n\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t}\n\tfunction _resumeAfterTest(shouldContinue) {\n\t\tif (shouldContinue) {\n\t\t\tresult = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t} else {\n\t\t\t\t_resumeAfterBody(result);\n\t\t\t}\n\t\t} else {\n\t\t\t_settle(pact, 1, result);\n\t\t}\n\t}\n\tfunction _resumeAfterUpdate() {\n\t\tif (shouldContinue = test()) {\n\t\t\tif (shouldContinue.then) {\n\t\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t} else {\n\t\t\t\t_resumeAfterTest(shouldContinue);\n\t\t\t}\n\t\t} else {\n\t\t\t_settle(pact, 1, result);\n\t\t}\n\t}\n}\n\n// Asynchronously implement a do ... while loop\nexport function _do(body, test) {\n\tvar awaitBody;\n\tdo {\n\t\tvar result = body();\n\t\tif (result && result.then) {\n\t\t\tif (_isSettledPact(result)) {\n\t\t\t\tresult = result.v;\n\t\t\t} else {\n\t\t\t\tawaitBody = true;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tvar shouldContinue = test();\n\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\tshouldContinue = shouldContinue.v;\n\t\t}\n\t\tif (!shouldContinue) {\n\t\t\treturn result;\n\t\t}\n\t} while (!shouldContinue.then);\n\tconst pact = new _Pact();\n\tconst reject = _settle.bind(null, pact, 2);\n\t(awaitBody ? result.then(_resumeAfterBody) : shouldContinue.then(_resumeAfterTest)).then(void 0, reject);\n\treturn pact;\n\tfunction _resumeAfterBody(value) {\n\t\tresult = value;\n\t\tfor (;;) {\n\t\t\tshouldContinue = test();\n\t\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\t\tshouldContinue = shouldContinue.v;\n\t\t\t}\n\t\t\tif (!shouldContinue) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (shouldContinue.then) {\n\t\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tresult = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\tresult = result.v;\n\t\t\t\t} else {\n\t\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t_settle(pact, 1, result);\n\t}\n\tfunction _resumeAfterTest(shouldContinue) {\n\t\tif (shouldContinue) {\n\t\t\tdo {\n\t\t\t\tresult = body();\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\t\tresult = result.v;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tshouldContinue = test();\n\t\t\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\t\t\tshouldContinue = shouldContinue.v;\n\t\t\t\t}\n\t\t\t\tif (!shouldContinue) {\n\t\t\t\t\t_settle(pact, 1, result);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t} while (!shouldContinue.then);\n\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t} else {\n\t\t\t_settle(pact, 1, result);\n\t\t}\n\t}\n}\n\n// Asynchronously implement a switch statement\nexport function _switch(discriminant, cases) {\n\tvar dispatchIndex = -1;\n\tvar awaitBody;\n\touter: {\n\t\tfor (var i = 0; i < cases.length; i++) {\n\t\t\tvar test = cases[i][0];\n\t\t\tif (test) {\n\t\t\t\tvar testValue = test();\n\t\t\t\tif (testValue && testValue.then) {\n\t\t\t\t\tbreak outer;\n\t\t\t\t}\n\t\t\t\tif (testValue === discriminant) {\n\t\t\t\t\tdispatchIndex = i;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Found the default case, set it as the pending dispatch case\n\t\t\t\tdispatchIndex = i;\n\t\t\t}\n\t\t}\n\t\tif (dispatchIndex !== -1) {\n\t\t\tdo {\n\t\t\t\tvar body = cases[dispatchIndex][1];\n\t\t\t\twhile (!body) {\n\t\t\t\t\tdispatchIndex++;\n\t\t\t\t\tbody = cases[dispatchIndex][1];\n\t\t\t\t}\n\t\t\t\tvar result = body();\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tawaitBody = true;\n\t\t\t\t\tbreak outer;\n\t\t\t\t}\n\t\t\t\tvar fallthroughCheck = cases[dispatchIndex][2];\n\t\t\t\tdispatchIndex++;\n\t\t\t} while (fallthroughCheck && !fallthroughCheck());\n\t\t\treturn result;\n\t\t}\n\t}\n\tconst pact = new _Pact();\n\tconst reject = _settle.bind(null, pact, 2);\n\t(awaitBody ? result.then(_resumeAfterBody) : testValue.then(_resumeAfterTest)).then(void 0, reject);\n\treturn pact;\n\tfunction _resumeAfterTest(value) {\n\t\tfor (;;) {\n\t\t\tif (value === discriminant) {\n\t\t\t\tdispatchIndex = i;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (++i === cases.length) {\n\t\t\t\tif (dispatchIndex !== -1) {\n\t\t\t\t\tbreak;\n\t\t\t\t} else {\n\t\t\t\t\t_settle(pact, 1, result);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t\ttest = cases[i][0];\n\t\t\tif (test) {\n\t\t\t\tvalue = test();\n\t\t\t\tif (value && value.then) {\n\t\t\t\t\tvalue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tdispatchIndex = i;\n\t\t\t}\n\t\t}\n\t\tdo {\n\t\t\tvar body = cases[dispatchIndex][1];\n\t\t\twhile (!body) {\n\t\t\t\tdispatchIndex++;\n\t\t\t\tbody = cases[dispatchIndex][1];\n\t\t\t}\n\t\t\tvar result = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tvar fallthroughCheck = cases[dispatchIndex][2];\n\t\t\tdispatchIndex++;\n\t\t} while (fallthroughCheck && !fallthroughCheck());\n\t\t_settle(pact, 1, result);\n\t}\n\tfunction _resumeAfterBody(result) {\n\t\tfor (;;) {\n\t\t\tvar fallthroughCheck = cases[dispatchIndex][2];\n\t\t\tif (!fallthroughCheck || fallthroughCheck()) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tdispatchIndex++;\n\t\t\tvar body = cases[dispatchIndex][1];\n\t\t\twhile (!body) {\n\t\t\t\tdispatchIndex++;\n\t\t\t\tbody = cases[dispatchIndex][1];\n\t\t\t}\n\t\t\tresult = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\t_settle(pact, 1, result);\n\t}\n}\n\n// Asynchronously call a function and pass the result to explicitly passed continuations\nexport function _call(body, then, direct) {\n\tif (direct) {\n\t\treturn then ? then(body()) : body();\n\t}\n\ttry {\n\t\tvar result = Promise.resolve(body());\n\t\treturn then ? result.then(then) : result;\n\t} catch (e) {\n\t\treturn Promise.reject(e);\n\t}\n}\n\n// Asynchronously call a function and swallow the result\nexport function _callIgnored(body, direct) {\n\treturn _call(body, _empty, direct);\n}\n\n// Asynchronously call a function and pass the result to explicitly passed continuations\nexport function _invoke(body, then) {\n\tvar result = body();\n\tif (result && result.then) {\n\t\treturn result.then(then);\n\t}\n\treturn then(result);\n}\n\n// Asynchronously call a function and swallow the result\nexport function _invokeIgnored(body) {\n\tvar result = body();\n\tif (result && result.then) {\n\t\treturn result.then(_empty);\n\t}\n}\n\n// Asynchronously call a function and send errors to recovery continuation\nexport function _catch(body, recover) {\n\ttry {\n\t\tvar result = body();\n\t} catch(e) {\n\t\treturn recover(e);\n\t}\n\tif (result && result.then) {\n\t\treturn result.then(void 0, recover);\n\t}\n\treturn result;\n}\n\n// Asynchronously await a promise and pass the result to a finally continuation\nexport function _finallyRethrows(body, finalizer) {\n\ttry {\n\t\tvar result = body();\n\t} catch (e) {\n\t\treturn finalizer(true, e);\n\t}\n\tif (result && result.then) {\n\t\treturn result.then(finalizer.bind(null, false), finalizer.bind(null, true));\n\t}\n\treturn finalizer(false, result);\n}\n\n// Asynchronously await a promise and invoke a finally continuation that always overrides the result\nexport function _finally(body, finalizer) {\n\ttry {\n\t\tvar result = body();\n\t} catch (e) {\n\t\treturn finalizer();\n\t}\n\tif (result && result.then) {\n\t\treturn result.then(finalizer, finalizer);\n\t}\n\treturn finalizer();\n}\n\n// Rethrow or return a value from a finally continuation\nexport function _rethrow(thrown, value) {\n\tif (thrown)\n\t\tthrow value;\n\treturn value;\n}\n\n// Empty function to implement break and other control flow that ignores asynchronous results\nexport function _empty() {\n}\n\n// Sentinel value for early returns in generators \nexport const _earlyReturn = /*#__PURE__*/ {};\n\n// Asynchronously call a function and send errors to recovery continuation, skipping early returns\nexport function _catchInGenerator(body, recover) {\n\treturn _catch(body, function(e) {\n\t\tif (e === _earlyReturn) {\n\t\t\tthrow e;\n\t\t}\n\t\treturn recover(e);\n\t});\n}\n\n// Asynchronous generator class; accepts the entrypoint of the generator, to which it passes itself when the generator should start\nexport const _AsyncGenerator = /*#__PURE__*/(function() {\n\tfunction _AsyncGenerator(entry) {\n\t\tthis._entry = entry;\n\t\tthis._pact = null;\n\t\tthis._resolve = null;\n\t\tthis._return = null;\n\t\tthis._promise = null;\n\t}\n\n\tfunction _wrapReturnedValue(value) {\n\t\treturn { value: value, done: true };\n\t}\n\tfunction _wrapYieldedValue(value) {\n\t\treturn { value: value, done: false };\n\t}\n\n\t_AsyncGenerator.prototype._yield = function(value) {\n\t\t// Yield the value to the pending next call\n\t\tthis._resolve(value && value.then ? value.then(_wrapYieldedValue) : _wrapYieldedValue(value));\n\t\t// Return a pact for an upcoming next/return/throw call\n\t\treturn this._pact = new _Pact();\n\t};\n\t_AsyncGenerator.prototype.next = function(value) {\n\t\t// Advance the generator, starting it if it has yet to be started\n\t\tconst _this = this;\n\t\treturn _this._promise = new Promise(function (resolve) {\n\t\t\tconst _pact = _this._pact;\n\t\t\tif (_pact === null) {\n\t\t\t\tconst _entry = _this._entry;\n\t\t\t\tif (_entry === null) {\n\t\t\t\t\t// Generator is started, but not awaiting a yield expression\n\t\t\t\t\t// Abandon the next call!\n\t\t\t\t\treturn resolve(_this._promise);\n\t\t\t\t}\n\t\t\t\t// Start the generator\n\t\t\t\t_this._entry = null;\n\t\t\t\t_this._resolve = resolve;\n\t\t\t\tfunction returnValue(value) {\n\t\t\t\t\t_this._resolve(value && value.then ? value.then(_wrapReturnedValue) : _wrapReturnedValue(value));\n\t\t\t\t\t_this._pact = null;\n\t\t\t\t\t_this._resolve = null;\n\t\t\t\t}\n\t\t\t\tvar result = _entry(_this);\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tresult.then(returnValue, function(error) {\n\t\t\t\t\t\tif (error === _earlyReturn) {\n\t\t\t\t\t\t\treturnValue(_this._return);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tconst pact = new _Pact();\n\t\t\t\t\t\t\t_this._resolve(pact);\n\t\t\t\t\t\t\t_this._pact = null;\n\t\t\t\t\t\t\t_this._resolve = null;\n\t\t\t\t\t\t\t_resolve(pact, 2, error);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\treturnValue(result);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Generator is started and a yield expression is pending, settle it\n\t\t\t\t_this._pact = null;\n\t\t\t\t_this._resolve = resolve;\n\t\t\t\t_settle(_pact, 1, value);\n\t\t\t}\n\t\t});\n\t};\n\t_AsyncGenerator.prototype.return = function(value) {\n\t\t// Early return from the generator if started, otherwise abandons the generator\n\t\tconst _this = this;\n\t\treturn _this._promise = new Promise(function (resolve) {\n\t\t\tconst _pact = _this._pact;\n\t\t\tif (_pact === null) {\n\t\t\t\tif (_this._entry === null) {\n\t\t\t\t\t// Generator is started, but not awaiting a yield expression\n\t\t\t\t\t// Abandon the return call!\n\t\t\t\t\treturn resolve(_this._promise);\n\t\t\t\t}\n\t\t\t\t// Generator is not started, abandon it and return the specified value\n\t\t\t\t_this._entry = null;\n\t\t\t\treturn resolve(value && value.then ? value.then(_wrapReturnedValue) : _wrapReturnedValue(value));\n\t\t\t}\n\t\t\t// Settle the yield expression with a rejected \"early return\" value\n\t\t\t_this._return = value;\n\t\t\t_this._resolve = resolve;\n\t\t\t_this._pact = null;\n\t\t\t_settle(_pact, 2, _earlyReturn);\n\t\t});\n\t};\n\t_AsyncGenerator.prototype.throw = function(error) {\n\t\t// Inject an exception into the pending yield expression\n\t\tconst _this = this;\n\t\treturn _this._promise = new Promise(function (resolve, reject) {\n\t\t\tconst _pact = _this._pact;\n\t\t\tif (_pact === null) {\n\t\t\t\tif (_this._entry === null) {\n\t\t\t\t\t// Generator is started, but not awaiting a yield expression\n\t\t\t\t\t// Abandon the throw call!\n\t\t\t\t\treturn resolve(_this._promise);\n\t\t\t\t}\n\t\t\t\t// Generator is not started, abandon it and return a rejected Promise containing the error\n\t\t\t\t_this._entry = null;\n\t\t\t\treturn reject(error);\n\t\t\t}\n\t\t\t// Settle the yield expression with the value as a rejection\n\t\t\t_this._resolve = resolve;\n\t\t\t_this._pact = null;\n\t\t\t_settle(_pact, 2, error);\n\t\t});\n\t};\n\n\t_AsyncGenerator.prototype[_asyncIteratorSymbol] = function() {\n\t\treturn this;\n\t};\n\t\n\treturn _AsyncGenerator;\n})();\n","import { Filter } from \"../types/Filter\"\r\n\r\nexport const TINY_MCE_API_KEY =\r\n \"h6l5ro4mqd0eo2mmhxnt3sxqnlx89uz7124h2rwcus8yukv5\"\r\n\r\nexport const ACCESS_TOKEN = \"ACCESS_TOKEN\"\r\n\r\nexport const DEFAULT_PAGE_SIZE_VALUES = [\r\n { label: \"10\", value: 10 },\r\n { label: \"20\", value: 20 },\r\n { label: \"30\", value: 30 }\r\n]\r\n\r\nexport const DEFAULT_PAGE_SIZE = {\r\n label: \"10\",\r\n value: 10\r\n}\r\n\r\nexport const DEFAULT_FILTER: Filter = {\r\n searchString: \"\",\r\n currentPage: 1,\r\n pageSize: DEFAULT_PAGE_SIZE.value,\r\n sortBy: \"\",\r\n sortOrder: \"ASC\",\r\n name: \"\"\r\n}\r\n\r\nexport const COLORS = {\r\n DANGER: \"#dc3545\",\r\n WARNING: \"#ffc107\",\r\n SUCCESS: \"#28a745\",\r\n INFO: \"#007bff\"\r\n}\r\n\r\nexport const DATE_FORMAT = \"yyyy-MM-dd\"\r\n\r\nexport const DATE_MIN_VALUE = \"0001-01-01T00:00:00\"\r\n\r\nexport const LICENSE_AGGRID =\r\n \"Alhanko&Johnson_BASE23_single_1_Devs__22_November_2020_[v2]_MTYwNjAwMzIwMDAwMA==d452f38afc893671cad92795e95d52a1\"\r\n\r\nexport const BASE_URL = (() => {\r\n const windowUrl = window.location.href\r\n const url = `${windowUrl.split(\"//\")[0]}//${\r\n windowUrl.split(\"//\")[1].split(\"/\")[0]\r\n }`\r\n return url\r\n})()\r\n\r\nexport const QUESTION_TYPES_OPTIONS = [\r\n { label: \"Single choice\", value: \"SingleChoice\" },\r\n { label: \"Multiple choice\", value: \"MultipleChoice\" },\r\n { label: \"Text input\", value: \"TextInput\" },\r\n { label: \"Slider\", value: \"Slider\" },\r\n { label: \"Progress bar\", value: \"ProgressBar\" },\r\n { label: \"Star rating\", value: \"StarRating\" },\r\n { label: \"Text input with suggestions\", value: \"TextInputWithSuggestions\" }\r\n]\r\n\r\nexport const QUESTION_TYPES = {\r\n SINGLE_CHOICE: \"SingleChoice\",\r\n MULTIPLE_CHOICE: \"MultipleChoice\",\r\n TEXT_INPUT: \"TextInput\",\r\n SLIDER: \"Slider\",\r\n PROGRESS_BAR: \"ProgressBar\",\r\n STAR_RATING: \"StarRating\",\r\n TEXT_INPUT_WITH_SUGGESTIONS: \"TextInputWithSuggestions\"\r\n}\r\n\r\nexport const STAR_OPTIONS = [\r\n { label: 2, value: 2 },\r\n { label: 3, value: 3 },\r\n { label: 4, value: 4 },\r\n { label: 5, value: 5 }\r\n]\r\n\r\nexport const ANSWER_EDITOR_HEIGHT = 150\r\n\r\nexport const USER_ROLE = [\"Admin\", \"Teacher\", \"Student\"]\r\n","import { ACCESS_TOKEN } from \"./constants\"\r\n\r\nexport default () => {\r\n try {\r\n return localStorage.getItem(ACCESS_TOKEN);\r\n } catch (err) {\r\n return null;\r\n }\r\n}","import { createAction } from \"@reduxjs/toolkit\"\r\n\r\nexport const setLoading = createAction<boolean | undefined>(\"common/setLoading\")\r\n\r\nexport const setModal = createAction<any>(\"common/setModal\")\r\n\r\nexport const setUser = createAction<any>(\"common/setUser\")\r\n","export default (params: any) => {\r\n return Object.keys(params)\r\n .filter(key => params[key] || params[key] === 0 || params[key] === false)\r\n .map(key => {\r\n if (Array.isArray(params[key])) {\r\n return params[key].map((i: any) => `${encodeURIComponent(key)}=${encodeURIComponent(i)}`).join('&')\r\n }\r\n return `${encodeURIComponent(key)}=${encodeURIComponent(params[key])}`\r\n }).join('&')\r\n}","import axios from \"axios\"\r\n\r\nimport encodeParams from \"../utils/encodeParams\"\r\nimport { BASE_URL } from \"../utils/constants\"\r\nimport getAccessToken from \"../utils/getAccessToken\"\r\n\r\nexport const api: any = axios.create({\r\n baseURL: BASE_URL,\r\n timeout: 0,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n paramsSerializer: params => {\r\n return encodeParams(params)\r\n }\r\n});\r\n \r\nexport const apiUpload: any = axios.create({\r\n baseURL: BASE_URL,\r\n timeout: 15000,\r\n headers: {\r\n \"Content-Type\": \"multipart/form-data\",\r\n }\r\n});\r\n \r\n[api, apiUpload].forEach(i => i.interceptors.request.use(\r\n (config: any) => {\r\n const token = getAccessToken();\r\n if (token) {\r\n config.headers.Authorization = `Bearer ${token}`;\r\n }\r\n return config\r\n },\r\n (error: any) => Promise.reject(error)\r\n))","import { api } from \"../services/api\"\r\nimport { BASE_URL } from \"../utils/constants\"\r\n\r\nconst ACCOUNT_URL = `${BASE_URL}/api/account`\r\n\r\nexport const logIn = (data: any) => api.post(`${ACCOUNT_URL}/login`, data)\r\n\r\nexport const checkToken = (token: string) =>\r\n api.post(`${ACCOUNT_URL}/checktoken`, { token })\r\n\r\nexport const getInfo = () => api.get(`${ACCOUNT_URL}/info`)\r\n","import { useCallback, useEffect } from \"react\"\r\nimport { useDispatch } from \"react-redux\"\r\nimport { useHistory } from \"react-router-dom\"\r\n\r\nimport { ACCESS_TOKEN } from \"../../../utils/constants\"\r\nimport getAccessToken from \"../../../utils/getAccessToken\"\r\nimport { setLoading, setUser } from \"../../../redux/commons/action\"\r\nimport { logIn } from \"../../../services/accountService\"\r\n\r\ntype LoginInfo = {\r\n email: string\r\n password: string\r\n}\r\n\r\nconst defaultInfo: LoginInfo = {\r\n email: \"\",\r\n password: \"\"\r\n}\r\n\r\nconst HOME_PAGE = \"/question-bank\"\r\n\r\nconst useLogin = () => {\r\n const dispatch = useDispatch()\r\n const history = useHistory()\r\n\r\n useEffect(() => {\r\n const token = getAccessToken()\r\n if (!!token) history.push(HOME_PAGE)\r\n }, [])\r\n\r\n const userLogin = useCallback(async (data: any) => {\r\n dispatch(setLoading(true))\r\n\r\n try {\r\n const res = await logIn(data)\r\n const { token, id, firstName, lastName, roles } = res.data\r\n localStorage.setItem(ACCESS_TOKEN, token)\r\n dispatch(\r\n setUser({\r\n id,\r\n firstName,\r\n lastName,\r\n roles\r\n })\r\n )\r\n history.push(HOME_PAGE)\r\n } catch (err) {\r\n // handle error\r\n localStorage.removeItem(ACCESS_TOKEN)\r\n }\r\n\r\n dispatch(setLoading(false))\r\n }, [])\r\n\r\n return { defaultInfo, userLogin }\r\n}\r\n\r\nexport default useLogin\r\n","import React from \"react\"\r\nimport CIcon from \"@coreui/icons-react\"\r\nimport {\r\n Button,\r\n Card,\r\n CardBody,\r\n CardGroup,\r\n Col,\r\n Container,\r\n Form,\r\n Input,\r\n InputGroup,\r\n InputGroupAddon,\r\n InputGroupText,\r\n Row\r\n} from \"reactstrap\"\r\nimport { Formik } from \"formik\"\r\nimport * as yup from \"yup\"\r\n\r\nimport ErrorHandler from \"../../../components/Alerts/ErrorHandler\"\r\nimport useLogin from \"../hooks/useLogin\"\r\n\r\nconst schema = yup.object({\r\n email: yup.string().email(\"Email is invalid\").required(\"Email is required\"),\r\n password: yup.string().required(\"Password is required\")\r\n})\r\n\r\nconst Login = () => {\r\n const { defaultInfo, userLogin } = useLogin()\r\n\r\n return (\r\n <div className=\"c-app c-default-layout flex-row align-items-center animated fadeIn\">\r\n <Formik\r\n initialValues={defaultInfo}\r\n enableReinitialize\r\n validationSchema={schema}\r\n onSubmit={values => {\r\n userLogin(values)\r\n }}\r\n >\r\n {formikProps => {\r\n const {\r\n handleChange,\r\n handleBlur,\r\n handleSubmit,\r\n values,\r\n touched,\r\n errors\r\n } = formikProps\r\n\r\n const emailError = touched.email && errors.email\r\n const passwordError = touched.password && errors.password\r\n\r\n return (\r\n <div className=\"w-100 flex-row align-items-center\">\r\n <Form onSubmit={handleSubmit}>\r\n <Container>\r\n <Row className=\"justify-content-center\">\r\n <Col md=\"4\">\r\n <CardGroup>\r\n <Card className=\"p-4\">\r\n <CardBody>\r\n <h1>Login</h1>\r\n <p className=\"text-muted d-flex align-items-center justify-content-between\">\r\n Sign In to your\r\n account\r\n </p>\r\n <InputGroup\r\n className={\r\n !emailError\r\n ? \"mb-3\"\r\n : \"\"\r\n }\r\n >\r\n <InputGroupAddon addonType=\"prepend\">\r\n <InputGroupText>\r\n <CIcon name=\"cil-user\" />\r\n </InputGroupText>\r\n </InputGroupAddon>\r\n <Input\r\n type=\"text\"\r\n name=\"email\"\r\n value={\r\n values.email\r\n }\r\n onChange={\r\n handleChange\r\n }\r\n onBlur={handleBlur(\r\n \"email\"\r\n )}\r\n placeholder=\"Email\"\r\n required\r\n />\r\n </InputGroup>\r\n {emailError && (\r\n <ErrorHandler\r\n text={\r\n errors.email as string\r\n }\r\n />\r\n )}\r\n <InputGroup\r\n className={\r\n !passwordError\r\n ? \"mb-4\"\r\n : \"\"\r\n }\r\n >\r\n <InputGroupAddon addonType=\"prepend\">\r\n <InputGroupText>\r\n <CIcon name=\"cil-lock-locked\" />\r\n </InputGroupText>\r\n </InputGroupAddon>\r\n <Input\r\n type=\"password\"\r\n name=\"password\"\r\n onChange={\r\n handleChange\r\n }\r\n onBlur={handleBlur(\r\n \"password\"\r\n )}\r\n placeholder=\"Password\"\r\n required\r\n />\r\n </InputGroup>\r\n {passwordError && (\r\n <ErrorHandler\r\n text={\r\n errors.password as string\r\n }\r\n />\r\n )}\r\n <Row>\r\n <Col xs=\"6\">\r\n <Button\r\n color=\"primary\"\r\n className=\"px-4\"\r\n type=\"submit\"\r\n >\r\n Login\r\n </Button>\r\n </Col>\r\n <Col\r\n xs=\"6\"\r\n className=\"text-right\"\r\n />\r\n </Row>\r\n </CardBody>\r\n </Card>\r\n </CardGroup>\r\n </Col>\r\n </Row>\r\n </Container>\r\n </Form>\r\n </div>\r\n )\r\n }}\r\n </Formik>\r\n </div>\r\n )\r\n}\r\n\r\nexport default Login\r\n","import React from 'react'\r\nimport { useSelector, useDispatch } from 'react-redux'\r\nimport {\r\n CCreateElement,\r\n CSidebar,\r\n CSidebarBrand,\r\n CSidebarNav,\r\n CSidebarNavDivider,\r\n CSidebarNavTitle,\r\n CSidebarMinimizer,\r\n CSidebarNavDropdown,\r\n CSidebarNavItem\r\n} from '@coreui/react'\r\n\r\nimport CIcon from '@coreui/icons-react'\r\n\r\nconst TheSidebar = ({ navigation }: any) => {\r\n const dispatch = useDispatch()\r\n const show = useSelector<any>((state) => state.sidebarShow)\r\n return (\r\n <CSidebar\r\n show={show as any}\r\n onShowChange={(val: any) => dispatch({ type: 'set', sidebarShow: val })}\r\n >\r\n <CSidebarBrand className='d-md-down-none' to='/'>\r\n <CIcon\r\n className='c-sidebar-brand-full'\r\n name='logo-negative'\r\n height={35}\r\n />\r\n <CIcon\r\n className='c-sidebar-brand-minimized'\r\n name='sygnet'\r\n height={35}\r\n />\r\n </CSidebarBrand>\r\n <CSidebarNav>\r\n <CCreateElement\r\n items={navigation}\r\n components={{\r\n CSidebarNavDivider,\r\n CSidebarNavDropdown,\r\n CSidebarNavItem,\r\n CSidebarNavTitle\r\n }}\r\n />\r\n </CSidebarNav>\r\n <CSidebarMinimizer id='sidebar-minimizer' className='c-d-md-down-none' />\r\n </CSidebar>\r\n )\r\n}\r\n\r\nexport default TheSidebar\r\n","import React, { useCallback } from \"react\"\r\nimport { useDispatch } from \"react-redux\"\r\nimport { useHistory } from \"react-router-dom\"\r\n\r\nimport {\r\n CDropdown,\r\n CDropdownItem,\r\n CDropdownMenu,\r\n CDropdownToggle,\r\n CImg\r\n} from \"@coreui/react\"\r\nimport CIcon from \"@coreui/icons-react\"\r\n\r\nimport { setUser } from \"../redux/commons/action\"\r\nimport { ACCESS_TOKEN } from \"../utils/constants\"\r\n\r\nconst TheHeaderDropdown = () => {\r\n const dispatch = useDispatch()\r\n const history = useHistory()\r\n\r\n const signOut = useCallback(() => {\r\n localStorage.removeItem(ACCESS_TOKEN)\r\n dispatch(setUser(null))\r\n history.push(\"/login\")\r\n }, [])\r\n\r\n return (\r\n <CDropdown inNav className=\"c-header-nav-items mx-2\">\r\n <CDropdownToggle className=\"c-header-nav-link\" caret={false}>\r\n <div className=\"c-avatar\">\r\n <CImg\r\n src=\"avatars/6.jpg\"\r\n className=\"c-avatar-img\"\r\n alt=\"admin@bootstrapmaster.com\"\r\n />\r\n </div>\r\n </CDropdownToggle>\r\n <CDropdownMenu className=\"pt-0\" placement=\"bottom-end\">\r\n <CDropdownItem onClick={signOut}>\r\n <CIcon name=\"cil-lock-locked\" className=\"mfe-2\" />\r\n Sign Out\r\n </CDropdownItem>\r\n </CDropdownMenu>\r\n </CDropdown>\r\n )\r\n}\r\n\r\nexport default TheHeaderDropdown\r\n","export const toogleSidebar = () => {\r\n // @ts-ignore\r\n document.querySelector('#sidebar-minimizer').click()\r\n}\r\n","import React from 'react'\r\nimport { CHeader, CToggler, CHeaderBrand, CHeaderNav } from '@coreui/react'\r\nimport CIcon from '@coreui/icons-react'\r\n\r\nimport TheHeaderDropdown from './TheHeaderDropdown'\r\nimport { toogleSidebar } from '../utils/index'\r\n\r\nconst TheHeader = () => {\r\n return (\r\n <CHeader withSubheader>\r\n <CToggler\r\n inHeader\r\n className='ml-md-3 d-lg-none'\r\n onClick={toogleSidebar}\r\n />\r\n <CToggler\r\n inHeader\r\n className='ml-3 d-md-down-none'\r\n onClick={toogleSidebar}\r\n />\r\n <CHeaderBrand className='mx-auto d-lg-none' to='/'>\r\n <CIcon name='logo' height='48' alt='Logo' />\r\n </CHeaderBrand>\r\n\r\n <CHeaderNav className='ml-auto px-3'>\r\n <TheHeaderDropdown />\r\n </CHeaderNav>\r\n </CHeader>\r\n )\r\n}\r\n\r\nexport default TheHeader\r\n","import React, { FC } from \"react\"\nimport { Link } from \"react-router-dom\"\n\nconst NotFound: FC = () => (\n <div className=\"not-found\">\n <div className=\"clearfix\">\n <h1 className=\"float-left display-3 mr-4\">404</h1>\n <div className=\"float-left\">\n <h4 className=\"pt-3\">Oops! You are lost.</h4>\n <p className=\"text-muted mb-2\">\n The page you are looking for was not found.\n </p>\n <div>\n <Link to=\"/\">Go to home</Link>\n </div>\n </div>\n </div>\n </div>\n)\n\nexport default NotFound\n","import React, { Suspense } from \"react\"\r\nimport { Route, Switch } from \"react-router-dom\"\r\nimport { CContainer } from \"@coreui/react\"\r\n\r\nimport NotFound from \"../containers/Commons/NotFound\"\r\n\r\nconst loading = (\r\n <div className=\"pt-3 text-center\">\r\n <div className=\"sk-spinner sk-spinner-pulse\" />\r\n </div>\r\n)\r\n\r\nconst TheContent = ({ routes }: any) => {\r\n return (\r\n <main className=\"c-main\">\r\n <CContainer fluid className=\"h-100\">\r\n <Suspense fallback={loading}>\r\n <Switch>\r\n {routes.map((route: any, idx: any) => (\r\n <Route\r\n key={idx}\r\n path={route.path}\r\n exact={route.exact}\r\n component={route.component}\r\n />\r\n ))}\r\n <Route path=\"*\" component={NotFound} />\r\n </Switch>\r\n </Suspense>\r\n </CContainer>\r\n </main>\r\n )\r\n}\r\n\r\nexport default React.memo(TheContent)\r\n","import React, { FC, CSSProperties } from \"react\"\r\nimport { useSelector } from \"react-redux\"\r\n\r\nconst loadingStyle: CSSProperties = {\r\n minWidth: \"100vw\",\r\n minHeight: \"100vh\",\r\n position: \"fixed\",\r\n top: 0,\r\n left: 0,\r\n zIndex: 999999999,\r\n backgroundColor: \"rgba(0, 0, 0, 0.4)\",\r\n display: \"flex\",\r\n justifyContent: \"center\",\r\n alignItems: \"center\"\r\n}\r\n\r\nconst Loading: FC = () => {\r\n const isLoading = useSelector((state: any) => state.common.isLoading)\r\n\r\n return isLoading ? (\r\n <div style={loadingStyle}>\r\n <div className=\"spinner-border text-secondary\" role=\"status\">\r\n <span className=\"sr-only\">Loading...</span>\r\n </div>\r\n </div>\r\n ) : null\r\n}\r\n\r\nexport default Loading","import getAccessToken from \"./getAccessToken\"\nimport { checkToken } from \"../services/accountService\"\n\nconst firstCheckToken = async () => {\n try {\n const token = getAccessToken()\n if (!token) return false\n\n const tokenStatus = await checkToken(token)\n if (!tokenStatus.data) return false\n\n return true\n } catch (err) {\n return false\n }\n}\n\nexport default firstCheckToken\n","const canAccess = (userRoles: any[], componentRoles: any[]) => {\r\n if (!Array.isArray(userRoles)) {\r\n return false\r\n }\r\n if (Array.isArray(componentRoles)) {\r\n const intersects = userRoles.filter(i => componentRoles.includes(i))\r\n return intersects.length > 0\r\n }\r\n return true\r\n}\r\n\r\nexport default canAccess\r\n","import React, { useEffect, useMemo } from \"react\"\r\nimport { useHistory } from \"react-router-dom\"\r\nimport { useDispatch, useSelector } from \"react-redux\"\r\n\r\nimport { setUser } from \"../redux/commons/action\"\r\n\r\nimport TheSidebar from \"./TheSidebar\"\r\nimport TheHeader from \"./TheHeader\"\r\nimport TheContent from \"./TheContent\"\r\nimport Loading from \"../components/Loading/Loading\"\r\n\r\nimport { ACCESS_TOKEN } from \"../utils/constants\"\r\nimport firstCheckToken from \"../utils/firstCheckToken\"\r\nimport canAccessRoute from \"../utils/canAccessRoute\"\r\nimport { getInfo } from \"../services/accountService\"\r\n\r\nconst TheLayout = ({ routes, navigation }: any) => {\r\n const history = useHistory()\r\n const dispatch = useDispatch()\r\n const user = useSelector((state: any) => state.common.user)\r\n\r\n const authRoutes = useMemo(() => {\r\n return routes.filter((route: any) =>\r\n canAccessRoute(user?.roles, route.roles)\r\n )\r\n }, [user])\r\n\r\n const authNavigations = useMemo(() => {\r\n return navigation.filter((nav: any) =>\r\n canAccessRoute(user?.roles, nav.roles)\r\n )\r\n }, [user])\r\n\r\n useEffect(() => {\r\n checkAuthentication()\r\n }, [])\r\n\r\n const checkAuthentication = async () => {\r\n try {\r\n const tokenStatus = await firstCheckToken()\r\n tokenStatus ? loadInfo() : resetAuth()\r\n } catch (err) {\r\n resetAuth()\r\n }\r\n }\r\n\r\n const loadInfo = async () => {\r\n try {\r\n const info = await getInfo()\r\n if (!info) {\r\n resetAuth()\r\n }\r\n\r\n dispatch(setUser(info.data))\r\n } catch (err) {\r\n resetAuth()\r\n }\r\n }\r\n\r\n const resetAuth = () => {\r\n localStorage.removeItem(ACCESS_TOKEN)\r\n history.push(\"/login\")\r\n }\r\n\r\n if (!user) {\r\n return <Loading />\r\n }\r\n\r\n return (\r\n <div className=\"c-app c-default-layout\">\r\n <TheSidebar navigation={authNavigations} />\r\n <div className=\"c-wrapper\">\r\n <TheHeader />\r\n <div className=\"c-body bg-white\">\r\n <TheContent routes={authRoutes} />\r\n </div>\r\n </div>\r\n </div>\r\n )\r\n}\r\n\r\nexport default TheLayout\r\n","import React, { CSSProperties, FC } from \"react\"\r\nimport { Row, Col } from \"reactstrap\"\r\ninterface Props {\r\n header: string,\r\n rootHeader?: string\r\n}\r\n\r\nconst headerStyle: CSSProperties = {\r\n borderBottom: \"1px solid gray\",\r\n paddingBottom: \"16px\"\r\n}\r\n\r\nconst headerTextStyle: CSSProperties = {\r\n fontSize: \"1.5rem\",\r\n textAlign: \"center\"\r\n}\r\n\r\nconst CommonHeader: FC<Props> = ({ header, rootHeader }) => {\r\n return <div style={headerStyle}>\r\n <Row>\r\n {rootHeader && <Col md={4}><span className=\"text-muted\" style={headerTextStyle}>{rootHeader}</span></Col>}\r\n <Col md={4}><span style={headerTextStyle}>{header}</span></Col>\r\n </Row>\r\n </div>\r\n}\r\n\r\nexport default CommonHeader","import React, { CSSProperties, FC } from 'react'\r\nimport { Button } from 'reactstrap'\r\nimport { FaPlus } from 'react-icons/fa'\r\n\r\ninterface Props {\r\n text?: string\r\n onClick?(): void\r\n}\r\n\r\nconst buttonTextStyle: CSSProperties = {\r\n fontWeight: 500\r\n}\r\n\r\nconst AddButton: FC<Props> = ({ text, onClick }: Props) => {\r\n return (\r\n <Button\r\n onClick={onClick}\r\n color='success'\r\n className='d-flex align-items-center'\r\n >\r\n <FaPlus />\r\n <span className='ml-2' style={buttonTextStyle}>\r\n {text}\r\n </span>\r\n </Button>\r\n )\r\n}\r\n\r\nexport default AddButton\r\n","import React, { FC } from \"react\"\r\nimport { FaTrashAlt } from \"react-icons/fa\"\r\ninterface Props {\r\n onClick: () => any\r\n}\r\n\r\nconst DeleteButtonIcon: FC<Props> = ({ onClick } : Props) => {\r\n return <div className=\"d-inline text-center cursor-pointer hover-opacity\" title=\"Delete\" onClick={onClick}>\r\n <FaTrashAlt />\r\n </div>\r\n}\r\n\r\nexport default DeleteButtonIcon\r\n","import React, { FC } from \"react\"\r\nimport { Button } from \"reactstrap\"\r\n\r\ninterface Props {\r\n label: string,\r\n onClick: () => any\r\n}\r\n\r\nconst LinkEditButton: FC<Props> = ({ label, onClick } : Props) => {\r\n return <Button \r\n color=\"link\"\r\n onClick={onClick}\r\n >\r\n {label}\r\n </Button>\r\n} \r\n\r\nexport default LinkEditButton","import React, { CSSProperties, FC } from \"react\"\nimport { Alert } from \"reactstrap\"\n\ninterface Props {\n label: string\n className?: string\n style?: CSSProperties\n}\n\nconst EmptyDataAlert: FC<Props> = ({ label, className, style }: Props) => {\n return (\n <Alert color=\"primary\" className={className} style={style}>\n No {label} to display\n </Alert>\n )\n}\n\nEmptyDataAlert.defaultProps = {\n className: \"\",\n style: {}\n}\n\nexport default EmptyDataAlert\n","import format from \"date-fns/format\"\r\n\r\nimport { DATE_FORMAT, DATE_MIN_VALUE } from \"../utils/constants\"\r\n\r\nexport default (time: string) => {\r\n if (time === DATE_MIN_VALUE) return \"\"\r\n try {\r\n const date = new Date(time).toLocaleString()\r\n return format(new Date(date), DATE_FORMAT)\r\n } catch {\r\n return \"\"\r\n }\r\n}","import { createAction } from \"@reduxjs/toolkit\"\r\n\r\nexport const setEmailTemplateList = createAction<boolean | undefined>(\"emailTemplate/setEmailTemplateList\")","import { BASE_URL } from \"../utils/constants\"\r\nimport { api } from \"./api\"\r\nimport { Filter } from \"../types/Filter\"\r\n\r\nconst EMAIL_TEMPLATE_URL = `${BASE_URL}/api/emailtemplate`\r\n\r\nexport const get = (filter: Filter) =>\r\n api.get(EMAIL_TEMPLATE_URL, { params: filter })\r\n\r\nexport const getById = (id: number) => api.get(`${EMAIL_TEMPLATE_URL}/${id}`)\r\n\r\nexport const create = (data: any) => api.post(EMAIL_TEMPLATE_URL, data)\r\n\r\nexport const update = (data: any) =>\r\n api.put(`${EMAIL_TEMPLATE_URL}/${data.id}`, data)\r\n\r\nexport const remove = (id: number) => api.delete(`${EMAIL_TEMPLATE_URL}/${id}`)\r\n","import { useState, useEffect, useCallback } from \"react\"\r\nimport { useSelector, useDispatch } from \"react-redux\"\r\nimport { useHistory } from \"react-router-dom\"\r\n\r\nimport { setLoading, setModal } from \"../../../redux/commons/action\"\r\nimport { setEmailTemplateList } from \"../../../redux/emailTemplates/action\"\r\nimport { DEFAULT_FILTER } from \"../../../utils/constants\"\r\nimport { Filter } from \"../../../types/Filter\"\r\n\r\nimport { get, remove } from \"../../../services/emailTemplateService\"\r\n\r\nconst EMAIL_TEMPLATE_URL = \"/email-template\"\r\nconst CREATE_TEMPLATE_URL = \"/create-email-template\"\r\n\r\nconst useEmailTemplateList = () => {\r\n const history = useHistory()\r\n const emailTemplateList = useSelector(\r\n (state: any) => state.emailTemplate.emailTemplateList\r\n )\r\n\r\n const [filters, setFilters] = useState<Filter>(DEFAULT_FILTER)\r\n const changeFilters = (updatedFilters: any) =>\r\n setFilters({\r\n ...filters,\r\n ...updatedFilters\r\n })\r\n\r\n const dispatch = useDispatch()\r\n\r\n const getData = useCallback(async () => {\r\n dispatch(setLoading(true))\r\n try {\r\n const res = await get(filters)\r\n dispatch(setEmailTemplateList(res.data.items))\r\n } catch (err) {\r\n alert(err.message)\r\n }\r\n dispatch(setLoading(false))\r\n }, [dispatch, filters])\r\n\r\n const removeData = useCallback((id: number) => {\r\n dispatch(setLoading(true))\r\n\r\n try {\r\n dispatch(\r\n setModal({\r\n isOpen: true,\r\n type: \"warning\",\r\n message: \"Do you want to remove this email template?\",\r\n onConfirm: async () => {\r\n await remove(id)\r\n // handle success case\r\n\r\n getData()\r\n }\r\n })\r\n )\r\n } catch (err) {\r\n alert(err.message)\r\n }\r\n\r\n dispatch(setLoading(false))\r\n }, [])\r\n\r\n const goToDetail = useCallback((id?: number) => {\r\n const url = !!id ? `${EMAIL_TEMPLATE_URL}/${id}` : CREATE_TEMPLATE_URL\r\n history.push(url)\r\n }, [])\r\n\r\n useEffect(() => {\r\n getData()\r\n }, [filters])\r\n\r\n return {\r\n emailTemplateList,\r\n filters,\r\n changeFilters,\r\n getData,\r\n removeData,\r\n goToDetail\r\n }\r\n}\r\n\r\nexport default useEmailTemplateList\r\n","import React, { FC } from \"react\"\r\nimport { Row, Col, Table } from \"reactstrap\"\r\n\r\nimport CommonHeader from \"../../../components/Headers/CommonHeader\"\r\nimport AddButton from \"../../../components/Buttons/AddButton\"\r\nimport DeleteButtonIcon from \"../../../components/Buttons/DeleteButtonIcon\"\r\nimport LinkEditButton from \"../../../components/Buttons/LinkEditButton\"\r\nimport EmptyDataAlert from \"../../../components/Alerts/EmptyDataAlert\"\r\n\r\nimport utcToLocalTime from \"../../../utils/utcToLocalTime\"\r\n\r\nimport useEmailTemplateList from \"../hooks/useEmailTemplateList\"\r\n\r\nconst header = \"Email template\"\r\nconst rootHeader = \"Send email\"\r\n\r\nconst testDataCategory = [\r\n { id: 1, name: \"Category1\" },\r\n { id: 2, name: \"Category2\" },\r\n { id: 3, name: \"Category3\" }\r\n]\r\n\r\nconst EmailTemplateList: FC = () => {\r\n const { emailTemplateList, removeData, goToDetail } = useEmailTemplateList()\r\n\r\n const onRemove = (id: number) => {\r\n removeData(id)\r\n }\r\n\r\n return (\r\n <div className=\"fadeIn animated\">\r\n <CommonHeader header={header} rootHeader={rootHeader} />\r\n <Row className=\"my-2\">\r\n <Col md={4}>\r\n <AddButton\r\n text=\"Create template\"\r\n onClick={() => goToDetail()}\r\n />\r\n </Col>\r\n </Row>\r\n <Row className=\"mb-2\">\r\n <Col md={8}>\r\n {emailTemplateList && emailTemplateList.length > 0 ? (\r\n <Table bordered hover striped responsive size=\"sm\">\r\n <thead>\r\n <tr>\r\n <th>Template name</th>\r\n <th>Category name</th>\r\n <th>Created date</th>\r\n <th>Comment</th>\r\n <th className=\"text-center\">Action</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n {emailTemplateList.map((record: any) => (\r\n <tr key={record.id}>\r\n <td>\r\n <LinkEditButton\r\n label={record.subject}\r\n onClick={() =>\r\n goToDetail(record.id)\r\n }\r\n />\r\n </td>\r\n <td>{record.categoryName}</td>\r\n <td className=\"align-middle\">\r\n {utcToLocalTime(record.createdAt)}\r\n </td>\r\n <td className=\"align-middle\">\r\n {record.comment}\r\n </td>\r\n <td className=\"text-center align-middle\">\r\n <DeleteButtonIcon\r\n onClick={() =>\r\n onRemove(record.id)\r\n }\r\n />\r\n </td>\r\n </tr>\r\n ))}\r\n </tbody>\r\n </Table>\r\n ) : (\r\n <EmptyDataAlert label=\"template\" />\r\n )}\r\n </Col>\r\n <Col md={4}>\r\n <Table bordered hover striped responsive size=\"sm\">\r\n <thead>\r\n <tr>\r\n <th>Category name</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n {testDataCategory.map(record => (\r\n <tr key={record.id}>\r\n <td>{record.name}</td>\r\n </tr>\r\n ))}\r\n </tbody>\r\n </Table>\r\n </Col>\r\n </Row>\r\n </div>\r\n )\r\n}\r\n\r\nexport default EmailTemplateList\r\n","import React, { FC, CSSProperties } from \"react\"\r\nimport { Row, Col, Button } from \"reactstrap\"\r\n\r\ninterface Props {\r\n confirmText: string,\r\n onConfirm: () => any,\r\n onCancel: () => any\r\n}\r\n\r\nconst style: CSSProperties = {\r\n width: \"100%\",\r\n position: \"fixed\",\r\n bottom: 0,\r\n backgroundColor: \"#fff\",\r\n borderTop: \"1px solid #ddd\",\r\n marginTop: \"20px\",\r\n marginLeft: \"-30px\",\r\n padding: \"8px\"\r\n}\r\n\r\nconst DetailActionButtons: FC<Props> = ({ confirmText, onConfirm, onCancel }: Props) => {\r\n return <Row\r\n form\r\n style={style}\r\n >\r\n <Col md={12}>\r\n <Button \r\n color=\"primary\"\r\n size=\"sm\"\r\n className=\"px-4 pl-1 mr-2\"\r\n onClick={onConfirm}\r\n >\r\n {confirmText}\r\n </Button>\r\n <Button\r\n size=\"sm\"\r\n className=\"px-4 mr-2 ml-2\"\r\n onClick={onCancel}\r\n >\r\n Cancel\r\n </Button>\r\n </Col>\r\n </Row>\r\n}\r\n\r\nexport default DetailActionButtons","import React, { FC } from \"react\"\r\nimport { FaPlus } from \"react-icons/fa\"\r\ninterface Props {\r\n onClick: () => any\r\n}\r\n\r\nconst AddButtonIcon: FC<Props> = ({ onClick } : Props) => {\r\n return <div className=\"d-inline text-center cursor-pointer hover-opacity\" title=\"Delete\" onClick={onClick}>\r\n <FaPlus />\r\n </div>\r\n}\r\n\r\nexport default AddButtonIcon\r\n","import React, { FC } from \"react\"\nimport { Table } from \"reactstrap\"\n\nimport AddButtonIcon from \"../../../components/Buttons/AddButtonIcon\"\n\nconst params = [\n { label: \"$USER_FIRST_NAME$\", meaning: \"User first name\" },\n { label: \"$USER_LAST_NAME$\", meaning: \"User last name\" }\n]\n\ninterface Props {\n onClick: any\n}\n\nconst MailSubject: FC<Props> = ({ onClick }: Props) => {\n return <Table bordered hover striped responsive size=\"sm\">\n <thead>\n <tr>\n <th>Params</th>\n <th>Meaning</th>\n <th />\n </tr>\n </thead>\n <tbody>\n {params.map(param => <tr key={param.label}>\n <td>{param.label}</td>\n <td>{param.meaning}</td>\n <td className=\"text-center\">\n <AddButtonIcon onClick={() => onClick(param)}/>\n </td>\n </tr>)}\n </tbody>\n </Table>\n}\n\nexport default MailSubject","import React from \"react\"\r\nimport Select from \"react-select\"\r\n\r\nconst options = [\r\n { label: \"Category 1\", value: 1 },\r\n { label: \"Category 2\", value: 2 },\r\n { label: \"Category 3\", value: 3 }\r\n]\r\n\r\nconst MailCategorySelector = (props: any) => {\r\n const { id } = props\r\n\r\n const initValue = !!id\r\n ? options.find(option => option.value === id) || null\r\n : null\r\n\r\n return <Select options={options} value={initValue} {...props} />\r\n}\r\n\r\nexport default MailCategorySelector\r\n","export default {\r\n height: 500,\r\n menubar: false,\r\n plugins: [\r\n \"advlist autolink lists link image charmap print preview anchor\",\r\n \"searchreplace visualblocks code fullscreen\",\r\n \"insertdatetime media table paste code help wordcount\"\r\n ],\r\n toolbar:\r\n \"undo redo | formatselect | bold italic backcolor | \\\r\n alignleft aligncenter alignright alignjustify | \\\r\n bullist numlist outdent indent | removeformat | help\"\r\n}","import { useState, useEffect, useCallback } from \"react\"\r\nimport { useDispatch } from \"react-redux\"\r\nimport { useHistory } from \"react-router-dom\"\r\n\r\nimport { setLoading } from \"../../../redux/commons/action\"\r\nimport { getById, update, create } from \"../../../services/emailTemplateService\"\r\n\r\ntype EmailTemplateDetail = {\r\n id?: number,\r\n subject: string,\r\n categoryId: number,\r\n comment: string,\r\n body: string\r\n}\r\n\r\nconst initValue: EmailTemplateDetail = {\r\n id: 0,\r\n subject: \"\",\r\n categoryId: 0,\r\n comment: \"\",\r\n body: \"\"\r\n}\r\n\r\nconst EMAIL_TEMPLATE_LIST_URL = \"/email-template\"\r\n\r\nconst useEmailTemplateDetail = (id?: number) => {\r\n let editorRef: any\r\n const dispatch = useDispatch()\r\n const history = useHistory()\r\n const [emailTemplateDetail, setEmailTemplateDetail] = useState<EmailTemplateDetail>(initValue)\r\n\r\n useEffect(() => {\r\n !!id && getData()\r\n }, [id])\r\n\r\n const getData = useCallback(async () => {\r\n dispatch(setLoading(true))\r\n\r\n try {\r\n const res = await getById(id as number)\r\n setEmailTemplateDetail(res.data)\r\n editorRef && editorRef.editor.execCommand(\"mceSetContent\", false, res.data.body)\r\n } catch(err) {\r\n alert(err.message)\r\n }\r\n\r\n dispatch(setLoading(false))\r\n }, [id])\r\n\r\n const setEditorRef = (node: any) => editorRef = node\r\n\r\n const addParams = (currentBody: string, params: any) => {\r\n const newValue = `${currentBody} ${params.label}`\r\n editorRef && editorRef.editor.execCommand(\"mceSetContent\", false, newValue)\r\n }\r\n\r\n const backToList = useCallback(() => {\r\n history.push(EMAIL_TEMPLATE_LIST_URL)\r\n }, [])\r\n\r\n const confirmData = useCallback(async (data: any) => {\r\n dispatch(setLoading(true))\r\n try {\r\n const next = !!id ? update : create\r\n\r\n await next(data)\r\n\r\n // handle success case\r\n\r\n backToList()\r\n } catch(err) {\r\n alert(err.message)\r\n }\r\n dispatch(setLoading(false))\r\n }, [id])\r\n\r\n return { emailTemplateDetail, setEditorRef, addParams, backToList, confirmData }\r\n}\r\n\r\nexport default useEmailTemplateDetail","import * as yup from \"yup\"\n\nconst schema = yup.object({\n subject: yup.string().required(\"Template subject is required\"),\n // temporary comment categoryId, waiting for backend\n // categoryId: yup.number()\n // .required(\"Template category is required\")\n // .test(\"test category id\", \"Template category is required\", (value: number) => value >= 1),\n comment: yup.string(),\n body: yup.string().required(\"Template body is required\")\n})\n\nexport default schema\n","import React, { FC } from \"react\"\r\nimport { Row, Col, Input, Label } from \"reactstrap\"\r\nimport { useParams } from \"react-router-dom\"\r\nimport { Editor } from \"@tinymce/tinymce-react\"\r\nimport { Formik } from \"formik\"\r\n\r\nimport CommonHeader from \"../../../components/Headers/CommonHeader\"\r\nimport DetailActionButtons from \"../../../components/Buttons/DetailActionButtons\"\r\nimport ErrorHandler from \"../../../components/Alerts/ErrorHandler\"\r\nimport MailParam from \"../components/MailParam\"\r\nimport MailCategorySelector from \"../../../components/Selectors/MailCategorySelectors\"\r\n\r\nimport editorConfig from \"../../../configs/editorConfig\"\r\nimport { TINY_MCE_API_KEY } from \"../../../utils/constants\"\r\n\r\nimport useEmailTemplateDetail from \"../hooks/useEmailTemplateDetail\"\r\nimport schema from \"../configs/emailTemplateSchema\"\r\n\r\nconst CREATE_TEMPLATE_HEADER = \"Create email template\"\r\nconst EDIT_TEMPLATE_HEADER = \"Edit email template\"\r\nconst rootHeader = \"Send email\"\r\n\r\nconst EmailTemplateDetail: FC = () => {\r\n const { id } = useParams<{ id: string }>()\r\n\r\n const {\r\n emailTemplateDetail,\r\n setEditorRef,\r\n addParams,\r\n backToList,\r\n confirmData\r\n } = useEmailTemplateDetail(parseInt(id))\r\n\r\n const header = !!id ? EDIT_TEMPLATE_HEADER : CREATE_TEMPLATE_HEADER\r\n\r\n const confirmText = !!id ? \"Update\" : \"Create\"\r\n\r\n return (\r\n <Formik\r\n initialValues={emailTemplateDetail}\r\n enableReinitialize\r\n validationSchema={schema}\r\n onSubmit={values => {\r\n confirmData(values)\r\n }}\r\n >\r\n {formikProps => {\r\n const {\r\n values,\r\n touched,\r\n errors,\r\n setFieldValue,\r\n handleChange,\r\n handleBlur,\r\n handleSubmit\r\n } = formikProps\r\n\r\n return (\r\n <div className=\"animated fadeIn detail-buttons-padding\">\r\n <CommonHeader header={header} rootHeader={rootHeader} />\r\n <Row className=\"my-2\">\r\n <Col md={4}>\r\n <Label>Mail subject</Label>\r\n <Input\r\n placeholder=\"Mail subject\"\r\n name=\"subject\"\r\n value={values.subject}\r\n onChange={handleChange}\r\n onBlur={handleBlur(\"subject\")}\r\n />\r\n {touched.subject && errors.subject && (\r\n <ErrorHandler text={errors.subject} />\r\n )}\r\n </Col>\r\n <Col md={4}>\r\n <Label>Category</Label>\r\n <MailCategorySelector\r\n onChange={(e: any) =>\r\n setFieldValue(\"categoryId\", e.value)\r\n }\r\n // hard code categoryId for test\r\n id={1}\r\n />\r\n {touched.categoryId && errors.categoryId && (\r\n <ErrorHandler text={errors.categoryId} />\r\n )}\r\n </Col>\r\n <Col md={4}>\r\n <Label>Comment</Label>\r\n <Input\r\n placeholder=\"Comment\"\r\n name=\"comment\"\r\n value={values.comment}\r\n onChange={handleChange}\r\n onBlur={handleBlur(\"comment\")}\r\n />\r\n {touched.comment && errors.comment && (\r\n <ErrorHandler text={errors.comment} />\r\n )}\r\n </Col>\r\n </Row>\r\n <Row className=\"mb-2\">\r\n <Col md={8}>\r\n <Label>Mail body</Label>\r\n {(emailTemplateDetail.body || !id) && (\r\n <Editor\r\n ref={node => setEditorRef(node)}\r\n apiKey={TINY_MCE_API_KEY}\r\n initialValue={emailTemplateDetail.body}\r\n init={editorConfig}\r\n onEditorChange={content =>\r\n setFieldValue(\"body\", content)\r\n }\r\n />\r\n )}\r\n {touched.body && errors.body && (\r\n <ErrorHandler text={errors.body} />\r\n )}\r\n </Col>\r\n <Col md={4}>\r\n <Label>Mail params</Label>\r\n <MailParam\r\n onClick={(param: any) =>\r\n addParams(values.body, param)\r\n }\r\n />\r\n </Col>\r\n </Row>\r\n <DetailActionButtons\r\n confirmText={confirmText}\r\n onConfirm={handleSubmit}\r\n onCancel={backToList}\r\n />\r\n </div>\r\n )\r\n }}\r\n </Formik>\r\n )\r\n}\r\n\r\nexport default EmailTemplateDetail\r\n","import React, {\r\n forwardRef,\r\n useState,\r\n useCallback,\r\n useImperativeHandle\r\n} from \"react\"\r\nimport { Modal, ModalHeader, ModalBody, ModalFooter, Button } from \"reactstrap\"\r\n\r\nconst CommonModal = (props: any, ref: any) => {\r\n const {\r\n header,\r\n children,\r\n onConfirm,\r\n onCancel,\r\n confirmText,\r\n cancelText,\r\n noFooter\r\n } = props\r\n\r\n const [isOpen, setIsOpen] = useState(false)\r\n\r\n const toggle = useCallback(() => {\r\n setIsOpen(!isOpen)\r\n }, [isOpen])\r\n\r\n const cancel = useCallback(() => {\r\n onCancel && onCancel()\r\n toggle()\r\n }, [toggle, onCancel])\r\n\r\n useImperativeHandle(ref, () => ({\r\n toggle\r\n }))\r\n\r\n return (\r\n <Modal isOpen={isOpen} toggle={toggle}>\r\n <ModalHeader toggle={toggle}>{header}</ModalHeader>\r\n <ModalBody>{children}</ModalBody>\r\n {!noFooter && (\r\n <ModalFooter className=\"text-right\">\r\n {onConfirm && (\r\n <Button color=\"primary\" onClick={onConfirm}>\r\n {confirmText || \"Confirm\"}\r\n </Button>\r\n )}\r\n <Button onClick={cancel}>{cancelText || \"Cancel\"}</Button>\r\n </ModalFooter>\r\n )}\r\n </Modal>\r\n )\r\n}\r\n\r\nexport default forwardRef(CommonModal)\r\n","import React, { forwardRef } from \"react\"\r\nimport { Row, Col, Input, Label } from \"reactstrap\"\r\nimport { Formik } from \"formik\"\r\nimport * as yup from \"yup\"\r\n\r\nimport CommonModal from \"../../../components/Modals/CommonModal\"\r\nimport ErrorHandler from \"../../../components/Alerts/ErrorHandler\"\r\n\r\nconst schema = yup.object({\r\n question: yup.string().required(\"Question is required\"),\r\n answer: yup.string().required(\"Answer is required\")\r\n})\r\n\r\nconst FaqDetailModal = (props: any, ref: any) => {\r\n const { header, confirmText, onConfirm, faqDetail } = props\r\n return (\r\n <Formik\r\n initialValues={faqDetail}\r\n enableReinitialize\r\n validationSchema={schema}\r\n onSubmit={(values, actions) => {\r\n onConfirm(values)\r\n actions.resetForm()\r\n }}\r\n >\r\n {formikProps => {\r\n const {\r\n values,\r\n touched,\r\n errors,\r\n handleChange,\r\n handleBlur,\r\n handleSubmit\r\n } = formikProps\r\n return (\r\n <CommonModal\r\n header={header}\r\n confirmText={confirmText}\r\n onConfirm={handleSubmit}\r\n ref={ref}\r\n >\r\n <Row>\r\n <Col md={12}>\r\n <Label>Question</Label>\r\n <Input\r\n name=\"question\"\r\n placeholder=\"Question\"\r\n value={values.question}\r\n onChange={handleChange}\r\n onBlur={handleBlur(\"question\")}\r\n />\r\n {touched.question && errors.question && (\r\n <ErrorHandler\r\n text={errors.question as string}\r\n />\r\n )}\r\n </Col>\r\n <Col md={12}>\r\n <Label>Answer</Label>\r\n <Input\r\n name=\"answer\"\r\n placeholder=\"Answer\"\r\n value={values.answer}\r\n onChange={handleChange}\r\n onBlur={handleBlur(\"answer\")}\r\n />\r\n {touched.answer && errors.answer && (\r\n <ErrorHandler\r\n text={errors.answer as string}\r\n />\r\n )}\r\n </Col>\r\n </Row>\r\n </CommonModal>\r\n )\r\n }}\r\n </Formik>\r\n )\r\n}\r\n\r\nexport default forwardRef(FaqDetailModal)\r\n","import { createAction } from \"@reduxjs/toolkit\"\r\n\r\nexport const setFaqList = createAction<boolean | undefined>(\"faqs/setFaqList\")","import { api } from \"../services/api\"\r\nimport { BASE_URL } from \"../utils/constants\"\r\nimport { Filter } from \"../types/Filter\"\r\n\r\nconst FAQ_URL = `${BASE_URL}/api/SystemFaq`\r\n\r\nexport const get = (filter: Filter) => api.get(FAQ_URL, { params: filter })\r\n\r\nexport const getById = (id: number) => api.get(`${FAQ_URL}/${id}`)\r\n\r\nexport const create = (data: any) => api.post(FAQ_URL, data)\r\n\r\nexport const update = (data: any) => api.put(`${FAQ_URL}/${data.id}`, data)\r\n\r\nexport const remove = (id: number) => api.delete(`${FAQ_URL}/${id}`)\r\n","import { useState, useEffect, useCallback } from \"react\"\r\nimport { useSelector, useDispatch } from \"react-redux\"\r\nimport { DEFAULT_FILTER } from \"../../../utils/constants\"\r\nimport { Filter } from \"../../../types/Filter\"\r\nimport { setFaqList } from \"../../../redux/faqs/action\"\r\nimport { setLoading, setModal } from \"../../../redux/commons/action\"\r\n\r\nimport { get, remove } from \"../../../services/faqService\"\r\n\r\nconst useFaqList = () => {\r\n const faqList = useSelector((state: any) => state.faqs.faqList)\r\n\r\n const [filters, setFilters] = useState<Filter>(DEFAULT_FILTER)\r\n const changeFilters = (updatedFilters: any) =>\r\n setFilters({\r\n ...filters,\r\n ...updatedFilters\r\n })\r\n\r\n const dispatch = useDispatch()\r\n\r\n const getData = useCallback(async () => {\r\n dispatch(setLoading(true))\r\n try {\r\n const res = await get(filters)\r\n dispatch(setFaqList(res.data.items))\r\n } catch (err) {\r\n alert(err.message)\r\n }\r\n dispatch(setLoading(false))\r\n }, [dispatch, filters])\r\n\r\n const removeData = useCallback((id: number) => {\r\n dispatch(setLoading(true))\r\n\r\n try {\r\n dispatch(\r\n setModal({\r\n isOpen: true,\r\n type: \"warning\",\r\n message: \"Do you want to remove this question?\",\r\n onConfirm: async () => {\r\n await remove(id)\r\n // handle success case\r\n\r\n getData()\r\n }\r\n })\r\n )\r\n } catch (err) {\r\n alert(err.message)\r\n }\r\n\r\n dispatch(setLoading(false))\r\n }, [])\r\n\r\n useEffect(() => {\r\n getData()\r\n }, [filters])\r\n\r\n return { faqList, filters, changeFilters, getData, removeData }\r\n}\r\n\r\nexport default useFaqList\r\n","import { useState, useEffect, useCallback } from \"react\"\r\nimport { useDispatch } from \"react-redux\"\r\nimport { setLoading } from \"../../../redux/commons/action\"\r\n\r\nimport { getById, create, update } from \"../../../services/faqService\"\r\n\r\ntype FaqDetail = {\r\n question: string\r\n answer: string\r\n}\r\n\r\nconst initValue: FaqDetail = {\r\n question: \"\",\r\n answer: \"\"\r\n}\r\n\r\nconst useFaqDetail = () => {\r\n const dispatch = useDispatch()\r\n\r\n const [id, setId] = useState(0)\r\n const [faqDetail, setFaqDetail] = useState<FaqDetail>(initValue)\r\n\r\n useEffect(() => {\r\n !!id ? getData() : setFaqDetail(initValue)\r\n }, [id])\r\n\r\n const getData = useCallback(async () => {\r\n dispatch(setLoading(true))\r\n try {\r\n const res = await getById(id)\r\n setFaqDetail(res.data)\r\n } catch (err) {\r\n alert(err.message)\r\n }\r\n dispatch(setLoading(false))\r\n }, [id])\r\n\r\n const confirmData = useCallback(\r\n async (values: any, cb: any) => {\r\n dispatch(setLoading(true))\r\n try {\r\n const next = !!id ? update : create\r\n\r\n await next(values)\r\n\r\n // handle success case\r\n\r\n cb && cb()\r\n !!id && setId(0)\r\n } catch (err) {\r\n alert(err.message)\r\n }\r\n dispatch(setLoading(false))\r\n },\r\n [id, faqDetail]\r\n )\r\n\r\n return { id, setId, faqDetail, confirmData, initValue }\r\n}\r\n\r\nexport default useFaqDetail\r\n","import React, { FC, useRef } from \"react\"\r\nimport { Row, Col, Table } from \"reactstrap\"\r\nimport DeleteButtonIcon from \"../../../components/Buttons/DeleteButtonIcon\"\r\nimport AddButton from \"../../../components/Buttons/AddButton\"\r\nimport LinkEditButton from \"../../../components/Buttons/LinkEditButton\"\r\nimport CommonHeader from \"../../../components/Headers/CommonHeader\"\r\nimport EmptyDataAlert from \"../../../components/Alerts/EmptyDataAlert\"\r\n\r\nimport FaqDetailModal from \"../components/FaqDetailModal\"\r\n\r\nimport useFaqList from \"../hooks/useFaqList\"\r\nimport useFaqDetail from \"../hooks/useFaqDetail\"\r\n\r\nconst header = \"FAQ\"\r\n\r\nconst FaqList: FC = () => {\r\n const modal = useRef<any>()\r\n\r\n const { faqList, getData, removeData } = useFaqList()\r\n\r\n const { id, setId, faqDetail, confirmData } = useFaqDetail()\r\n\r\n const openModal = (faqId?: number) => {\r\n !!faqId ? setId(faqId) : setId(0)\r\n modal && modal.current && modal.current.toggle()\r\n }\r\n\r\n const onConfirm = (values: any) => {\r\n confirmData(values, () => {\r\n modal && modal.current && modal.current.toggle()\r\n getData()\r\n })\r\n }\r\n\r\n const onRemove = (id: number) => {\r\n removeData(id)\r\n }\r\n\r\n return (\r\n <div className=\"fadeIn animated\">\r\n <FaqDetailModal\r\n ref={modal}\r\n header={!!id ? \"Edit FAQ\" : \"Create FAQ\"}\r\n confirmText={!!id ? \"Update\" : \"Create\"}\r\n onConfirm={onConfirm}\r\n faqDetail={faqDetail}\r\n />\r\n <CommonHeader header={header} />\r\n <Row className=\"my-2\">\r\n <Col md={4}>\r\n <AddButton text=\"Create FAQ\" onClick={() => openModal()} />\r\n </Col>\r\n <Col\r\n md={4}\r\n className=\"d-flex align-items-center justify-content-end\"\r\n >\r\n Total of faqs: {faqList.length}\r\n </Col>\r\n </Row>\r\n <Row className=\"mb-2\">\r\n <Col md={8}>\r\n {faqList && faqList.length > 0 ? (\r\n <Table bordered hover striped responsive size=\"sm\">\r\n <thead>\r\n <tr>\r\n <th>Question</th>\r\n <th>Answer</th>\r\n <th className=\"text-center\">Action</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n {faqList.map((record: any) => (\r\n <tr key={record.id}>\r\n <td>\r\n <LinkEditButton\r\n label={record.question}\r\n onClick={() =>\r\n openModal(record.id)\r\n }\r\n />\r\n </td>\r\n <td>{record.answer}</td>\r\n <td className=\"text-center align-middle\">\r\n <DeleteButtonIcon\r\n onClick={() =>\r\n onRemove(record.id)\r\n }\r\n />\r\n </td>\r\n </tr>\r\n ))}\r\n </tbody>\r\n </Table>\r\n ) : (\r\n <EmptyDataAlert label=\"FAQ\" />\r\n )}\r\n </Col>\r\n </Row>\r\n </div>\r\n )\r\n}\r\n\r\nexport default FaqList\r\n","import React, { useEffect, useState } from \"react\"\r\nimport Select from \"react-select\"\r\nimport {\r\n Col,\r\n // Input,\r\n Pagination,\r\n PaginationItem,\r\n PaginationLink,\r\n Row\r\n} from \"reactstrap\"\r\nimport {\r\n DEFAULT_PAGE_SIZE_VALUES,\r\n DEFAULT_PAGE_SIZE\r\n} from \"../../utils/constants\"\r\n\r\nconst CustomPagination = (props: any) => {\r\n const { filters, changePage, totalRecordCount, changePageSize } = props\r\n const [input, setInput] = useState<string>(\"\")\r\n\r\n useEffect(() => {\r\n setInput(filters.currentPage.toString())\r\n }, [filters.currentPage])\r\n\r\n return (\r\n <Row>\r\n <Col md={12} className=\"d-flex justify-content-end\">\r\n <Pagination>\r\n <div className=\"mr-1 pagination-dropdown\">\r\n <Select\r\n className=\"text-center\"\r\n value={\r\n !!filters && !!filters.pageSize\r\n ? {\r\n label: filters.pageSize,\r\n value: filters.pageSize\r\n }\r\n : DEFAULT_PAGE_SIZE\r\n }\r\n options={DEFAULT_PAGE_SIZE_VALUES}\r\n onChange={(e: any) => changePageSize(e.value)}\r\n />\r\n </div>\r\n\r\n <PaginationItem className=\"mr-1\">\r\n <PaginationLink\r\n previous\r\n tag=\"button\"\r\n className=\"h-100\"\r\n disabled={filters.currentPage <= 1}\r\n onClick={() => changePage(filters.currentPage - 1)}\r\n >\r\n Prev\r\n </PaginationLink>\r\n </PaginationItem>\r\n\r\n <input\r\n type=\"text\"\r\n id=\"pageNumberInput\"\r\n className=\"page-input text-center pagination-input\"\r\n onChange={(e: any) => setInput(e.target.value)}\r\n onKeyUp={(e: any) => {\r\n if (e.key === \"Enter\" || e.keyCode === 13) {\r\n changePage(parseInt(input))\r\n }\r\n }}\r\n value={input}\r\n />\r\n\r\n <PaginationItem className=\"ml-1\">\r\n <PaginationLink\r\n next\r\n tag=\"button\"\r\n className=\"h-100\"\r\n disabled={\r\n filters.currentPage >\r\n totalRecordCount / filters.pageSize\r\n }\r\n onClick={() => changePage(filters.currentPage + 1)}\r\n >\r\n Next\r\n </PaginationLink>\r\n </PaginationItem>\r\n </Pagination>\r\n </Col>\r\n </Row>\r\n )\r\n}\r\n\r\nexport default CustomPagination\r\n","import React, { forwardRef } from \"react\"\r\nimport { Row, Col, Input, Label } from \"reactstrap\"\r\nimport { Formik } from \"formik\"\r\nimport * as yup from \"yup\"\r\n\r\nimport CommonModal from \"../../../components/Modals/CommonModal\"\r\nimport ErrorHandler from \"../../../components/Alerts/ErrorHandler\"\r\n\r\nconst schema = yup.object({\r\n name: yup.string().required(\"Name is required\")\r\n})\r\n\r\nconst SkillDetailModal = (props: any, ref: any) => {\r\n const { header, confirmText, onConfirm, skillDetail } = props\r\n\r\n return (\r\n <Formik\r\n initialValues={skillDetail}\r\n enableReinitialize\r\n validationSchema={schema}\r\n onSubmit={(values, actions) => {\r\n onConfirm(values)\r\n actions.resetForm()\r\n }}\r\n >\r\n {formikProps => {\r\n const {\r\n values,\r\n touched,\r\n errors,\r\n handleChange,\r\n handleBlur,\r\n handleSubmit\r\n } = formikProps\r\n\r\n return (\r\n <CommonModal\r\n header={header}\r\n confirmText={confirmText}\r\n onConfirm={handleSubmit}\r\n ref={ref}\r\n >\r\n <Row>\r\n <Col md={12}>\r\n <Label>Name</Label>\r\n <Input\r\n name=\"name\"\r\n placeholder=\"Name\"\r\n value={values.name}\r\n onChange={handleChange}\r\n onBlur={handleBlur(\"name\")}\r\n />\r\n {touched.name && errors.name && (\r\n <ErrorHandler\r\n text={errors.name as string}\r\n />\r\n )}\r\n </Col>\r\n <Col md={12}>\r\n <Label>Comment</Label>\r\n <Input\r\n name=\"comment\"\r\n placeholder=\"Comment\"\r\n value={values.comment}\r\n onChange={handleChange}\r\n onBlur={handleBlur(\"comment\")}\r\n />\r\n </Col>\r\n </Row>\r\n </CommonModal>\r\n )\r\n }}\r\n </Formik>\r\n )\r\n}\r\n\r\nexport default forwardRef(SkillDetailModal)\r\n","import { createAction } from \"@reduxjs/toolkit\"\r\n\r\nexport const setSkillList = createAction<boolean | undefined>(\r\n \"skills/setSkillList\"\r\n)\r\n","import { api } from \"../services/api\"\r\nimport { BASE_URL } from \"../utils/constants\"\r\nimport { Filter } from \"../types/Filter\"\r\n\r\nconst SKILL_URL = `${BASE_URL}/api/Skill`\r\n\r\nexport const get = (filter: Filter) => api.get(SKILL_URL, { params: filter })\r\n\r\nexport const getById = (id: number) => api.get(`${SKILL_URL}/${id}`)\r\n\r\nexport const create = (data: any) => api.post(SKILL_URL, data)\r\n\r\nexport const update = (data: any) => api.put(`${SKILL_URL}/${data.id}`, data)\r\n\r\nexport const remove = (id: number) => api.delete(`${SKILL_URL}/${id}`)\r\n","import { useState, useEffect, useCallback } from \"react\"\r\nimport { useSelector, useDispatch } from \"react-redux\"\r\nimport { DEFAULT_FILTER } from \"../../../utils/constants\"\r\nimport { Filter } from \"../../../types/Filter\"\r\nimport { setSkillList } from \"../../../redux/skills/action\"\r\nimport { setLoading, setModal } from \"../../../redux/commons/action\"\r\n\r\nimport { get, remove } from \"../../../services/skillService\"\r\n\r\nconst useSkillList = () => {\r\n const skillList = useSelector((state: any) => state.skills.skillList)\r\n\r\n const [filters, setFilters] = useState<Filter>(DEFAULT_FILTER)\r\n const changeFilters = (updatedFilters: any) =>\r\n setFilters({\r\n ...filters,\r\n ...updatedFilters\r\n })\r\n\r\n const dispatch = useDispatch()\r\n\r\n const getData = useCallback(async () => {\r\n dispatch(setLoading(true))\r\n try {\r\n const res = await get(filters)\r\n dispatch(setSkillList(res.data.items))\r\n } catch (err) {\r\n alert(err.message)\r\n }\r\n dispatch(setLoading(false))\r\n }, [dispatch, filters])\r\n\r\n const removeData = useCallback((id: number) => {\r\n dispatch(setLoading(true))\r\n\r\n try {\r\n dispatch(\r\n setModal({\r\n isOpen: true,\r\n type: \"warning\",\r\n message: \"Do you want to remove this skill?\",\r\n onConfirm: async () => {\r\n await remove(id)\r\n // handle success case\r\n\r\n getData()\r\n }\r\n })\r\n )\r\n } catch (err) {\r\n alert(err.message)\r\n }\r\n\r\n dispatch(setLoading(false))\r\n }, [])\r\n\r\n useEffect(() => {\r\n getData()\r\n }, [filters])\r\n\r\n return {\r\n skillList,\r\n filters,\r\n changeFilters,\r\n getData,\r\n removeData\r\n }\r\n}\r\n\r\nexport default useSkillList\r\n","import { useState, useEffect, useCallback } from \"react\"\r\nimport { useDispatch } from \"react-redux\"\r\nimport { setLoading } from \"../../../redux/commons/action\"\r\n\r\nimport { getById, create, update } from \"../../../services/skillService\"\r\n\r\ntype SkillDetail = {\r\n name: string\r\n comment: string\r\n}\r\n\r\nconst initValue: SkillDetail = {\r\n name: \"\",\r\n comment: \"\"\r\n}\r\n\r\nconst useSkillDetail = () => {\r\n const dispatch = useDispatch()\r\n\r\n const [id, setId] = useState(0)\r\n const [skillDetail, setSkillDetail] = useState<SkillDetail>(initValue)\r\n\r\n useEffect(() => {\r\n !!id ? getData() : setSkillDetail(initValue)\r\n }, [id])\r\n\r\n const getData = useCallback(async () => {\r\n dispatch(setLoading(true))\r\n try {\r\n const res = await getById(id)\r\n setSkillDetail(res.data)\r\n } catch (err) {\r\n alert(err.message)\r\n }\r\n dispatch(setLoading(false))\r\n }, [id])\r\n\r\n const confirmData = useCallback(\r\n async (values: any, cb: any) => {\r\n dispatch(setLoading(true))\r\n try {\r\n const next = !!id ? update : create\r\n await next(values)\r\n\r\n // handle success case\r\n\r\n cb && cb()\r\n !!id && setId(0)\r\n } catch (err) {\r\n alert(err.message)\r\n }\r\n dispatch(setLoading(false))\r\n },\r\n [id, skillDetail]\r\n )\r\n\r\n return { id, setId, skillDetail, confirmData, initValue }\r\n}\r\n\r\nexport default useSkillDetail\r\n","import React, { FC, useRef } from \"react\"\r\nimport { Row, Col, Table } from \"reactstrap\"\r\nimport DeleteButtonIcon from \"../../../components/Buttons/DeleteButtonIcon\"\r\nimport AddButton from \"../../../components/Buttons/AddButton\"\r\nimport LinkEditButton from \"../../../components/Buttons/LinkEditButton\"\r\nimport EmptyDataAlert from \"../../../components/Alerts/EmptyDataAlert\"\r\nimport CustomPagination from \"../../../components/Pagination/CustomPagination\"\r\n\r\nimport SkillDetailModal from \"../components/SkillDetailModal\"\r\n\r\nimport useSkillList from \"../hooks/useSkillList\"\r\nimport useSkillDetail from \"../hooks/useSkillDetail\"\r\n\r\nconst SkillList: FC = () => {\r\n const modal = useRef<any>()\r\n\r\n const {\r\n skillList,\r\n filters,\r\n getData,\r\n removeData,\r\n changeFilters\r\n } = useSkillList()\r\n\r\n const { id, setId, skillDetail, confirmData } = useSkillDetail()\r\n\r\n const openModal = (skillId?: number) => {\r\n !!skillId ? setId(skillId) : setId(0)\r\n modal && modal.current && modal.current.toggle()\r\n }\r\n\r\n const onConfirm = (values: any) => {\r\n confirmData(values, () => {\r\n modal && modal.current && modal.current.toggle()\r\n getData()\r\n })\r\n }\r\n\r\n const onRemove = (id: number) => {\r\n removeData(id)\r\n }\r\n\r\n return (\r\n <div className=\"fadeIn animated\">\r\n <SkillDetailModal\r\n ref={modal}\r\n header={!!id ? \"Edit skill\" : \"Create skill\"}\r\n confirmText={!!id ? \"Update\" : \"Create\"}\r\n onConfirm={onConfirm}\r\n skillDetail={skillDetail}\r\n />\r\n <Row className=\"my-2\">\r\n <Col md={4}>\r\n <AddButton\r\n text=\"Create skill\"\r\n onClick={() => openModal()}\r\n />\r\n </Col>\r\n <Col\r\n md={4}\r\n className=\"d-flex align-items-center justify-content-end\"\r\n >\r\n Total of skills: {skillList.length}\r\n </Col>\r\n </Row>\r\n <Row className=\"mb-2\">\r\n <Col md={8}>\r\n {skillList && skillList.length > 0 ? (\r\n <Table bordered hover striped responsive size=\"sm\">\r\n <thead>\r\n <tr>\r\n <th>Name</th>\r\n <th>Comment</th>\r\n <th className=\"text-center\">Action</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n {skillList.map((record: any) => (\r\n <tr key={record.id}>\r\n <td>\r\n <LinkEditButton\r\n label={record.name}\r\n onClick={() =>\r\n openModal(record.id)\r\n }\r\n />\r\n </td>\r\n <td>{record.comment}</td>\r\n <td className=\"text-center align-middle\">\r\n <DeleteButtonIcon\r\n onClick={() =>\r\n onRemove(record.id)\r\n }\r\n />\r\n </td>\r\n </tr>\r\n ))}\r\n </tbody>\r\n </Table>\r\n ) : (\r\n <EmptyDataAlert label=\"skill\" />\r\n )}\r\n </Col>\r\n <Col md={8} className=\"text-right\">\r\n <CustomPagination\r\n totalRecordCount={!!skillList && skillList.length}\r\n filters={filters}\r\n changePageSize={(pageSize: number) =>\r\n changeFilters({ pageSize })\r\n }\r\n changePage={(currentPage: number) =>\r\n changeFilters({ currentPage })\r\n }\r\n />\r\n </Col>\r\n </Row>\r\n </div>\r\n )\r\n}\r\n\r\nexport default SkillList\r\n","import { createAction } from \"@reduxjs/toolkit\"\r\n\r\nexport const setUserList = createAction<any>(\"users/setUserList\")\r\n","import { api } from \"../services/api\"\r\nimport { BASE_URL } from \"../utils/constants\"\r\nimport { Filter } from \"../types/Filter\"\r\n\r\nconst USER_URL = `${BASE_URL}/api/user`\r\n\r\nexport const get = (filter: Filter) =>\r\n api.get(`${USER_URL}`, { params: filter })\r\n\r\nexport const getById = (id: string) => api.get(`${USER_URL}/${id}`)\r\n\r\nexport const create = (data: any) => api.post(`${USER_URL}`, data)\r\n\r\nexport const update = (data: any) => api.put(`${USER_URL}/${data.id}`, data)\r\n\r\nexport const remove = (id: string) => api.delete(`${USER_URL}/${id}`)\r\n","import { useState, useCallback, useEffect } from \"react\"\r\nimport { useSelector, useDispatch } from \"react-redux\"\r\n\r\nimport { DEFAULT_FILTER } from \"../../../utils/constants\"\r\nimport { Filter } from \"../../../types/Filter\"\r\nimport { setLoading, setModal } from \"../../../redux/commons/action\"\r\nimport { setUserList } from \"../../../redux/users/action\"\r\nimport { get, remove } from \"../../../services/userService\"\r\n\r\nconst useUserList = () => {\r\n const userList = useSelector((state: any) => state.users.userList)\r\n const [filters, setFilters] = useState<Filter>(DEFAULT_FILTER)\r\n const changeFilters = (updatedFilters: any) =>\r\n setFilters({\r\n ...filters,\r\n ...updatedFilters\r\n })\r\n\r\n const dispatch = useDispatch()\r\n\r\n const getData = useCallback(async () => {\r\n dispatch(setLoading(true))\r\n try {\r\n const res = await get(filters)\r\n console.log(res)\r\n dispatch(setUserList(res.data.items))\r\n } catch (err) {\r\n alert(err.message)\r\n }\r\n dispatch(setLoading(false))\r\n }, [dispatch, filters])\r\n\r\n useEffect(() => {\r\n getData()\r\n }, [filters])\r\n\r\n const removeData = useCallback((id: string) => {\r\n dispatch(setLoading(true))\r\n\r\n try {\r\n dispatch(\r\n setModal({\r\n isOpen: true,\r\n type: \"warning\",\r\n message: \"Do you want to remove this question?\",\r\n onConfirm: async () => {\r\n await remove(id)\r\n // handle success case\r\n\r\n getData()\r\n }\r\n })\r\n )\r\n } catch (err) {\r\n alert(err.message)\r\n }\r\n\r\n dispatch(setLoading(false))\r\n }, [])\r\n\r\n return { userList, filters, getData, removeData, changeFilters }\r\n}\r\n\r\nexport default useUserList\r\n","import React from \"react\"\r\nimport { Row, Col, Table } from \"reactstrap\"\r\n\r\nimport useUserList from \"../hooks/useUserList\"\r\nimport CommonHeader from \"../../../components/Headers/CommonHeader\"\r\nimport AddButton from \"../../../components/Buttons/AddButton\"\r\nimport LinkEditButton from \"../../../components/Buttons/LinkEditButton\"\r\nimport DeleteButtonIcon from \"../../../components/Buttons/DeleteButtonIcon\"\r\nimport EmptyDataAlert from \"../../../components/Alerts/EmptyDataAlert\"\r\n\r\nconst header = \"User\"\r\nconst UserList = () => {\r\n const {\r\n userList,\r\n // filters,\r\n // getData,\r\n removeData\r\n // changeFilters\r\n } = useUserList()\r\n\r\n return (\r\n <div className=\"fadeIn animated\">\r\n <CommonHeader header={header} />\r\n <Row className=\"my-2\">\r\n <Col md={4}>\r\n <AddButton text=\"Create user\" />\r\n </Col>\r\n <Col\r\n md={4}\r\n className=\"d-flex align-items-center justify-content-end\"\r\n >\r\n Total of faqs: {userList.length}\r\n </Col>\r\n </Row>\r\n <Row className=\"mb-2\">\r\n <Col md={8}>\r\n {userList && userList.length > 0 ? (\r\n <Table bordered hover striped responsive size=\"sm\">\r\n <thead>\r\n <tr>\r\n <th>Name</th>\r\n <th>Email</th>\r\n <th>Age</th>\r\n <th>Role</th>\r\n <th className=\"text-center\">Action</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n {userList.map((record: any) => (\r\n <tr key={record.id}>\r\n <td>\r\n <LinkEditButton\r\n label={record.name}\r\n onClick={\r\n () => console.log(1)\r\n // openModal(record.id)\r\n }\r\n />\r\n </td>\r\n <td>{record.email}</td>\r\n <td>Birthday</td>\r\n <td>Role</td>\r\n <td className=\"text-center align-middle\">\r\n <DeleteButtonIcon\r\n onClick={() =>\r\n removeData(record.id)\r\n }\r\n />\r\n </td>\r\n </tr>\r\n ))}\r\n </tbody>\r\n </Table>\r\n ) : (\r\n <EmptyDataAlert label=\"FAQ\" />\r\n )}\r\n </Col>\r\n </Row>\r\n </div>\r\n )\r\n}\r\n\r\nexport default UserList\r\n","import React, { useCallback } from \"react\"\nimport { Modal, ModalHeader, ModalBody, ModalFooter, Button } from \"reactstrap\"\nimport { useSelector, useDispatch } from \"react-redux\"\n\nimport { setModal } from \"../../redux/commons/action\"\nimport { COLORS } from \"../../utils/constants\"\n\nconst modalInfo = (type?: string) => {\n switch (type) {\n case \"danger\":\n return {\n header: \"Error\",\n color: COLORS.DANGER\n }\n\n case \"warning\":\n return {\n header: \"Warning\",\n color: COLORS.WARNING\n }\n\n case \"success\":\n return {\n header: \"Success\",\n color: COLORS.SUCCESS\n }\n\n default:\n return {\n header: \"Infomation\",\n color: COLORS.INFO\n }\n }\n}\n\nconst NotificationModal = () => {\n const dispatch = useDispatch()\n const modal = useSelector((state: any) => state.common.modal)\n\n const { isOpen, type, message, onConfirm } = modal\n\n const toggle = useCallback(() => {\n dispatch(setModal({ isOpen: !isOpen, type }))\n }, [isOpen])\n\n const headerStyle = { backgroundColor: modalInfo(type).color }\n\n const confirm = () => {\n onConfirm && onConfirm()\n toggle()\n }\n\n return <Modal \n isOpen={isOpen} \n toggle={toggle} \n fade\n >\n <ModalHeader \n toggle={toggle}\n style={headerStyle}\n >\n {modalInfo(type).header}\n </ModalHeader>\n <ModalBody>\n {message}\n </ModalBody>\n <ModalFooter>\n {onConfirm && <Button\n color={type}\n onClick={confirm}\n >\n Confirm\n </Button>}\n <Button\n color=\"secondary\"\n onClick={toggle}\n >\n Cancel\n </Button>\n </ModalFooter>\n </Modal>\n}\n\nexport default NotificationModal","import React, { FC } from \"react\"\r\nimport { FaRegEdit } from \"react-icons/fa\"\r\ninterface Props {\r\n onClick: () => any\r\n}\r\n\r\nconst EditButtonIcon: FC<Props> = ({ onClick }: Props) => {\r\n return (\r\n <div\r\n className=\"d-inline text-center cursor-pointer hover-opacity\"\r\n title=\"Edit\"\r\n onClick={onClick}\r\n >\r\n <FaRegEdit />\r\n </div>\r\n )\r\n}\r\n\r\nexport default EditButtonIcon\r\n","import React from \"react\"\r\n\r\nimport Creatable from \"react-select/creatable\"\r\n\r\nconst components = {\r\n DropdownIndicator: null,\r\n}\r\n\r\nconst CreatableSelector = (props: any) => {\r\n const { inputValue, value, placeholder, handleChange, handleInputChange, handleKeyDown } = props\r\n return (\r\n <Creatable\r\n components={components}\r\n placeholder={placeholder || \"Type something to create option\"}\r\n isClearable\r\n isMulti\r\n menuIsOpen={false}\r\n value={value}\r\n inputValue={inputValue}\r\n onChange={handleChange}\r\n onInputChange={handleInputChange}\r\n onKeyDown={handleKeyDown}\r\n />\r\n )\r\n}\r\n\r\nexport default CreatableSelector","import React, {\r\n FC,\r\n memo,\r\n useState,\r\n useEffect,\r\n useCallback,\r\n CSSProperties\r\n} from \"react\"\r\nimport { Input } from \"reactstrap\"\r\n\r\ninterface Props {\r\n initValue: string\r\n onSearch: (searchString?: string) => any\r\n placeholder?: string\r\n className?: string\r\n style?: CSSProperties\r\n}\r\n\r\nconst SearchBox: FC<Props> = ({\r\n initValue,\r\n onSearch,\r\n placeholder,\r\n className,\r\n style\r\n}: Props) => {\r\n const [searchString, setSearchString] = useState(initValue)\r\n useEffect(() => {\r\n setSearchString(initValue)\r\n }, [initValue])\r\n\r\n const onKeyUp = useCallback(\r\n (e: any) => {\r\n e.key === \"Enter\" && onSearch(searchString)\r\n },\r\n [searchString, onSearch]\r\n )\r\n\r\n return (\r\n <Input\r\n placeholder={placeholder}\r\n value={searchString}\r\n onChange={e => setSearchString(e.target.value)}\r\n onKeyUp={onKeyUp}\r\n className={className}\r\n style={style}\r\n />\r\n )\r\n}\r\n\r\nSearchBox.defaultProps = {\r\n placeholder: \"Type something to search\",\r\n className: \"\",\r\n style: {}\r\n}\r\n\r\nexport default memo(SearchBox)\r\n","import React from \"react\"\r\nimport Select from \"react-select\"\r\n\r\nimport { QUESTION_TYPES_OPTIONS } from \"../../utils/constants\"\r\n\r\nconst QuestionTypeSelector = (props: any) => {\r\n const { id } = props\r\n\r\n const initValue = !!id\r\n ? QUESTION_TYPES_OPTIONS.find(option => option.value === id) || null\r\n : null\r\n\r\n return (\r\n <Select options={QUESTION_TYPES_OPTIONS} value={initValue} {...props} />\r\n )\r\n}\r\n\r\nexport default QuestionTypeSelector\r\n","import React, { FC, memo } from \"react\"\r\nimport { Label } from \"reactstrap\"\r\n\r\ninterface Props {\r\n text: string\r\n}\r\n\r\nconst RequiredLabel: FC<Props> = ({ text }: Props) => {\r\n return (\r\n <Label>\r\n {text}\r\n <span className=\"ml-2 text-danger\">*</span>\r\n </Label>\r\n )\r\n}\r\n\r\nexport default memo(RequiredLabel)\r\n","import React from \"react\"\nimport Select from \"react-select\"\n\nimport { STAR_OPTIONS } from \"../../utils/constants\"\n\nconst StarRatingSelector = (props: any) => {\n const { id } = props\n\n const initValue = !!id\n ? STAR_OPTIONS.find(option => option.value === id) || null\n : null\n\n return (\n <Select\n options={STAR_OPTIONS}\n value={initValue}\n {...props}\n menuPlacement=\"top\"\n />\n )\n}\n\nexport default StarRatingSelector\n","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?t(exports):\"function\"==typeof define&&define.amd?define([\"exports\"],t):t(e.reduxLogger=e.reduxLogger||{})}(this,function(e){\"use strict\";function t(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}function r(e,t){Object.defineProperty(this,\"kind\",{value:e,enumerable:!0}),t&&t.length&&Object.defineProperty(this,\"path\",{value:t,enumerable:!0})}function n(e,t,r){n.super_.call(this,\"E\",e),Object.defineProperty(this,\"lhs\",{value:t,enumerable:!0}),Object.defineProperty(this,\"rhs\",{value:r,enumerable:!0})}function o(e,t){o.super_.call(this,\"N\",e),Object.defineProperty(this,\"rhs\",{value:t,enumerable:!0})}function i(e,t){i.super_.call(this,\"D\",e),Object.defineProperty(this,\"lhs\",{value:t,enumerable:!0})}function a(e,t,r){a.super_.call(this,\"A\",e),Object.defineProperty(this,\"index\",{value:t,enumerable:!0}),Object.defineProperty(this,\"item\",{value:r,enumerable:!0})}function f(e,t,r){var n=e.slice((r||t)+1||e.length);return e.length=t<0?e.length+t:t,e.push.apply(e,n),e}function u(e){var t=\"undefined\"==typeof e?\"undefined\":N(e);return\"object\"!==t?t:e===Math?\"math\":null===e?\"null\":Array.isArray(e)?\"array\":\"[object Date]\"===Object.prototype.toString.call(e)?\"date\":\"function\"==typeof e.toString&&/^\\/.*\\//.test(e.toString())?\"regexp\":\"object\"}function l(e,t,r,c,s,d,p){s=s||[],p=p||[];var g=s.slice(0);if(\"undefined\"!=typeof d){if(c){if(\"function\"==typeof c&&c(g,d))return;if(\"object\"===(\"undefined\"==typeof c?\"undefined\":N(c))){if(c.prefilter&&c.prefilter(g,d))return;if(c.normalize){var h=c.normalize(g,d,e,t);h&&(e=h[0],t=h[1])}}}g.push(d)}\"regexp\"===u(e)&&\"regexp\"===u(t)&&(e=e.toString(),t=t.toString());var y=\"undefined\"==typeof e?\"undefined\":N(e),v=\"undefined\"==typeof t?\"undefined\":N(t),b=\"undefined\"!==y||p&&p[p.length-1].lhs&&p[p.length-1].lhs.hasOwnProperty(d),m=\"undefined\"!==v||p&&p[p.length-1].rhs&&p[p.length-1].rhs.hasOwnProperty(d);if(!b&&m)r(new o(g,t));else if(!m&&b)r(new i(g,e));else if(u(e)!==u(t))r(new n(g,e,t));else if(\"date\"===u(e)&&e-t!==0)r(new n(g,e,t));else if(\"object\"===y&&null!==e&&null!==t)if(p.filter(function(t){return t.lhs===e}).length)e!==t&&r(new n(g,e,t));else{if(p.push({lhs:e,rhs:t}),Array.isArray(e)){var w;e.length;for(w=0;w<e.length;w++)w>=t.length?r(new a(g,w,new i(void 0,e[w]))):l(e[w],t[w],r,c,g,w,p);for(;w<t.length;)r(new a(g,w,new o(void 0,t[w++])))}else{var x=Object.keys(e),S=Object.keys(t);x.forEach(function(n,o){var i=S.indexOf(n);i>=0?(l(e[n],t[n],r,c,g,n,p),S=f(S,i)):l(e[n],void 0,r,c,g,n,p)}),S.forEach(function(e){l(void 0,t[e],r,c,g,e,p)})}p.length=p.length-1}else e!==t&&(\"number\"===y&&isNaN(e)&&isNaN(t)||r(new n(g,e,t)))}function c(e,t,r,n){return n=n||[],l(e,t,function(e){e&&n.push(e)},r),n.length?n:void 0}function s(e,t,r){if(r.path&&r.path.length){var n,o=e[t],i=r.path.length-1;for(n=0;n<i;n++)o=o[r.path[n]];switch(r.kind){case\"A\":s(o[r.path[n]],r.index,r.item);break;case\"D\":delete o[r.path[n]];break;case\"E\":case\"N\":o[r.path[n]]=r.rhs}}else switch(r.kind){case\"A\":s(e[t],r.index,r.item);break;case\"D\":e=f(e,t);break;case\"E\":case\"N\":e[t]=r.rhs}return e}function d(e,t,r){if(e&&t&&r&&r.kind){for(var n=e,o=-1,i=r.path?r.path.length-1:0;++o<i;)\"undefined\"==typeof n[r.path[o]]&&(n[r.path[o]]=\"number\"==typeof r.path[o]?[]:{}),n=n[r.path[o]];switch(r.kind){case\"A\":s(r.path?n[r.path[o]]:n,r.index,r.item);break;case\"D\":delete n[r.path[o]];break;case\"E\":case\"N\":n[r.path[o]]=r.rhs}}}function p(e,t,r){if(r.path&&r.path.length){var n,o=e[t],i=r.path.length-1;for(n=0;n<i;n++)o=o[r.path[n]];switch(r.kind){case\"A\":p(o[r.path[n]],r.index,r.item);break;case\"D\":o[r.path[n]]=r.lhs;break;case\"E\":o[r.path[n]]=r.lhs;break;case\"N\":delete o[r.path[n]]}}else switch(r.kind){case\"A\":p(e[t],r.index,r.item);break;case\"D\":e[t]=r.lhs;break;case\"E\":e[t]=r.lhs;break;case\"N\":e=f(e,t)}return e}function g(e,t,r){if(e&&t&&r&&r.kind){var n,o,i=e;for(o=r.path.length-1,n=0;n<o;n++)\"undefined\"==typeof i[r.path[n]]&&(i[r.path[n]]={}),i=i[r.path[n]];switch(r.kind){case\"A\":p(i[r.path[n]],r.index,r.item);break;case\"D\":i[r.path[n]]=r.lhs;break;case\"E\":i[r.path[n]]=r.lhs;break;case\"N\":delete i[r.path[n]]}}}function h(e,t,r){if(e&&t){var n=function(n){r&&!r(e,t,n)||d(e,t,n)};l(e,t,n)}}function y(e){return\"color: \"+F[e].color+\"; font-weight: bold\"}function v(e){var t=e.kind,r=e.path,n=e.lhs,o=e.rhs,i=e.index,a=e.item;switch(t){case\"E\":return[r.join(\".\"),n,\"→\",o];case\"N\":return[r.join(\".\"),o];case\"D\":return[r.join(\".\")];case\"A\":return[r.join(\".\")+\"[\"+i+\"]\",a];default:return[]}}function b(e,t,r,n){var o=c(e,t);try{n?r.groupCollapsed(\"diff\"):r.group(\"diff\")}catch(e){r.log(\"diff\")}o?o.forEach(function(e){var t=e.kind,n=v(e);r.log.apply(r,[\"%c \"+F[t].text,y(t)].concat(P(n)))}):r.log(\"—— no diff ——\");try{r.groupEnd()}catch(e){r.log(\"—— diff end —— \")}}function m(e,t,r,n){switch(\"undefined\"==typeof e?\"undefined\":N(e)){case\"object\":return\"function\"==typeof e[n]?e[n].apply(e,P(r)):e[n];case\"function\":return e(t);default:return e}}function w(e){var t=e.timestamp,r=e.duration;return function(e,n,o){var i=[\"action\"];return i.push(\"%c\"+String(e.type)),t&&i.push(\"%c@ \"+n),r&&i.push(\"%c(in \"+o.toFixed(2)+\" ms)\"),i.join(\" \")}}function x(e,t){var r=t.logger,n=t.actionTransformer,o=t.titleFormatter,i=void 0===o?w(t):o,a=t.collapsed,f=t.colors,u=t.level,l=t.diff,c=\"undefined\"==typeof t.titleFormatter;e.forEach(function(o,s){var d=o.started,p=o.startedTime,g=o.action,h=o.prevState,y=o.error,v=o.took,w=o.nextState,x=e[s+1];x&&(w=x.prevState,v=x.started-d);var S=n(g),k=\"function\"==typeof a?a(function(){return w},g,o):a,j=D(p),E=f.title?\"color: \"+f.title(S)+\";\":\"\",A=[\"color: gray; font-weight: lighter;\"];A.push(E),t.timestamp&&A.push(\"color: gray; font-weight: lighter;\"),t.duration&&A.push(\"color: gray; font-weight: lighter;\");var O=i(S,j,v);try{k?f.title&&c?r.groupCollapsed.apply(r,[\"%c \"+O].concat(A)):r.groupCollapsed(O):f.title&&c?r.group.apply(r,[\"%c \"+O].concat(A)):r.group(O)}catch(e){r.log(O)}var N=m(u,S,[h],\"prevState\"),P=m(u,S,[S],\"action\"),C=m(u,S,[y,h],\"error\"),F=m(u,S,[w],\"nextState\");if(N)if(f.prevState){var L=\"color: \"+f.prevState(h)+\"; font-weight: bold\";r[N](\"%c prev state\",L,h)}else r[N](\"prev state\",h);if(P)if(f.action){var T=\"color: \"+f.action(S)+\"; font-weight: bold\";r[P](\"%c action \",T,S)}else r[P](\"action \",S);if(y&&C)if(f.error){var M=\"color: \"+f.error(y,h)+\"; font-weight: bold;\";r[C](\"%c error \",M,y)}else r[C](\"error \",y);if(F)if(f.nextState){var _=\"color: \"+f.nextState(w)+\"; font-weight: bold\";r[F](\"%c next state\",_,w)}else r[F](\"next state\",w);l&&b(h,w,r,k);try{r.groupEnd()}catch(e){r.log(\"—— log end ——\")}})}function S(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=Object.assign({},L,e),r=t.logger,n=t.stateTransformer,o=t.errorTransformer,i=t.predicate,a=t.logErrors,f=t.diffPredicate;if(\"undefined\"==typeof r)return function(){return function(e){return function(t){return e(t)}}};if(e.getState&&e.dispatch)return console.error(\"[redux-logger] redux-logger not installed. Make sure to pass logger instance as middleware:\\n// Logger with default options\\nimport { logger } from 'redux-logger'\\nconst store = createStore(\\n reducer,\\n applyMiddleware(logger)\\n)\\n// Or you can create your own logger with custom options http://bit.ly/redux-logger-options\\nimport createLogger from 'redux-logger'\\nconst logger = createLogger({\\n // ...options\\n});\\nconst store = createStore(\\n reducer,\\n applyMiddleware(logger)\\n)\\n\"),function(){return function(e){return function(t){return e(t)}}};var u=[];return function(e){var r=e.getState;return function(e){return function(l){if(\"function\"==typeof i&&!i(r,l))return e(l);var c={};u.push(c),c.started=O.now(),c.startedTime=new Date,c.prevState=n(r()),c.action=l;var s=void 0;if(a)try{s=e(l)}catch(e){c.error=o(e)}else s=e(l);c.took=O.now()-c.started,c.nextState=n(r());var d=t.diff&&\"function\"==typeof f?f(r,l):t.diff;if(x(u,Object.assign({},t,{diff:d})),u.length=0,c.error)throw c.error;return s}}}}var k,j,E=function(e,t){return new Array(t+1).join(e)},A=function(e,t){return E(\"0\",t-e.toString().length)+e},D=function(e){return A(e.getHours(),2)+\":\"+A(e.getMinutes(),2)+\":\"+A(e.getSeconds(),2)+\".\"+A(e.getMilliseconds(),3)},O=\"undefined\"!=typeof performance&&null!==performance&&\"function\"==typeof performance.now?performance:Date,N=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},P=function(e){if(Array.isArray(e)){for(var t=0,r=Array(e.length);t<e.length;t++)r[t]=e[t];return r}return Array.from(e)},C=[];k=\"object\"===(\"undefined\"==typeof global?\"undefined\":N(global))&&global?global:\"undefined\"!=typeof window?window:{},j=k.DeepDiff,j&&C.push(function(){\"undefined\"!=typeof j&&k.DeepDiff===c&&(k.DeepDiff=j,j=void 0)}),t(n,r),t(o,r),t(i,r),t(a,r),Object.defineProperties(c,{diff:{value:c,enumerable:!0},observableDiff:{value:l,enumerable:!0},applyDiff:{value:h,enumerable:!0},applyChange:{value:d,enumerable:!0},revertChange:{value:g,enumerable:!0},isConflict:{value:function(){return\"undefined\"!=typeof j},enumerable:!0},noConflict:{value:function(){return C&&(C.forEach(function(e){e()}),C=null),c},enumerable:!0}});var F={E:{color:\"#2196F3\",text:\"CHANGED:\"},N:{color:\"#4CAF50\",text:\"ADDED:\"},D:{color:\"#F44336\",text:\"DELETED:\"},A:{color:\"#2196F3\",text:\"ARRAY:\"}},L={level:\"log\",logger:console,logErrors:!0,collapsed:void 0,predicate:void 0,duration:!1,timestamp:!0,stateTransformer:function(e){return e},actionTransformer:function(e){return e},errorTransformer:function(e){return e},colors:{title:function(){return\"inherit\"},prevState:function(){return\"#9E9E9E\"},action:function(){return\"#03A9F4\"},nextState:function(){return\"#4CAF50\"},error:function(){return\"#F20404\"}},diff:!1,diffPredicate:void 0,transformer:void 0},T=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.dispatch,r=e.getState;return\"function\"==typeof t||\"function\"==typeof r?S()({dispatch:t,getState:r}):void console.error(\"\\n[redux-logger v3] BREAKING CHANGE\\n[redux-logger v3] Since 3.0.0 redux-logger exports by default logger with default settings.\\n[redux-logger v3] Change\\n[redux-logger v3] import createLogger from 'redux-logger'\\n[redux-logger v3] to\\n[redux-logger v3] import { createLogger } from 'redux-logger'\\n\")};e.defaults=L,e.createLogger=S,e.logger=T,e.default=T,Object.defineProperty(e,\"__esModule\",{value:!0})});\n","export default function symbolObservablePonyfill(root) {\n\tvar result;\n\tvar Symbol = root.Symbol;\n\n\tif (typeof Symbol === 'function') {\n\t\tif (Symbol.observable) {\n\t\t\tresult = Symbol.observable;\n\t\t} else {\n\t\t\tresult = Symbol('observable');\n\t\t\tSymbol.observable = result;\n\t\t}\n\t} else {\n\t\tresult = '@@observable';\n\t}\n\n\treturn result;\n};\n","/* global window */\nimport ponyfill from './ponyfill.js';\n\nvar root;\n\nif (typeof self !== 'undefined') {\n root = self;\n} else if (typeof window !== 'undefined') {\n root = window;\n} else if (typeof global !== 'undefined') {\n root = global;\n} else if (typeof module !== 'undefined') {\n root = module;\n} else {\n root = Function('return this')();\n}\n\nvar result = ponyfill(root);\nexport default result;\n","import $$observable from 'symbol-observable';\n\n/**\n * These are private action types reserved by Redux.\n * For any unknown actions, you must return the current state.\n * If the current state is undefined, you must return the initial state.\n * Do not reference these action types directly in your code.\n */\nvar randomString = function randomString() {\n return Math.random().toString(36).substring(7).split('').join('.');\n};\n\nvar ActionTypes = {\n INIT: \"@@redux/INIT\" + randomString(),\n REPLACE: \"@@redux/REPLACE\" + randomString(),\n PROBE_UNKNOWN_ACTION: function PROBE_UNKNOWN_ACTION() {\n return \"@@redux/PROBE_UNKNOWN_ACTION\" + randomString();\n }\n};\n\n/**\n * @param {any} obj The object to inspect.\n * @returns {boolean} True if the argument appears to be a plain object.\n */\nfunction isPlainObject(obj) {\n if (typeof obj !== 'object' || obj === null) return false;\n var proto = obj;\n\n while (Object.getPrototypeOf(proto) !== null) {\n proto = Object.getPrototypeOf(proto);\n }\n\n return Object.getPrototypeOf(obj) === proto;\n}\n\n/**\n * Creates a Redux store that holds the state tree.\n * The only way to change the data in the store is to call `dispatch()` on it.\n *\n * There should only be a single store in your app. To specify how different\n * parts of the state tree respond to actions, you may combine several reducers\n * into a single reducer function by using `combineReducers`.\n *\n * @param {Function} reducer A function that returns the next state tree, given\n * the current state tree and the action to handle.\n *\n * @param {any} [preloadedState] The initial state. You may optionally specify it\n * to hydrate the state from the server in universal apps, or to restore a\n * previously serialized user session.\n * If you use `combineReducers` to produce the root reducer function, this must be\n * an object with the same shape as `combineReducers` keys.\n *\n * @param {Function} [enhancer] The store enhancer. You may optionally specify it\n * to enhance the store with third-party capabilities such as middleware,\n * time travel, persistence, etc. The only store enhancer that ships with Redux\n * is `applyMiddleware()`.\n *\n * @returns {Store} A Redux store that lets you read the state, dispatch actions\n * and subscribe to changes.\n */\n\nfunction createStore(reducer, preloadedState, enhancer) {\n var _ref2;\n\n if (typeof preloadedState === 'function' && typeof enhancer === 'function' || typeof enhancer === 'function' && typeof arguments[3] === 'function') {\n throw new Error('It looks like you are passing several store enhancers to ' + 'createStore(). This is not supported. Instead, compose them ' + 'together to a single function.');\n }\n\n if (typeof preloadedState === 'function' && typeof enhancer === 'undefined') {\n enhancer = preloadedState;\n preloadedState = undefined;\n }\n\n if (typeof enhancer !== 'undefined') {\n if (typeof enhancer !== 'function') {\n throw new Error('Expected the enhancer to be a function.');\n }\n\n return enhancer(createStore)(reducer, preloadedState);\n }\n\n if (typeof reducer !== 'function') {\n throw new Error('Expected the reducer to be a function.');\n }\n\n var currentReducer = reducer;\n var currentState = preloadedState;\n var currentListeners = [];\n var nextListeners = currentListeners;\n var isDispatching = false;\n /**\n * This makes a shallow copy of currentListeners so we can use\n * nextListeners as a temporary list while dispatching.\n *\n * This prevents any bugs around consumers calling\n * subscribe/unsubscribe in the middle of a dispatch.\n */\n\n function ensureCanMutateNextListeners() {\n if (nextListeners === currentListeners) {\n nextListeners = currentListeners.slice();\n }\n }\n /**\n * Reads the state tree managed by the store.\n *\n * @returns {any} The current state tree of your application.\n */\n\n\n function getState() {\n if (isDispatching) {\n throw new Error('You may not call store.getState() while the reducer is executing. ' + 'The reducer has already received the state as an argument. ' + 'Pass it down from the top reducer instead of reading it from the store.');\n }\n\n return currentState;\n }\n /**\n * Adds a change listener. It will be called any time an action is dispatched,\n * and some part of the state tree may potentially have changed. You may then\n * call `getState()` to read the current state tree inside the callback.\n *\n * You may call `dispatch()` from a change listener, with the following\n * caveats:\n *\n * 1. The subscriptions are snapshotted just before every `dispatch()` call.\n * If you subscribe or unsubscribe while the listeners are being invoked, this\n * will not have any effect on the `dispatch()` that is currently in progress.\n * However, the next `dispatch()` call, whether nested or not, will use a more\n * recent snapshot of the subscription list.\n *\n * 2. The listener should not expect to see all state changes, as the state\n * might have been updated multiple times during a nested `dispatch()` before\n * the listener is called. It is, however, guaranteed that all subscribers\n * registered before the `dispatch()` started will be called with the latest\n * state by the time it exits.\n *\n * @param {Function} listener A callback to be invoked on every dispatch.\n * @returns {Function} A function to remove this change listener.\n */\n\n\n function subscribe(listener) {\n if (typeof listener !== 'function') {\n throw new Error('Expected the listener to be a function.');\n }\n\n if (isDispatching) {\n throw new Error('You may not call store.subscribe() while the reducer is executing. ' + 'If you would like to be notified after the store has been updated, subscribe from a ' + 'component and invoke store.getState() in the callback to access the latest state. ' + 'See https://redux.js.org/api-reference/store#subscribelistener for more details.');\n }\n\n var isSubscribed = true;\n ensureCanMutateNextListeners();\n nextListeners.push(listener);\n return function unsubscribe() {\n if (!isSubscribed) {\n return;\n }\n\n if (isDispatching) {\n throw new Error('You may not unsubscribe from a store listener while the reducer is executing. ' + 'See https://redux.js.org/api-reference/store#subscribelistener for more details.');\n }\n\n isSubscribed = false;\n ensureCanMutateNextListeners();\n var index = nextListeners.indexOf(listener);\n nextListeners.splice(index, 1);\n currentListeners = null;\n };\n }\n /**\n * Dispatches an action. It is the only way to trigger a state change.\n *\n * The `reducer` function, used to create the store, will be called with the\n * current state tree and the given `action`. Its return value will\n * be considered the **next** state of the tree, and the change listeners\n * will be notified.\n *\n * The base implementation only supports plain object actions. If you want to\n * dispatch a Promise, an Observable, a thunk, or something else, you need to\n * wrap your store creating function into the corresponding middleware. For\n * example, see the documentation for the `redux-thunk` package. Even the\n * middleware will eventually dispatch plain object actions using this method.\n *\n * @param {Object} action A plain object representing “what changed”. It is\n * a good idea to keep actions serializable so you can record and replay user\n * sessions, or use the time travelling `redux-devtools`. An action must have\n * a `type` property which may not be `undefined`. It is a good idea to use\n * string constants for action types.\n *\n * @returns {Object} For convenience, the same action object you dispatched.\n *\n * Note that, if you use a custom middleware, it may wrap `dispatch()` to\n * return something else (for example, a Promise you can await).\n */\n\n\n function dispatch(action) {\n if (!isPlainObject(action)) {\n throw new Error('Actions must be plain objects. ' + 'Use custom middleware for async actions.');\n }\n\n if (typeof action.type === 'undefined') {\n throw new Error('Actions may not have an undefined \"type\" property. ' + 'Have you misspelled a constant?');\n }\n\n if (isDispatching) {\n throw new Error('Reducers may not dispatch actions.');\n }\n\n try {\n isDispatching = true;\n currentState = currentReducer(currentState, action);\n } finally {\n isDispatching = false;\n }\n\n var listeners = currentListeners = nextListeners;\n\n for (var i = 0; i < listeners.length; i++) {\n var listener = listeners[i];\n listener();\n }\n\n return action;\n }\n /**\n * Replaces the reducer currently used by the store to calculate the state.\n *\n * You might need this if your app implements code splitting and you want to\n * load some of the reducers dynamically. You might also need this if you\n * implement a hot reloading mechanism for Redux.\n *\n * @param {Function} nextReducer The reducer for the store to use instead.\n * @returns {void}\n */\n\n\n function replaceReducer(nextReducer) {\n if (typeof nextReducer !== 'function') {\n throw new Error('Expected the nextReducer to be a function.');\n }\n\n currentReducer = nextReducer; // This action has a similiar effect to ActionTypes.INIT.\n // Any reducers that existed in both the new and old rootReducer\n // will receive the previous state. This effectively populates\n // the new state tree with any relevant data from the old one.\n\n dispatch({\n type: ActionTypes.REPLACE\n });\n }\n /**\n * Interoperability point for observable/reactive libraries.\n * @returns {observable} A minimal observable of state changes.\n * For more information, see the observable proposal:\n * https://github.com/tc39/proposal-observable\n */\n\n\n function observable() {\n var _ref;\n\n var outerSubscribe = subscribe;\n return _ref = {\n /**\n * The minimal observable subscription method.\n * @param {Object} observer Any object that can be used as an observer.\n * The observer object should have a `next` method.\n * @returns {subscription} An object with an `unsubscribe` method that can\n * be used to unsubscribe the observable from the store, and prevent further\n * emission of values from the observable.\n */\n subscribe: function subscribe(observer) {\n if (typeof observer !== 'object' || observer === null) {\n throw new TypeError('Expected the observer to be an object.');\n }\n\n function observeState() {\n if (observer.next) {\n observer.next(getState());\n }\n }\n\n observeState();\n var unsubscribe = outerSubscribe(observeState);\n return {\n unsubscribe: unsubscribe\n };\n }\n }, _ref[$$observable] = function () {\n return this;\n }, _ref;\n } // When a store is created, an \"INIT\" action is dispatched so that every\n // reducer returns their initial state. This effectively populates\n // the initial state tree.\n\n\n dispatch({\n type: ActionTypes.INIT\n });\n return _ref2 = {\n dispatch: dispatch,\n subscribe: subscribe,\n getState: getState,\n replaceReducer: replaceReducer\n }, _ref2[$$observable] = observable, _ref2;\n}\n\n/**\n * Prints a warning in the console if it exists.\n *\n * @param {String} message The warning message.\n * @returns {void}\n */\nfunction warning(message) {\n /* eslint-disable no-console */\n if (typeof console !== 'undefined' && typeof console.error === 'function') {\n console.error(message);\n }\n /* eslint-enable no-console */\n\n\n try {\n // This error was thrown as a convenience so that if you enable\n // \"break on all exceptions\" in your console,\n // it would pause the execution at this line.\n throw new Error(message);\n } catch (e) {} // eslint-disable-line no-empty\n\n}\n\nfunction getUndefinedStateErrorMessage(key, action) {\n var actionType = action && action.type;\n var actionDescription = actionType && \"action \\\"\" + String(actionType) + \"\\\"\" || 'an action';\n return \"Given \" + actionDescription + \", reducer \\\"\" + key + \"\\\" returned undefined. \" + \"To ignore an action, you must explicitly return the previous state. \" + \"If you want this reducer to hold no value, you can return null instead of undefined.\";\n}\n\nfunction getUnexpectedStateShapeWarningMessage(inputState, reducers, action, unexpectedKeyCache) {\n var reducerKeys = Object.keys(reducers);\n var argumentName = action && action.type === ActionTypes.INIT ? 'preloadedState argument passed to createStore' : 'previous state received by the reducer';\n\n if (reducerKeys.length === 0) {\n return 'Store does not have a valid reducer. Make sure the argument passed ' + 'to combineReducers is an object whose values are reducers.';\n }\n\n if (!isPlainObject(inputState)) {\n return \"The \" + argumentName + \" has unexpected type of \\\"\" + {}.toString.call(inputState).match(/\\s([a-z|A-Z]+)/)[1] + \"\\\". Expected argument to be an object with the following \" + (\"keys: \\\"\" + reducerKeys.join('\", \"') + \"\\\"\");\n }\n\n var unexpectedKeys = Object.keys(inputState).filter(function (key) {\n return !reducers.hasOwnProperty(key) && !unexpectedKeyCache[key];\n });\n unexpectedKeys.forEach(function (key) {\n unexpectedKeyCache[key] = true;\n });\n if (action && action.type === ActionTypes.REPLACE) return;\n\n if (unexpectedKeys.length > 0) {\n return \"Unexpected \" + (unexpectedKeys.length > 1 ? 'keys' : 'key') + \" \" + (\"\\\"\" + unexpectedKeys.join('\", \"') + \"\\\" found in \" + argumentName + \". \") + \"Expected to find one of the known reducer keys instead: \" + (\"\\\"\" + reducerKeys.join('\", \"') + \"\\\". Unexpected keys will be ignored.\");\n }\n}\n\nfunction assertReducerShape(reducers) {\n Object.keys(reducers).forEach(function (key) {\n var reducer = reducers[key];\n var initialState = reducer(undefined, {\n type: ActionTypes.INIT\n });\n\n if (typeof initialState === 'undefined') {\n throw new Error(\"Reducer \\\"\" + key + \"\\\" returned undefined during initialization. \" + \"If the state passed to the reducer is undefined, you must \" + \"explicitly return the initial state. The initial state may \" + \"not be undefined. If you don't want to set a value for this reducer, \" + \"you can use null instead of undefined.\");\n }\n\n if (typeof reducer(undefined, {\n type: ActionTypes.PROBE_UNKNOWN_ACTION()\n }) === 'undefined') {\n throw new Error(\"Reducer \\\"\" + key + \"\\\" returned undefined when probed with a random type. \" + (\"Don't try to handle \" + ActionTypes.INIT + \" or other actions in \\\"redux/*\\\" \") + \"namespace. They are considered private. Instead, you must return the \" + \"current state for any unknown actions, unless it is undefined, \" + \"in which case you must return the initial state, regardless of the \" + \"action type. The initial state may not be undefined, but can be null.\");\n }\n });\n}\n/**\n * Turns an object whose values are different reducer functions, into a single\n * reducer function. It will call every child reducer, and gather their results\n * into a single state object, whose keys correspond to the keys of the passed\n * reducer functions.\n *\n * @param {Object} reducers An object whose values correspond to different\n * reducer functions that need to be combined into one. One handy way to obtain\n * it is to use ES6 `import * as reducers` syntax. The reducers may never return\n * undefined for any action. Instead, they should return their initial state\n * if the state passed to them was undefined, and the current state for any\n * unrecognized action.\n *\n * @returns {Function} A reducer function that invokes every reducer inside the\n * passed object, and builds a state object with the same shape.\n */\n\n\nfunction combineReducers(reducers) {\n var reducerKeys = Object.keys(reducers);\n var finalReducers = {};\n\n for (var i = 0; i < reducerKeys.length; i++) {\n var key = reducerKeys[i];\n\n if (process.env.NODE_ENV !== 'production') {\n if (typeof reducers[key] === 'undefined') {\n warning(\"No reducer provided for key \\\"\" + key + \"\\\"\");\n }\n }\n\n if (typeof reducers[key] === 'function') {\n finalReducers[key] = reducers[key];\n }\n }\n\n var finalReducerKeys = Object.keys(finalReducers); // This is used to make sure we don't warn about the same\n // keys multiple times.\n\n var unexpectedKeyCache;\n\n if (process.env.NODE_ENV !== 'production') {\n unexpectedKeyCache = {};\n }\n\n var shapeAssertionError;\n\n try {\n assertReducerShape(finalReducers);\n } catch (e) {\n shapeAssertionError = e;\n }\n\n return function combination(state, action) {\n if (state === void 0) {\n state = {};\n }\n\n if (shapeAssertionError) {\n throw shapeAssertionError;\n }\n\n if (process.env.NODE_ENV !== 'production') {\n var warningMessage = getUnexpectedStateShapeWarningMessage(state, finalReducers, action, unexpectedKeyCache);\n\n if (warningMessage) {\n warning(warningMessage);\n }\n }\n\n var hasChanged = false;\n var nextState = {};\n\n for (var _i = 0; _i < finalReducerKeys.length; _i++) {\n var _key = finalReducerKeys[_i];\n var reducer = finalReducers[_key];\n var previousStateForKey = state[_key];\n var nextStateForKey = reducer(previousStateForKey, action);\n\n if (typeof nextStateForKey === 'undefined') {\n var errorMessage = getUndefinedStateErrorMessage(_key, action);\n throw new Error(errorMessage);\n }\n\n nextState[_key] = nextStateForKey;\n hasChanged = hasChanged || nextStateForKey !== previousStateForKey;\n }\n\n hasChanged = hasChanged || finalReducerKeys.length !== Object.keys(state).length;\n return hasChanged ? nextState : state;\n };\n}\n\nfunction bindActionCreator(actionCreator, dispatch) {\n return function () {\n return dispatch(actionCreator.apply(this, arguments));\n };\n}\n/**\n * Turns an object whose values are action creators, into an object with the\n * same keys, but with every function wrapped into a `dispatch` call so they\n * may be invoked directly. This is just a convenience method, as you can call\n * `store.dispatch(MyActionCreators.doSomething())` yourself just fine.\n *\n * For convenience, you can also pass an action creator as the first argument,\n * and get a dispatch wrapped function in return.\n *\n * @param {Function|Object} actionCreators An object whose values are action\n * creator functions. One handy way to obtain it is to use ES6 `import * as`\n * syntax. You may also pass a single function.\n *\n * @param {Function} dispatch The `dispatch` function available on your Redux\n * store.\n *\n * @returns {Function|Object} The object mimicking the original object, but with\n * every action creator wrapped into the `dispatch` call. If you passed a\n * function as `actionCreators`, the return value will also be a single\n * function.\n */\n\n\nfunction bindActionCreators(actionCreators, dispatch) {\n if (typeof actionCreators === 'function') {\n return bindActionCreator(actionCreators, dispatch);\n }\n\n if (typeof actionCreators !== 'object' || actionCreators === null) {\n throw new Error(\"bindActionCreators expected an object or a function, instead received \" + (actionCreators === null ? 'null' : typeof actionCreators) + \". \" + \"Did you write \\\"import ActionCreators from\\\" instead of \\\"import * as ActionCreators from\\\"?\");\n }\n\n var boundActionCreators = {};\n\n for (var key in actionCreators) {\n var actionCreator = actionCreators[key];\n\n if (typeof actionCreator === 'function') {\n boundActionCreators[key] = bindActionCreator(actionCreator, dispatch);\n }\n }\n\n return boundActionCreators;\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n keys.push.apply(keys, Object.getOwnPropertySymbols(object));\n }\n\n if (enumerableOnly) keys = keys.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(source, true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(source).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\n/**\n * Composes single-argument functions from right to left. The rightmost\n * function can take multiple arguments as it provides the signature for\n * the resulting composite function.\n *\n * @param {...Function} funcs The functions to compose.\n * @returns {Function} A function obtained by composing the argument functions\n * from right to left. For example, compose(f, g, h) is identical to doing\n * (...args) => f(g(h(...args))).\n */\nfunction compose() {\n for (var _len = arguments.length, funcs = new Array(_len), _key = 0; _key < _len; _key++) {\n funcs[_key] = arguments[_key];\n }\n\n if (funcs.length === 0) {\n return function (arg) {\n return arg;\n };\n }\n\n if (funcs.length === 1) {\n return funcs[0];\n }\n\n return funcs.reduce(function (a, b) {\n return function () {\n return a(b.apply(void 0, arguments));\n };\n });\n}\n\n/**\n * Creates a store enhancer that applies middleware to the dispatch method\n * of the Redux store. This is handy for a variety of tasks, such as expressing\n * asynchronous actions in a concise manner, or logging every action payload.\n *\n * See `redux-thunk` package as an example of the Redux middleware.\n *\n * Because middleware is potentially asynchronous, this should be the first\n * store enhancer in the composition chain.\n *\n * Note that each middleware will be given the `dispatch` and `getState` functions\n * as named arguments.\n *\n * @param {...Function} middlewares The middleware chain to be applied.\n * @returns {Function} A store enhancer applying the middleware.\n */\n\nfunction applyMiddleware() {\n for (var _len = arguments.length, middlewares = new Array(_len), _key = 0; _key < _len; _key++) {\n middlewares[_key] = arguments[_key];\n }\n\n return function (createStore) {\n return function () {\n var store = createStore.apply(void 0, arguments);\n\n var _dispatch = function dispatch() {\n throw new Error('Dispatching while constructing your middleware is not allowed. ' + 'Other middleware would not be applied to this dispatch.');\n };\n\n var middlewareAPI = {\n getState: store.getState,\n dispatch: function dispatch() {\n return _dispatch.apply(void 0, arguments);\n }\n };\n var chain = middlewares.map(function (middleware) {\n return middleware(middlewareAPI);\n });\n _dispatch = compose.apply(void 0, chain)(store.dispatch);\n return _objectSpread2({}, store, {\n dispatch: _dispatch\n });\n };\n };\n}\n\n/*\n * This is a dummy function to check if the function name has been altered by minification.\n * If the function has been minified and NODE_ENV !== 'production', warn the user.\n */\n\nfunction isCrushed() {}\n\nif (process.env.NODE_ENV !== 'production' && typeof isCrushed.name === 'string' && isCrushed.name !== 'isCrushed') {\n warning('You are currently using minified code outside of NODE_ENV === \"production\". ' + 'This means that you are running a slower development build of Redux. ' + 'You can use loose-envify (https://github.com/zertosh/loose-envify) for browserify ' + 'or setting mode to production in webpack (https://webpack.js.org/concepts/mode/) ' + 'to ensure you have the correct code for your production build.');\n}\n\nexport { ActionTypes as __DO_NOT_USE__ActionTypes, applyMiddleware, bindActionCreators, combineReducers, compose, createStore };\n","import { createReducer } from \"@reduxjs/toolkit\"\r\n\r\nimport { setLoading, setModal, setUser } from \"./action\"\r\n\r\nconst initialState: any = {\r\n isLoading: false,\r\n modal: {\r\n isOpen: false\r\n },\r\n user: null\r\n}\r\n\r\nconst commonReducer = createReducer(initialState, builder => {\r\n builder\r\n .addCase(setLoading, (state, action) => {\r\n state.isLoading = action.payload\r\n })\r\n .addCase(setModal, (state, action) => {\r\n state.modal = action.payload\r\n })\r\n .addCase(setUser, (state, action) => {\r\n state.user = action.payload\r\n })\r\n})\r\n\r\nexport default commonReducer\r\n","import { createAction } from \"@reduxjs/toolkit\"\n\nexport const setClassList = createAction<boolean | undefined>(\"classes/setClassList\")","import { createReducer } from \"@reduxjs/toolkit\"\r\n\r\nimport { setClassList } from \"./action\"\r\n\r\nconst initialState: any = {\r\n classList: []\r\n}\r\n\r\nconst classReducer = createReducer(initialState, builder => {\r\n builder\r\n .addCase(setClassList, (state, action) => {\r\n state.classList = action.payload\r\n })\r\n})\r\n\r\nexport default classReducer","import { createReducer } from \"@reduxjs/toolkit\"\r\n\r\nimport { setFaqList } from \"./action\"\r\n\r\nconst initialState: any = {\r\n faqList: []\r\n}\r\n\r\nconst commonReducer = createReducer(initialState, builder => {\r\n builder\r\n .addCase(setFaqList, (state, action) => {\r\n state.faqList = action.payload\r\n })\r\n})\r\n\r\nexport default commonReducer","import { createReducer } from \"@reduxjs/toolkit\"\r\n\r\nimport { setSkillList } from \"./action\"\r\n\r\nconst initialState: any = {\r\n skillList: []\r\n}\r\n\r\nconst commonReducer = createReducer(initialState, builder => {\r\n builder\r\n .addCase(setSkillList, (state, action) => {\r\n state.skillList = action.payload\r\n })\r\n})\r\n\r\nexport default commonReducer","import { createReducer } from \"@reduxjs/toolkit\"\r\n\r\nimport { setEmailTemplateList } from \"./action\"\r\n\r\nconst initialState: any = {\r\n emailTemplateList: []\r\n}\r\n\r\nconst emailTemplateReducer = createReducer(initialState, builder => {\r\n builder\r\n .addCase(setEmailTemplateList, (state, action) => {\r\n state.emailTemplateList = action.payload\r\n })\r\n})\r\n\r\nexport default emailTemplateReducer","import { createAction } from \"@reduxjs/toolkit\"\r\n\r\nexport const setSuggestionList = createAction<boolean | undefined>(\"suggestionBank/setSuggestionList\")","import { createReducer } from \"@reduxjs/toolkit\"\r\n\r\nimport { setSuggestionList } from \"./action\"\r\n\r\nconst initialState: any = {\r\n suggestionList: []\r\n}\r\n\r\nconst suggestionBankReducer = createReducer(initialState, builder => {\r\n builder.addCase(setSuggestionList, (state, action) => {\r\n state.suggestionList = action.payload\r\n })\r\n})\r\n\r\nexport default suggestionBankReducer\r\n","import { createAction } from \"@reduxjs/toolkit\"\r\n\r\nexport const setStrategyList = createAction<boolean | undefined>(\"learningStrategy/setStrategyList\")","import { createReducer } from \"@reduxjs/toolkit\"\r\n\r\nimport { setStrategyList } from \"./action\"\r\n\r\nconst initialState: any = {\r\n strategyList: []\r\n}\r\n\r\nconst learningStrategyReducer = createReducer(initialState, builder => {\r\n builder\r\n .addCase(setStrategyList, (state, action) => {\r\n state.strategyList = action.payload\r\n })\r\n})\r\n\r\nexport default learningStrategyReducer","import { createAction } from \"@reduxjs/toolkit\"\r\n\r\nexport const setSubjectList = createAction<boolean | undefined>(\r\n \"subjects/setSubjectList\"\r\n)\r\n","import { createReducer } from \"@reduxjs/toolkit\"\r\n\r\nimport { setSubjectList } from \"./action\"\r\n\r\nconst initialState: any = {\r\n subjectList: []\r\n}\r\n\r\nconst commonReducer = createReducer(initialState, builder => {\r\n builder.addCase(setSubjectList, (state, action) => {\r\n state.subjectList = action.payload\r\n })\r\n})\r\n\r\nexport default commonReducer\r\n","import { createAction } from \"@reduxjs/toolkit\"\r\n\r\nexport const setQuestionList = createAction<boolean | undefined>(\r\n \"questionBank/setQuestionList\"\r\n)\r\n","import { createReducer } from \"@reduxjs/toolkit\"\r\n\r\nimport { setQuestionList } from \"./action\"\r\n\r\nconst initialState: any = {\r\n questionList: []\r\n}\r\n\r\nconst questionBankReducer = createReducer(initialState, builder => {\r\n builder.addCase(setQuestionList, (state, action) => {\r\n state.questionList = action.payload\r\n })\r\n})\r\n\r\nexport default questionBankReducer\r\n","import { createAction } from \"@reduxjs/toolkit\"\r\n\r\nexport const setBadgeList = createAction<boolean | undefined>(\r\n \"badges/setBadgeList\"\r\n)\r\n","import { createReducer } from \"@reduxjs/toolkit\"\r\n\r\nimport { setBadgeList } from \"./action\"\r\n\r\nconst initialState: any = {\r\n badgeList: []\r\n}\r\n\r\nconst commonReducer = createReducer(initialState, builder => {\r\n builder.addCase(setBadgeList, (state, action) => {\r\n state.badgeList = action.payload\r\n })\r\n})\r\n\r\nexport default commonReducer\r\n","import { createAction } from \"@reduxjs/toolkit\"\r\n\r\nexport const setGoalExampleList = createAction<any>(\r\n \"goalExamples/setGoalExampleList\"\r\n)\r\n","import { createReducer } from \"@reduxjs/toolkit\"\r\n\r\nimport { setGoalExampleList } from \"./action\"\r\n\r\nconst initialState: any = {\r\n goalExampleList: []\r\n}\r\n\r\nconst commonReducer = createReducer(initialState, builder => {\r\n builder.addCase(setGoalExampleList, (state, action) => {\r\n state.goalExampleList = action.payload\r\n })\r\n})\r\n\r\nexport default commonReducer\r\n","import { createReducer } from \"@reduxjs/toolkit\"\r\n\r\nimport { setUserList } from \"./action\"\r\n\r\nconst initialState: any = {\r\n userList: []\r\n}\r\n\r\nconst commonReducer = createReducer(initialState, builder => {\r\n builder.addCase(setUserList, (state, action) => {\r\n state.userList = action.payload\r\n })\r\n})\r\nexport default commonReducer\r\n","import { combineReducers } from \"redux\"\r\n\r\nimport common from \"./redux/commons/reducer\"\r\nimport classes from \"./redux/classes/reducer\"\r\nimport faqs from \"./redux/faqs/reducer\"\r\nimport skills from \"./redux/skills/reducer\"\r\nimport emailTemplate from \"./redux/emailTemplates/reducer\"\r\nimport suggestionBank from \"./redux/suggestionBanks/reducer\"\r\nimport learningStrategy from \"./redux/learningStrategies/reducer\"\r\nimport subjects from \"./redux/subjects/reducer\"\r\nimport questionBank from \"./redux/questionBanks/reducer\"\r\nimport badges from \"./redux/badges/reducer\"\r\nimport goalExamples from \"./redux/goalExamples/reducer\"\r\nimport users from \"./redux/users/reducer\"\r\n\r\nconst rootReducer = combineReducers({\r\n common,\r\n classes,\r\n faqs,\r\n skills,\r\n emailTemplate,\r\n suggestionBank,\r\n learningStrategy,\r\n subjects,\r\n questionBank,\r\n badges,\r\n goalExamples,\r\n users\r\n})\r\n\r\nexport default rootReducer\r\n","import { configureStore } from \"@reduxjs/toolkit\"\r\nimport logger from \"redux-logger\"\r\nimport { Store } from \"redux\"\r\n\r\nimport rootReducer from \"./rootReducer\"\r\n\r\nconst store: Store = configureStore({\r\n reducer: rootReducer,\r\n middleware: getDefaultMiddleware => getDefaultMiddleware().concat(logger)\r\n})\r\n\r\nexport default store","export default () => (Math.random() + 1).toString(36).substring(7)\r\n","const Images = {\r\n USER_CONVERSATION_AVATAR: \"images/user.png\",\r\n GROUP_CONVERSATION_AVATAR: \"images/group.png\"\r\n}\r\n\r\nexport default Images\r\n"],"names":["style","fontSize","ErrorHandler","text","React","className","TINY_MCE_API_KEY","ACCESS_TOKEN","DEFAULT_PAGE_SIZE_VALUES","label","value","DEFAULT_PAGE_SIZE","DEFAULT_FILTER","searchString","currentPage","pageSize","sortBy","sortOrder","name","COLORS","DANGER","WARNING","SUCCESS","INFO","DATE_FORMAT","DATE_MIN_VALUE","LICENSE_AGGRID","BASE_URL","windowUrl","window","location","href","url","split","QUESTION_TYPES_OPTIONS","QUESTION_TYPES","SINGLE_CHOICE","MULTIPLE_CHOICE","TEXT_INPUT","SLIDER","PROGRESS_BAR","STAR_RATING","TEXT_INPUT_WITH_SUGGESTIONS","STAR_OPTIONS","ANSWER_EDITOR_HEIGHT","localStorage","getItem","err","setLoading","createAction","setModal","setUser","params","Object","keys","filter","key","map","Array","isArray","i","encodeURIComponent","join","api","axios","create","baseURL","timeout","headers","paramsSerializer","encodeParams","apiUpload","forEach","interceptors","request","use","config","token","getAccessToken","Authorization","error","Promise","reject","ACCOUNT_URL","logIn","data","post","checkToken","getInfo","get","defaultInfo","email","password","HOME_PAGE","useLogin","dispatch","useDispatch","history","useHistory","useEffect","push","userLogin","useCallback","res","id","firstName","lastName","roles","setItem","removeItem","schema","yup","required","Login","Formik","initialValues","enableReinitialize","validationSchema","onSubmit","values","formikProps","handleChange","handleBlur","handleSubmit","touched","errors","emailError","passwordError","Form","Container","Row","Col","md","CardGroup","Card","CardBody","InputGroup","InputGroupAddon","addonType","InputGroupText","CIcon","Input","type","onChange","onBlur","placeholder","xs","Button","color","TheSidebar","navigation","show","useSelector","state","sidebarShow","CSidebar","onShowChange","val","CSidebarBrand","to","height","CSidebarNav","CCreateElement","items","components","CSidebarNavDivider","CSidebarNavDropdown","CSidebarNavItem","CSidebarNavTitle","CSidebarMinimizer","TheHeaderDropdown","signOut","CDropdown","inNav","CDropdownToggle","caret","CImg","src","alt","CDropdownMenu","placement","CDropdownItem","onClick","toogleSidebar","document","querySelector","click","TheHeader","CHeader","withSubheader","CToggler","inHeader","CHeaderBrand","CHeaderNav","NotFound","Link","loading","TheContent","routes","CContainer","fluid","Suspense","fallback","Switch","route","idx","Route","path","exact","component","memo","loadingStyle","minWidth","minHeight","position","top","left","zIndex","backgroundColor","display","justifyContent","alignItems","Loading","isLoading","common","role","firstCheckToken","tokenStatus","canAccess","userRoles","componentRoles","intersects","includes","length","TheLayout","user","authRoutes","useMemo","canAccessRoute","authNavigations","nav","checkAuthentication","loadInfo","resetAuth","info","headerStyle","borderBottom","paddingBottom","headerTextStyle","textAlign","CommonHeader","header","rootHeader","buttonTextStyle","fontWeight","AddButton","FaPlus","DeleteButtonIcon","title","FaTrashAlt","LinkEditButton","EmptyDataAlert","Alert","defaultProps","time","date","Date","toLocaleString","format","setEmailTemplateList","EMAIL_TEMPLATE_URL","getById","update","put","remove","CREATE_TEMPLATE_URL","useEmailTemplateList","emailTemplateList","emailTemplate","useState","filters","setFilters","changeFilters","updatedFilters","getData","alert","message","removeData","isOpen","onConfirm","goToDetail","testDataCategory","EmailTemplateList","onRemove","Table","bordered","hover","striped","responsive","size","record","subject","categoryName","utcToLocalTime","createdAt","comment","width","bottom","borderTop","marginTop","marginLeft","padding","DetailActionButtons","confirmText","onCancel","form","AddButtonIcon","meaning","MailSubject","param","options","MailCategorySelector","props","initValue","find","option","Select","menubar","plugins","toolbar","categoryId","body","EMAIL_TEMPLATE_LIST_URL","useEmailTemplateDetail","editorRef","emailTemplateDetail","setEmailTemplateDetail","editor","execCommand","setEditorRef","node","addParams","currentBody","newValue","backToList","confirmData","next","CREATE_TEMPLATE_HEADER","EDIT_TEMPLATE_HEADER","EmailTemplateDetail","useParams","parseInt","setFieldValue","Label","e","Editor","ref","apiKey","initialValue","init","editorConfig","onEditorChange","content","MailParam","CommonModal","children","cancelText","noFooter","setIsOpen","toggle","cancel","useImperativeHandle","Modal","ModalHeader","ModalBody","ModalFooter","forwardRef","question","answer","FaqDetailModal","faqDetail","actions","resetForm","setFaqList","FAQ_URL","useFaqList","faqList","faqs","useFaqDetail","setId","setFaqDetail","cb","FaqList","modal","useRef","openModal","faqId","current","CustomPagination","changePage","totalRecordCount","changePageSize","input","setInput","toString","Pagination","PaginationItem","PaginationLink","previous","tag","disabled","target","onKeyUp","keyCode","SkillDetailModal","skillDetail","setSkillList","SKILL_URL","useSkillList","skillList","skills","useSkillDetail","setSkillDetail","SkillList","skillId","setUserList","USER_URL","useUserList","userList","users","console","log","UserList","modalInfo","NotificationModal","confirm","fade","EditButtonIcon","FaRegEdit","DropdownIndicator","CreatableSelector","inputValue","handleInputChange","handleKeyDown","Creatable","isClearable","isMulti","menuIsOpen","onInputChange","onKeyDown","SearchBox","onSearch","setSearchString","QuestionTypeSelector","RequiredLabel","StarRatingSelector","menuPlacement","this","global","ponyfill","initialState","commonReducer","createReducer","builder","addCase","action","payload","setClassList","classList","classReducer","emailTemplateReducer","setSuggestionList","suggestionList","suggestionBankReducer","setStrategyList","strategyList","learningStrategyReducer","setSubjectList","subjectList","setQuestionList","questionList","questionBankReducer","setBadgeList","badgeList","setGoalExampleList","goalExampleList","rootReducer","combineReducers","classes","suggestionBank","learningStrategy","subjects","questionBank","badges","goalExamples","store","configureStore","reducer","middleware","getDefaultMiddleware","concat","logger","Math","random","substring","Images","USER_CONVERSATION_AVATAR","GROUP_CONVERSATION_AVATAR"],"mappings":"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"}
|