{"version":3,"sources":["serviceWorker.js","services/AADService.js","core/network/httpUtil.js","services/Base/BaseServices.js","services/LearningPlans/LearningPlansServices.js","core/ranges/ranges.js","services/LearningPlansUserRating/LearningPlansUserRatingServices.js","providers/AlertProvider.js","components/LearningPlans/LearningPlanRatingModal.js","components/LearningPlans/LearningPlansCard.js","components/Home/SearchBar.js","services/LearningSteps/LearningStepsServices.js","services/DigitalTools/DigitalToolsServices.js","services/ExperienceFields/ExperienceFieldsServices.js","services/Disciplines/DisciplinesServices.js","components/Home/FilterBar.js","components/Home/Home.js","components/layouts/Footer.js","components/layouts/Header.js","components/layouts/LayoutDefault.js","services/SkillCompetences/SkillCompetencesServices.js","components/LearningPlans/LearningPlansDetails.js","routes.js","indexApp.js","core/constants.js","adalConfig.js","index.js"],"names":["Boolean","window","location","hostname","match","AADService","authContext","login","this","getUser","logOut","getCachedToken","endpoint","getCachedUser","decode","getToken","claims","getClaims","hasOwnProperty","roles","role","getRoles","i","length","HttpUtil","headers","aadService","UserCredentials","url","parameters","callback","errorCallback","reqHeaders","buildHeaders","axios","post","then","catch","err","handleError","put","delete","basicAuthHeader","buildLoginHeaders","strLogin","strSenha","granttype","get","console","log","BaseServices","apiUrl","Config","URLS","API","services","getData","page","pageSize","cb","errorCb","GET","response","data","updateData","id","Put","removeData","Delete","saveData","POST","getDetails","search","active","removed","Base","BaseService","LearningPlansServices","deleteAttachment","attachmentId","urlApi","downloadMaterial","learningPlanId","Download","range","start","end","Array","fill","undefined","map","_","LearningPlansUserRating","getLearningPlansUserRating","getLearningPlansUser","AlertContext","React","createContext","AlertProvider","props","info","msg","setState","newAlert","type","message","success","warning","error","setHoldState","value","hold","setSingleAlertState","singleAlert","state","alerts","clearAlerts","setSingleAlertStatus","alert","idx","indexOf","slice","handleRemovedAlerts","hasAlerts","prevProps","prevState","snapshot","lastAlertId","Math","max","apply","item","lastAlert","find","updateLock","findIndex","x","alertType","replace","Date","getTime","headline","blUpdateLock","handleInsertedAlert","Provider","position","timeout","dismissTitle","onDismiss","onDismissedAlert","bind","children","Component","LearningPlanRatingModal","renderStars","selectedStars","stars","style","color","index","className","onClick","changeStar","handleSubmit","e","preventDefault","isUpdate","dado","ratingId","name","UserInfo","profile","unique_name","planId","description","learningPlanName","LearningPlansUserRatingServices","showSuccessMessage","toggleModal","showErrorMessage","Error","novodado","showModal","onCloseModal","comment","AzureADService","target","checked","field","invalid","required","Modal","isOpen","toggle","onClosed","onPressClose","Consumer","showInfoMessage","showWarningMessage","ModalHeader","ModalBody","Input","placeholder","onChange","handleInputChange","maxlength","ModalFooter","Button","LearningPlansCard","setCloseModal","setRedirect","redirect","renderRedirect","to","handleDownload","LearningPlanServices","element","document","createElement","setAttribute","display","body","appendChild","click","removeChild","renderModal","downloadUrl","ratingStars","href","data-path-hover","viewBox","preserveAspectRatio","d","learninStepName","ratingstars","data-toggle","src","alt","SearchBar","_handleKeyDown","key","SearchPlan","clean","learningPlans","loading","ServicesLearningPlans","valor","procura","filter","setplansCallback","god","Container","Row","Col","xs","Autocomplete","options","getOptionLabel","option","width","renderInput","params","TextField","label","variant","onKeyDown","cleanSearch","aria-hidden","LearningStepsServices","DigitalToolsServices","ExperienceFieldsServices","getExperienceFieldsByLearningStepId","learningStepId","DisciplinesServices","GetDisciplinesByLearningStepId","FilterBar","getLearningSteps","learningSteps","handleErrorMessage","getDigitalTools","digitalTools","getExperienceFields","experienceFields","getDisciplines","Disciplines","disciplines","getknowledgeArea","arrayknowledgeArea","sort","a","b","localeCompare","knowledgeArea","getLearningPlans","totalItens","preencherModel","preencheu","Grades","learningStepsFilter","digitalToolsFilter","experienceFieldsFilter","disciplinesFilter","knowledgeAreaFilter","model","forEach","juntaTudo","concat","parans","idFind","push","digitaltools","indice","splice","dataFilter","digitaltoolsFilter","setLoadingCallback","class","data-bs-toggle","data-bs-target","aria-controls","aria-selected","aria-labelledby","Label","check","filterLearningPlans","Home","loadMore","innerHeight","documentElement","scrollTop","scrollingElement","scrollHeight","showLoadingBottom","render","loadingBottom","setplans","setLoading","addEventListener","removeEventListener","statusLoading","normalize","learningStep","RatingStars","renderLoading","renderLeaningPlans","Footer","Header","LayoutDefault","onCollapse","collapsed","SkillCompetencesServices","getSkillCompetencesDisciplinesByLearningPlanId","getSkillCompetencesExperienceFieldsByLearningPlanId","getSkillCompetencesDisciplinesByLearningStepId","getSkillCompetencesExperienceFieldsByLearningStepId","LearningPlansDetails","listSkillCompetencesDisciplines","pages","listSkillCompetencesExperienceFields","handlePrint","print","htmlAttachments","attachments","imgUrl","mimeType","bnccCapabilities","curriculumComponents","educationCapabilities","subLevel","listSkillCompetences","ItemSkillCompetence","skillCompetencesCode","knowledgeAreaName","itemDisciplina","skillCompetences","plan","dangerouslySetInnerHTML","__html","generalObjectives","specificObjectives","learningStrategies","didacticResources","assessment","references","learningPlansAttachments","htmlSkillCompetences","searchKey","duration","learningPlansDigitalTools","t","reduce","prev","curr","learningPlansRelateds","learningPlanReferencesId","withRouter","Routes","exact","path","ReactDOM","getElementById","navigator","serviceWorker","ready","registration","unregister","STORAGE_KEYS","JWT_KEY","JWT_REF_KEY","JWT_EXP_KEY","USER_NAME","USER_EMAIL","REDIRECT","ADAL","TENANT","CLIENT_ID","CLIENT_SECRET","dotenv","config","process","adalConfig","tenant","clientId","Constants","redirectUri","endpoints","api","cacheLocation","AuthenticationContext","withAdalLogin","runWithAdal","require"],"mappings":"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","file":"static/js/main.da04252d.chunk.js","sourcesContent":["// This optional code is used to register a service worker.\n// register() is not called by default.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on subsequent visits to a page, after all the\n// existing tabs open on the page have been closed, since previously cached\n// resources are updated in the background.\n\n// To learn more about the benefits of this model and instructions on how to\n// opt-in, read https://bit.ly/CRA-PWA\n\nconst isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n // [::1] is the IPv6 localhost address.\n window.location.hostname === '[::1]' ||\n // 127.0.0.1/8 is considered localhost for IPv4.\n window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n);\n\nexport function register(config) {\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\n // The URL constructor is available in all browsers that support SW.\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href);\n if (publicUrl.origin !== window.location.origin) {\n // Our service worker won't work if PUBLIC_URL is on a different origin\n // from what our page is served on. This might happen if a CDN is used to\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\n return;\n }\n\n window.addEventListener('load', () => {\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\n\n if (isLocalhost) {\n // This is running on localhost. Let's check if a service worker still exists or not.\n checkValidServiceWorker(swUrl, config);\n\n // Add some additional logging to localhost, pointing developers to the\n // service worker/PWA documentation.\n navigator.serviceWorker.ready.then(() => {\n console.log(\n 'This web app is being served cache-first by a service ' +\n 'worker. To learn more, visit https://bit.ly/CRA-PWA'\n );\n });\n } else {\n // Is not localhost. Just register service worker\n registerValidSW(swUrl, config);\n }\n });\n }\n}\n\nfunction registerValidSW(swUrl, config) {\n navigator.serviceWorker\n .register(swUrl)\n .then(registration => {\n registration.onupdatefound = () => {\n const installingWorker = registration.installing;\n if (installingWorker == null) {\n return;\n }\n installingWorker.onstatechange = () => {\n if (installingWorker.state === 'installed') {\n if (navigator.serviceWorker.controller) {\n // At this point, the updated precached content has been fetched,\n // but the previous service worker will still serve the older\n // content until all client tabs are closed.\n console.log(\n 'New content is available and will be used when all ' +\n 'tabs for this page are closed. See https://bit.ly/CRA-PWA.'\n );\n\n // Execute callback\n if (config && config.onUpdate) {\n config.onUpdate(registration);\n }\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a\n // \"Content is cached for offline use.\" message.\n console.log('Content is cached for offline use.');\n\n // Execute callback\n if (config && config.onSuccess) {\n config.onSuccess(registration);\n }\n }\n }\n };\n };\n })\n .catch(error => {\n console.error('Error during service worker registration:', error);\n });\n}\n\nfunction checkValidServiceWorker(swUrl, config) {\n // Check if the service worker can be found. If it can't reload the page.\n fetch(swUrl)\n .then(response => {\n // Ensure service worker exists, and that we really are getting a JS file.\n const contentType = response.headers.get('content-type');\n if (\n response.status === 404 ||\n (contentType != null && contentType.indexOf('javascript') === -1)\n ) {\n // No service worker found. Probably a different app. Reload the page.\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister().then(() => {\n window.location.reload();\n });\n });\n } else {\n // Service worker found. Proceed as normal.\n registerValidSW(swUrl, config);\n }\n })\n .catch(() => {\n console.log(\n 'No internet connection found. App is running in offline mode.'\n );\n });\n}\n\nexport function unregister() {\n if ('serviceWorker' in navigator) {\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister();\n });\n }\n}\n","import {authContext, endpoint} from '../adalConfig';\nimport decode from 'jwt-decode';\n\nexport default class AADService {\n\n login() {\n authContext.login();\n }\n\n loggedIn() {\n return this.getUser();\n }\n\n logout() {\n authContext.logOut();\n }\n\n getToken() {\n return authContext.getCachedToken(endpoint);\n }\n\n getUser() {\n return authContext.getCachedUser();\n }\n\n getClaims() {\n return decode(this.getToken());\n }\n\n getRoles() {\n const claims = this.getClaims();\n\n if (claims.hasOwnProperty('roles')) {\n return claims.roles;\n }\n\n return null;\n }\n\n isInRole(role) {\n if (this.getRoles()) {\n for (let i = 0; i < this.getRoles().length; i++) {\n if (this.getRoles()[i] === role)\n return true;\n }\n }\n return false;\n }\n}","import axios from 'axios';\nimport AADService from '../../services/AADService'\n\nexport default class HttpUtil {\n static buildHeaders() {\n let headers = {\n\t\t\t\"Content-Type\": \"application/json\"\n\t\t};\n let aadService = new AADService();\n if (aadService.getToken() !== '') {\n headers['Authorization'] = `Bearer ${aadService.getToken()}`;\n }\n\n return headers;\n }\n static buildLoginHeaders(UserCredentials) {\n let headers = {};\n headers['Content-Type'] = 'application/json';\n return headers;\n }\n\n static handleError = (err, errorCallback) => {\n console.log(`Handle: ${err}`);\n errorCallback(err);\n };\n\n // POST\n static POST(url, parameters, callback, errorCallback) {\n let reqHeaders = this.buildHeaders();\n return axios\n .post(url, parameters, {\n headers: reqHeaders\n })\n .then(callback)\n .catch(err => this.handleError(err, errorCallback));\n }\n\n static Put(url, parameters, callback, errorCallback) {\n let reqHeaders = this.buildHeaders();\n return axios.put(url, parameters, {\n headers: reqHeaders\n }).then(callback).catch(err => this.handleError(err, errorCallback));\n }\n\n static Delete(url, callback, errorCallback) {\n let reqHeaders = this.buildHeaders();\n return axios.delete(url, {\n headers: reqHeaders\n }).then(callback).catch(err => this.handleError(err, errorCallback));\n }\n static Login(url, UserCredentials, callback, errorCallback) {\n let basicAuthHeader = this.buildLoginHeaders(UserCredentials);\n delete UserCredentials.strLogin;\n delete UserCredentials.strSenha;\n return axios\n .post(url, { granttype: 'password' }, { headers: basicAuthHeader })\n .then(callback)\n .catch(err => this.handleError(err, errorCallback));\n }\n\n // GET\n static GET(url, callback, errorCallback) {\n let reqHeaders = this.buildHeaders();\n return axios\n .get(url, {\n headers: reqHeaders,\n })\n .then(callback)\n .catch(err => this.handleError(err, errorCallback));\n }\n\n static Download(url, callback, errorCallback) {\n\t\tlet headers = {};\n\t\tlet aadService = new AADService();\n\t\tif (aadService.getToken() !== '') {\n\t\t\theaders['Authorization'] = `Bearer ${aadService.getToken()}`;\n headers['Content-Type'] = 'application/json';\n headers['Accept'] = 'application/zip';\n\t\t}\n\n\t\treturn axios\n\t\t\t.get(url, {\n\t\t\t\theaders: headers,\n\t\t\t})\n\t\t\t.then(callback)\n\t\t\t.catch(err => this.handleError(err, errorCallback));\n\t}\n}\n","import Config from '../../core/constants';\nimport HttpUtil from '../../core/network/httpUtil';\n\nclass BaseServices{\n constructor(endpoint){\n this.endpoint = endpoint;\n this.apiUrl = Config.URLS.API;\n this.services = {\n getData: (page, pageSize, cb, errorCb) => { \n return HttpUtil.GET(`${this.apiUrl}${this.endpoint}/page/${page}/items/${pageSize}`,\n response => cb(response.data),\n errorCb);\n\n },\n updateData: (id, data, cb, errorCb) => {\n return HttpUtil.Put(`${this.apiUrl}${this.endpoint}/${id}`, data, cb, errorCb);\n },\n removeData: (id, cb, errorCb) => {\n return HttpUtil.Delete(`${this.apiUrl}${this.endpoint}/${id}`, cb, errorCb);\n },\n saveData: (data, cb, errorCb) => {\n \n return HttpUtil.POST(`${this.apiUrl}${this.endpoint}`, data,\n response => cb(response.data), errorCb);\n },\n getDetails: (id, cb, errorCb) => {\n return HttpUtil.GET(`${this.apiUrl}${this.endpoint}/${id}`,\n response => cb(response.data), errorCb);\n },\n search: (data, cb, errorCb) => {\n if (data.hasOwnProperty('active')){\n if (typeof data.active !== \"boolean\"){\n data.active = data.active === 'true';\n }\n }\n if (data.hasOwnProperty('removed')){\n if (typeof data.removed !== \"boolean\"){\n data.removed = data.removed === 'true';\n }\n }else {\n data.removed = false;\n }\n\n return HttpUtil.POST(`${this.apiUrl}${this.endpoint}/search`, data,\n response => cb(response.data), errorCb);\n }\n };\n }\n}\n\nexport default BaseServices;\n","import BaseService from '../Base/BaseServices'\nimport Config from '../../core/constants';\nimport HttpUtil from '../../core/network/httpUtil';\n\nlet Base = new BaseService('LearningPlans');\n\nclass LearningPlansServices {\n constructor(){\n }\n\n static services = Base.services;\n\n static getData(page, pageSize, cb, errorCb) {\n return this.services.getData(page, pageSize, cb, errorCb);\n }\n static updateData(id, data, cb, errorCb){\n return this.services.updateData(id, data, cb, errorCb);\n }\n static removeData(id, cb, errorCb){\n return this.services.removeData(id, cb, errorCb);\n }\n static saveData(data, cb, errorCb) {\n return this.services.saveData(data, cb, errorCb);\n }\n static getDetails(id, cb, errorCb) {\n return this.services.getDetails(id, cb, errorCb);\n }\n static search(data, cb, errorCb){\n if (data.hasOwnProperty('active')){\n if (typeof data.active !== \"boolean\"){\n data.active = data.active === 'true';\n }\n }\n data.removed = false;\n return this.services.search(data, cb, errorCb);\n }\n static deleteAttachment = (attachmentId, cb, errorCb) => { \n let urlApi = process.env.PUBLIC_URL || Config.URLS.API;\n \n return HttpUtil.Delete(`${urlApi}LearningPlansAttachments/ExcludFile/${attachmentId}`,\n response => cb(response.data),\n errorCb);\n };\n\n static downloadMaterial = (learningPlanId) => {\n let urlApi = process.env.PUBLIC_URL || Config.URLS.API; \n return HttpUtil.Download(`${urlApi}LearningPlansAttachments/download/plan/${learningPlanId}/zip`);\n };\n}\n\nexport default LearningPlansServices;","export function range(start, end) {\n return (new Array(end - start + 1)).fill(undefined).map((_, i) => i + start);\n}","import BaseService from '../Base/BaseServices'\nimport Config from '../../core/constants';\nimport HttpUtil from '../../core/network/httpUtil';\n\nlet Base = new BaseService('LearningPlansUserRating');\n\nclass LearningPlansUserRating {\n constructor(){\n }\n\n static services = Base.services;\n\n static getData(page, pageSize, cb, errorCb) {\n return this.services.getData(page, pageSize, cb, errorCb);\n }\n static updateData(id, data, cb, errorCb){\n return this.services.updateData(id, data, cb, errorCb);\n }\n static removeData(id, cb, errorCb){\n return this.services.removeData(id, cb, errorCb);\n }\n static saveData(data, cb, errorCb) {\n return this.services.saveData(data, cb, errorCb);\n }\n static getDetails(id, cb, errorCb) {\n return this.services.getDetails(id, cb, errorCb);\n }\n static search(data, cb, errorCb){\n if (data.hasOwnProperty('active')){\n if (typeof data.active !== \"boolean\"){\n data.active = data.active === 'true';\n }\n }\n data.removed = false;\n return this.services.search(data, cb, errorCb);\n }\n static getLearningPlansUserRating = (learningPlanId, cb, errorCb) => { \n let urlApi = process.env.PUBLIC_URL || Config.URLS.API;\n \n return HttpUtil.GET(`${urlApi}LearningPlansUserRating/GetLearningPlansUserRating/${learningPlanId}`,\n response => cb(response.data),\n errorCb);\n };\n\n static getLearningPlansUser = (learningPlanId, cb, errorCb) => { \n let urlApi = process.env.PUBLIC_URL || Config.URLS.API;\n \n return HttpUtil.GET(`${urlApi}LearningPlansUserRating/GetLearningPlansUserRating/${learningPlanId}`,\n response => cb(response.data),\n errorCb);\n };\n}\n\nexport default LearningPlansUserRating;","import React, { Component } from 'react';\nimport { AlertList } from \"react-bs-notifier\";//\nexport const AlertContext = React.createContext();//\n\nclass AlertProvider extends Component {\n constructor(props) {\n super(props);\n this.state = {\n alerts: [],\n info: this.info,\n success: this.success,\n warning: this.warning,\n error: this.error,\n clearAlerts: this.clearAlerts,\n setHoldState: this.setHoldState,\n setSingleAlertStatus: this.setSingleAlertStatus\n };\n }//\n info = msg => this.setState({ newAlert: { type: 'info', message: msg } });\n success = msg => this.setState({ newAlert: { type: 'success', message: msg } });\n warning = msg => this.setState({ newAlert: { type: 'warning', message: msg } });\n error = msg => this.setState({ newAlert: { type: 'danger', message: msg } });//\n setHoldState = value => this.setState({ hold: value });\n setSingleAlertState = value => this.setState({ singleAlert: value });//\n onDismissedAlert(alert) {\n let alerts = this.state.alerts;\n // Find the index of the alert that was dismissed\n const idx = alerts.indexOf(alert);//\n if (idx >= 0) {\n alerts = [...alerts.slice(0, idx), ...alerts.slice(idx + 1)];//\n this.setState({\n alerts: alerts\n });\n }\n if (!alerts.length) {\n this.handleRemovedAlerts();\n }\n }//\n handleInsertedAlert() {\n this.setState({\n newAlert: null,\n hasAlerts: true\n });\n }//\n handleRemovedAlerts() {\n this.setState({\n hasAlerts: false\n })\n }//\n clearAlerts() {\n this.setState({ alerts: [] });\n this.handleRemovedAlerts();\n }//\n componentDidUpdate(prevProps, prevState, snapshot) {\n const lastAlertId = Math.max.apply(Math, this.state.alerts.map(item => item.id));\n const lastAlert = this.state.alerts.find(alert => alert.id === lastAlertId);\n const updateLock = this.state.updateLock;\n const newAlert = !!this.state.newAlert;\n const lastAlertOk =\n this.state.alerts.length === 0 ||\n (this.state.alerts.length === 1 && this.state.alerts.findIndex(x => x.id === lastAlertId) > -1);//\n if (!lastAlertOk && this.state.singleAlert) {\n this.setState({\n alerts: [lastAlert]\n });\n }//\n if (!updateLock && newAlert) {\n const alertType = this.state.newAlert.type\n .replace('info', 'Informação')\n .replace('success', 'Sucesso')\n .replace('warning', 'Alerta')\n .replace('danger', 'Erro');//\n const newAlert = {\n id: new Date().getTime(),\n type: this.state.newAlert.type,\n headline: alertType,\n message: this.state.newAlert.message\n };//\n if (this.state.singleAlert) {\n this.setState({\n alerts: [newAlert],\n updateLock: true\n });\n } else {\n this.setState({\n alerts: [...this.state.alerts, newAlert],\n blUpdateLock: true,\n });\n }\n this.handleInsertedAlert();\n }\n }//\n render() {\n return (\n \n \n {this.props.children}\n \n );\n }\n}//\nexport default AlertProvider;","import React, { Component, useState } from 'react';\nimport {Button, Modal, ModalHeader, ModalBody, ModalFooter, Input, Row} from 'reactstrap';\n\nimport LearningPlansUserRatingServices from \"../../services/LearningPlansUserRating/LearningPlansUserRatingServices\";\nimport {range} from \"../../core/ranges/ranges\";\nimport AADService from '../../services/AADService'\nimport {AlertContext} from \"../../providers/AlertProvider\";\n\nclass LearningPlanRatingModal extends Component {\n constructor(props) {\n super(props);\n this.AzureADService = new AADService();\n this.UserInfo = this.AzureADService.getUser();\n this.state = {\n planId: props.id,\n learningPlanName: props.learningPlanName,\n stars: props.stars,\n description: '',\n showModal: props.showModal,\n isUpdate: false,\n ratingId: ''\n };\n }\n\n renderStars = () => {\n const selectedStars = this.state.stars;\n const style = {\n color: 'gold'\n };\n return [...range(1, 5)].map((value, index) => {\n return this.changeStar(index)}/>\n });\n };\n\n changeStar = (index) => {\n this.setState({\n stars: index + 1\n });\n };\n\n handleInputChange(target) {\n const value = target.type === 'checkbox' ? target.checked : target.value;\n const field = target.name;\n this.setState({\n [field]: value,\n invalid: {...this.state.invalid, [field]: target.required && !value},\n });\n\n if (target.id === 'description') {\n this.setState({\n description: value\n })\n }\n }\n\n componentDidMount() { \n \n if (this.props.planId !== undefined) {\n LearningPlansUserRatingServices.getLearningPlansUserRating(this.props.planId, (data) => { \n if(data != \"\"){ \n this.setState({\n description : data.description,\n isUpdate: true,\n ratingId: data.id\n })\n }\n\n }, (err) => {\n this.showErrorMessage(err.message || err.response.data.Error);\n })\n }\n };\n\n handleSubmit = (e) => {\n e.preventDefault();\n\n if(this.state.isUpdate){\n\n let dado = { \n \"id\": this.state.ratingId,\n \"name\": this.state.name, \n \"createdBy\": this.UserInfo.profile.name, \n \"createdByEmail\": this.UserInfo.profile.unique_name, \n \"modifiedBy\": this.UserInfo.profile.name, \n \"modifiedEmail\": this.UserInfo.profile.unique_name,\n \"active\": true ,\n \"ratingstars\" : this.state.stars,\n \"learningPlansid\": this.props.planId,\n \"description\": this.state.description,\n \"emailadress\": this.UserInfo.profile.unique_name,\n \"name\": this.state.learningPlanName\n }\n \n LearningPlansUserRatingServices.updateData(this.state.ratingId, dado, (data) => {\n \n this.showSuccessMessage(\"Classificação atualizada com sucesso!\"); \n this.toggleModal()\n }, (err) => {\n this.showErrorMessage(err.message || err.response.data.Error);\n })\n\n }else{ \n let novodado = { \n \"name\": this.state.name, \n \"createdBy\": this.UserInfo.profile.name, \n \"createdByEmail\": this.UserInfo.profile.unique_name, \n \"modifiedBy\": this.UserInfo.profile.name, \n \"modifiedEmail\": this.UserInfo.profile.unique_name,\n \"active\": true ,\n \"ratingstars\" : this.state.stars,\n \"learningPlansid\": this.props.planId,\n \"description\": this.state.description,\n \"emailadress\": this.UserInfo.profile.unique_name,\n \"name\": this.state.learningPlanName\n }\n\n LearningPlansUserRatingServices.saveData(novodado, (data) => { \n \n this.showSuccessMessage(\"Classificação salva com sucesso!\"); \n this.toggleModal()\n }, (err) => {\n this.showErrorMessage(err.message || err.response.data.Error);\n });\n }\n\n };\n\n toggleModal = () => {\n this.setState({\n showModal: !this.state.showModal\n })\n };\n\n onCloseModal = () => { \n this.setState({\n stars: 0,\n comment: '',\n showModal: false\n }); \n };\n\n render() {\n return (\n \n \n {(value) => {\n this.showInfoMessage = value.info;\n this.showSuccessMessage = value.success;\n this.showWarningMessage = value.warning;\n this.showErrorMessage = value.error;\n }}\n \n Classificação do plano de aula\n \n {this.renderStars()}\n this.handleInputChange(target)}\n maxlength={1000}/>\n \n \n {' '}\n \n \n \n )\n }\n}\n\nexport default LearningPlanRatingModal;","import React, { Component } from 'react';\nimport {Redirect} from \"react-router-dom\";\nimport LearningPlanServices from \"../../services/LearningPlans/LearningPlansServices\"\nimport {range} from \"../../core/ranges/ranges\";\nimport LearningPlanRatingModal from \"./LearningPlanRatingModal\";\nimport LearningPlansUserRatingServices from \"../../services/LearningPlansUserRating/LearningPlansUserRatingServices\";\n\nclass LearningPlansCard extends Component {\n constructor(props) {\n super(props);\n this.state = {\n planId: props.planId,\n learningPlanName: props.learningPlanName,\n downloadUrl: '',\n stars: 0\n }\n }\n\n setCloseModal = () =>{ \n this.setState({\n showModal: false\n })\n }\n\n setRedirect = () => { \n this.setState({\n redirect: true\n })\n };\n\n renderRedirect = () => {\n if (this.state.redirect) {\n return \n }\n };\n\n handleDownload = (e) => {\n const id = this.props.planId;\n LearningPlanServices.downloadMaterial(id).then((response) => {\n\n var element = document.createElement('a');\n element.setAttribute('href', 'data:text/plain;base64,' + response.data);\n element.setAttribute('download', id+\".zip\");\n element.style.display = 'none';\n document.body.appendChild(element);\n element.click();\n document.body.removeChild(element);\n\n\n }).catch((err) => {\n this.showErrorMessage(err);\n });\n };\n\n renderModal = () => { \n if (this.state.showModal) {\n return {this.setCloseModal()}}/>\n }\n };\n\n componentDidMount() {\n if (this.props.planId !== undefined) {\n LearningPlansUserRatingServices.getLearningPlansUserRating(this.props.planId, (data) => { \n if(data != \"\"){ \n this.setState({\n stars: data.ratingStars,\n description : data.description,\n isUpdate: true,\n ratingId: data.id\n })\n }\n\n }, (err) => {\n this.showErrorMessage(err.message || err.response.data.Error);\n })\n }\n }\n\n changeStar = (index) => {\n debugger\n this.setState({\n stars: index + 1,\n showModal: true\n });\n };\n\n renderStars = (stars) => {\n const selectedStars = this.state.stars;\n const style = {\n color: 'gold'\n };\n return [...range(1, 5)].map((value, index) => {\n return this.changeStar(index)}/>\n });\n };\n\n render() {\n return (\n \n {this.renderRedirect()}\n {this.renderModal()}\n
\n \n \n \n
\n

{this.props.learningPlanName}

\n
\n {this.props.learninStepName}\n
\n
\n {this.renderStars(this.props.ratingstars)}\n
\n
\n

O que você achou?

\n {this.renderStars()}\n
\n \n
\n this.handleDownload()}>\n Download\n \n
\n
\n
\n \n )\n }\n}\n\nexport default LearningPlansCard;","import React, {Component} from 'react';\nimport { Label, Input } from 'reactstrap';\nimport {Col, Container, Row} from \"reactstrap\";\nimport ServicesLearningPlans from \"../../services/LearningPlans/LearningPlansServices\";\nimport TextField from '@material-ui/core/TextField';\nimport Autocomplete from '@material-ui/lab/Autocomplete';\n\nclass SearchBar extends Component {\n constructor(props) {\n super(props);\n this.state = {\n clean: \"none\" ,\n learningPlans: []\n }\n }\n\n componentDidMount() {\n this.setState({loading: true});\n ServicesLearningPlans.getData(0, 1000, (data) => {\n this.setState({\n learningPlans: data\n });\n }, (err) => {\n this.showErrorMessage(err.message || err.response.data.Error);\n });\n }\n\n SearchPlan(target){\n var learningPlans = this.state.learningPlans\n var valor = target.value\n var procura = learningPlans.filter(x => x.name == valor) \n this.props.setplansCallback(procura);\n this.setState({ clean: \"block\" })\n }\n\n cleanSearch(target){\n debugger\n var learningPlans = this.state.learningPlans\n this.props.setplansCallback(learningPlans);\n this.setState({ clean: \"none\" })\n }\n\n _handleKeyDown = (e) => {\n if (e.key === 'Enter') {\n this.SearchPlan(e.target);\n }\n }\n\n \n\n render() {\n var learningPlans = this.state.learningPlans\n var god = learningPlans.map(x => x.name)\n const clean = { \n display: this.state.clean, \n }\n return (\n
\n \n \n \n {/*
\n
\n \n \n \n
\n this.SearchPlan(target)}/>\n
*/}\n
\n option}\n style={{ width: 300 }}\n renderInput={(params) => this.SearchPlan(target)}\n onKeyDown={this._handleKeyDown}/>}\n />\n
\n this.cleanSearch(target)} className=\"fa fa-times\" aria-hidden=\"true\"> \n
\n
\n \n \n \n \n
\n
\n
\n\n )\n }\n}\n\nexport default SearchBar;","import BaseService from '../../services/Base/BaseServices'\n\nlet Base = new BaseService('LearningSteps');\nconst LearningStepsServices = Base.services;\n\nexport default LearningStepsServices;","import BaseService from '../Base/BaseServices'\n\nlet Base = new BaseService('DigitalTools');\nconst DigitalToolsServices = Base.services;\n\nexport default DigitalToolsServices;","import BaseService from '../Base/BaseServices'\nimport Config from '../../core/constants';\nimport HttpUtil from '../../core/network/httpUtil';\n\nlet Base = new BaseService('ExperienceFields');\n\nclass ExperienceFieldsServices {\n constructor(){\n }\n\n static services = Base.services;\n\n static getData(page, pageSize, cb, errorCb) {\n return this.services.getData(page, pageSize, cb, errorCb);\n }\n static updateData(id, data, cb, errorCb){\n return this.services.updateData(id, data, cb, errorCb);\n }\n static removeData(id, cb, errorCb){\n return this.services.removeData(id, cb, errorCb);\n }\n static saveData(data, cb, errorCb) {\n return this.services.saveData(data, cb, errorCb);\n }\n static getDetails(id, cb, errorCb) {\n return this.services.getDetails(id, cb, errorCb);\n }\n static search(data, cb, errorCb){\n if (data.hasOwnProperty('active')){\n if (typeof data.active !== \"boolean\"){\n data.active = data.active === 'true';\n }\n }\n data.removed = false;\n return this.services.search(data, cb, errorCb);\n }\n static getExperienceFieldsByLearningStepId = (learningStepId, cb, errorCb) => {\n let urlApi = process.env.PUBLIC_URL || Config.URLS.API;\n \n return HttpUtil.GET(`${urlApi}ExperienceFields/GetLearningSteps/${learningStepId}`,\n response => cb(response.data),\n errorCb);\n };\n}\n\nexport default ExperienceFieldsServices;","import BaseService from '../Base/BaseServices'\nimport Config from '../../core/constants';\nimport HttpUtil from '../../core/network/httpUtil';\n\nlet Base = new BaseService('Disciplines');\n\nclass DisciplinesServices {\n constructor(){\n }\n\n static services = Base.services;\n\n static getData(page, pageSize, cb, errorCb) {\n return this.services.getData(page, pageSize, cb, errorCb);\n }\n static updateData(id, data, cb, errorCb){\n return this.services.updateData(id, data, cb, errorCb);\n }\n static removeData(id, cb, errorCb){\n return this.services.removeData(id, cb, errorCb);\n }\n static saveData(data, cb, errorCb) {\n return this.services.saveData(data, cb, errorCb);\n }\n static getDetails(id, cb, errorCb) {\n return this.services.getDetails(id, cb, errorCb);\n }\n static search(data, cb, errorCb){\n if (data.hasOwnProperty('active')){\n if (typeof data.active !== \"boolean\"){\n data.active = data.active === 'true';\n }\n }\n data.removed = false;\n return this.services.search(data, cb, errorCb);\n }\n static GetDisciplinesByLearningStepId = (learningStepId, cb, errorCb) => {\n let urlApi = process.env.PUBLIC_URL || Config.URLS.API; \n return HttpUtil.GET(`${urlApi}Disciplines/GetDisciplinesByLearningStepId/${learningStepId}`,\n response => cb(response.data),\n errorCb);\n };\n}\n\nexport default DisciplinesServices;","import React, {Component} from 'react';\n\nimport { Label, Input } from 'reactstrap';\nimport Home from './Home'\n\nimport LearningPlanServices from \"../../services/LearningPlans/LearningPlansServices\"\nimport LearningStepsServices from \"../../services/LearningSteps/LearningStepsServices\"\nimport DigitalToolsServices from \"../../services/DigitalTools/DigitalToolsServices\"\nimport ExperienceFieldsServices from \"../../services/ExperienceFields/ExperienceFieldsServices\"\nimport Disciplines from \"../../services/Disciplines/DisciplinesServices\"\n\n\nimport {AlertContext} from \"../../providers/AlertProvider\";\n\nclass FilterBar extends Component {\n constructor(props) {\n super(props);\n\n this.state = {\n preencheu: 'não',\n Grades: [],\n learningPlans: [],\n learningSteps: [],\n digitalTools: [],\n experienceFields: [],\n disciplines: [],\n knowledgeArea: [],\n loading: false,\n\n learningStepsFilter: [],\n digitalToolsFilter: [],\n experienceFieldsFilter: [],\n disciplinesFilter:[],\n knowledgeAreaFilter:[],\n\n model: [],\n totalItens: 8,\n page: 0,\n }\n }\n\n // ===============================\n // Get Data\n // ===============================\n getLearningSteps = () => { \n LearningStepsServices.getData(0, 100, (data) => { \n this.setState({\n learningSteps: data\n }); \n }, this.handleErrorMessage)\n };\n\n getDigitalTools = () => {\n DigitalToolsServices.getData(0, 1000, (data) => {\n this.setState({\n digitalTools: data\n });\n }, this.handleErrorMessage);\n };\n\n getExperienceFields = () => {\n ExperienceFieldsServices.getData(0, 1000, (data) => {\n this.setState({\n experienceFields: data\n });\n }, this.handleErrorMessage);\n };\n\n getDisciplines = () => {\n Disciplines.getData(0, 1000, (data) => {\n this.setState({\n disciplines: data\n });\n }, this.handleErrorMessage);\n };\n\n getknowledgeArea = () => {\n \n var arrayknowledgeArea = [\n {\"id\": 1, \"name\" : \"Linguagens e suas tecnologias\"},\n {\"id\": 2, \"name\" : \"Matemática e suas tecnologias\"},\n {\"id\": 3, \"name\" : \"Ciências da natureza e suas tecnologias\"},\n {\"id\": 4, \"name\" : \"Ciências humanas e sociais aplicadas\"},\n {\"id\": 5, \"name\" : \"Formação técnica e profissional\"},\n {\"id\": 6, \"name\" : \"Linguagens\"},\n {\"id\": 7, \"name\" : \"Matemática\"},\n {\"id\": 8, \"name\" : \"Ciências da natureza\"},\n {\"id\": 9, \"name\" : \"Ciências humanas\"},\n {\"id\": 10, \"name\" : \"Ensino religioso\"},\n ];\n\n arrayknowledgeArea = arrayknowledgeArea.sort((a, b) => a.name.localeCompare(b.name))\n\n this.setState({\n knowledgeArea: arrayknowledgeArea\n });\n };\n\n getLearningPlans = () => { \n \n LearningPlanServices.getData(this.state.page, this.state.totalItens, (data) => {\n this.setState({\n learningPlans: data\n }); \n this.preencherModel()\n }, (err) => {\n this.showErrorMessage(err.message || err.response.data.Error);\n });\n }\n\n\n preencherModel(){\n \n let data = this.state.learningPlans\n if(this.state.preencheu == 'não'){\n var filterId = data.map(x => x.id)\n filterId.forEach((id) => \n LearningPlanServices.getDetails(id, (data) => {\n var juntaTudo = this.state.model.concat(data)\n this.setState({\n model: juntaTudo,\n preencheu: 'sim'\n });\n }))\n }\n }\n\n\n filterLearningPlans(parans, target) {\n \n let idFind = parans.id\n if(target.checked != false){\n if (target.id == 'learningSteps'){\n let learningSteps = this.state.learningStepsFilter; \n learningSteps.push(idFind);\n this.setState({\n learningStepsFilter : learningSteps\n }); \n }\n else if (target.id == 'digitaltools'){\n let digitaltools = this.state.digitalToolsFilter; \n digitaltools.push(idFind);\n this.setState({\n digitalToolsFilter : digitaltools\n }); \n }\n else if (target.id == 'experienceFields'){\n let experienceFields = this.state.experienceFieldsFilter; \n experienceFields.push(idFind);\n this.setState({\n experienceFieldsFilter : experienceFields\n }); \n }\n else if (target.id == 'knowledgeArea'){\n let knowledgeArea = this.state.knowledgeAreaFilter; \n knowledgeArea.push(idFind);\n this.setState({\n knowledgeAreaFilter : knowledgeArea\n }); \n }\n else if (target.id == 'disciplines'){\n let disciplines = this.state.disciplinesFilter; \n disciplines.push(idFind);\n this.setState({\n disciplinesFilter : disciplines\n }); \n } \n \n }else{\n\n if (target.id == 'learningSteps'){\n let learningSteps = this.state.learningStepsFilter;\n var indice = learningSteps.indexOf(idFind); \n learningSteps.splice(indice, 1);\n this.setState({\n learningStepsFilter : learningSteps\n });\n }\n else if (target.id == 'digitaltools'){\n let digitaltools = this.state.digitalToolsFilter;\n var indice = digitaltools.indexOf(idFind); \n digitaltools.splice(indice, 1);\n this.setState({\n digitalToolsFilter : digitaltools\n });\n }\n else if (target.id == 'experienceFields'){\n let experienceFields = this.state.experienceFieldsFilter;\n var indice = experienceFields.indexOf(idFind); \n experienceFields.splice(indice, 1);\n this.setState({\n experienceFieldsFilter : experienceFields\n });\n }\n else if (target.id == 'knowledgeArea'){\n let knowledgeArea = this.state.knowledgeAreaFilter;\n var indice = knowledgeArea.indexOf(idFind); \n knowledgeArea.splice(indice, 1);\n this.setState({\n knowledgeAreaFilter : knowledgeArea\n });\n }\n else if (target.id == 'disciplines'){\n let disciplines = this.state.disciplinesFilter;\n var indice = disciplines.indexOf(idFind); \n disciplines.splice(indice, 1);\n this.setState({\n disciplinesFilter : disciplines\n }); \n }\n }\n\n let dataFilter = {};\n let filter = false;\n\n if(this.state.learningStepsFilter.length > 0){\n dataFilter.learningStepsFilter = this.state.learningStepsFilter\n filter = true;\n }\n if(this.state.digitalToolsFilter.length > 0){\n dataFilter.digitaltoolsFilter = this.state.digitalToolsFilter\n filter = true;\n }\n if(this.state.experienceFieldsFilter.length > 0){\n dataFilter.experienceFieldsFilter = this.state.experienceFieldsFilter\n filter = true;\n }\n if(this.state.knowledgeAreaFilter.length > 0){\n dataFilter.knowledgeAreaFilter = this.state.knowledgeAreaFilter\n filter = true;\n } \n if(this.state.disciplinesFilter.length > 0){\n dataFilter.disciplinesFilter = this.state.disciplinesFilter\n filter = true;\n }\n \n this.props.setLoadingCallback(true);\n\n if(filter){\n dataFilter.page = 0;\n dataFilter.pageSize = 1000;\n\n LearningPlanServices.search(dataFilter, (data) => {\n this.props.setplansCallback(data); \n this.props.setLoadingCallback(false);\n }, (err) => {\n this.showErrorMessage(err.message || err.response.data.Error);\n });\n }else{\n LearningPlanServices.getData(this.state.page, this.state.totalItens, (data) => {\n this.props.setplansCallback(data);\n this.props.setLoadingCallback(false);\n this.preencherModel()\n }, (err) => {\n this.showErrorMessage(err.message || err.response.data.Error);\n });\n }\n \n }\n\n handleErrorMessage = (err) => this.showErrorMessage(err.message || 'Ocorreu um erro durante a operação');\n\n componentDidMount() {\n\n this.getLearningSteps();\n this.getDigitalTools();\n this.getExperienceFields();\n this.getLearningPlans();\n this.getDisciplines();\n this.getknowledgeArea();\n }\n\n render() {\n const learningSteps = this.state.learningSteps;\n const digitalTools = this.state.digitalTools;\n const experienceFields = this.state.experienceFields;\n const disciplines= this.state.disciplines;\n const knowledgeArea = this.state.knowledgeArea;\n \n return (\n
\n \n {(value) => {\n this.showInfoMessage = value.info;\n this.showSuccessMessage = value.success;\n this.showWarningMessage = value.warning;\n this.showErrorMessage = value.error;\n }}\n \n
\n
    \n
  • \n \n Filtrar por categoria\n \n \n
    \n
      \n
    • \n \n
    • \n
    • \n \n
    • \n
    • \n \n
    • \n
    • \n \n
    • \n
    • \n \n
    • \n
    \n
    \n
    \n
    \n
      \n {\n learningSteps.map((value, index) => {\n return (\n
    • \n \n
    • \n )\n })\n }\n
    \n
    \n
    \n
    \n
    \n
      \n {\n digitalTools.map((value, index) => {\n return (\n\n
    • \n \n
    • \n )\n })\n }\n
    \n
    \n
    \n
    \n
    \n
      \n {\n experienceFields.map((value, index) => {\n return (\n\n
    • \n \n
    • \n )\n })\n }\n
    \n
    \n
    \n
    \n
    \n
      \n {\n knowledgeArea.map((value, index) => {\n return (\n\n
    • \n \n
    • \n )\n })\n }\n
    \n
    \n
    \n
    \n
    \n
      \n {\n disciplines.map((value, index) => {\n return (\n\n
    • \n \n
    • \n )\n })\n }\n
    \n
    \n
    \n
    \n
    \n
  • \n
\n
\n )\n }\n}\n\nexport default FilterBar;","import React, {Component} from 'react';\nimport {Container} from \"reactstrap\";\nimport LearningPlansCard from \"../LearningPlans/LearningPlansCard\";\nimport SearchBar from \"./SearchBar\";\nimport FilterBar from \"./FilterBar\";\n// import LearningPlanRatingModal from \"../Course/LearningPlanRatingModal\";\nimport { AlertContext } from \"../../providers/AlertProvider\";\nimport ServicesLearningPlans from \"../../services/LearningPlans/LearningPlansServices\";\nimport InfiniteScroll from 'react-infinite-scroller';\n\n\nclass Home extends Component {\n constructor(props) {\n super(props);\n this.state = {\n learningPlans: [],\n totalItens: 8,\n page: 0,\n showLoadingBottom: false,\n loading: true\n }\n\n this.setplans = this.setplans.bind(this);\n this.setLoading = this.setLoading.bind(this);\n }\n\n componentDidMount() {\n window.addEventListener('scroll', this.loadMore);\n this.getLearningPlans(this.state.page, this.state.totalItens);\n }\n\n componentWillUnmount(){\n window.removeEventListener('scroll', this.loadMore);\n }\n\n loadMore = () => {\n if (window.innerHeight + document.documentElement.scrollTop === document.scrollingElement.scrollHeight && this.state.showLoadingBottom == false) { \n this.setState({\n showLoadingBottom: true,\n page: (this.state.page + 1)\n }); \n\n this.getLearningPlans(this.state.page, this.state.totalItens);\n\n }else{\n this.setState({\n showLoadingBottom: false\n });\n }\n\n this.render();\n }\n\n setplans(learningPlans) { \n this.setState({\n learningPlans: learningPlans\n })\n }\n\n setLoading(statusLoading) { \n this.setState({\n loading: statusLoading\n })\n }\n \n getLearningPlans(page, totalItens){ \n ServicesLearningPlans.getData(page, totalItens, (data) => {\n if(data.length > 0){\n this.setState(prevState => ({ \n learningPlans: [...prevState.learningPlans, ...data].sort((a,b) => (a.name.normalize(\"NFD\").replace(/[\\u0300-\\u036f]/g, \"\") > b.name.normalize(\"NFD\").replace(/[\\u0300-\\u036f]/g, \"\")) ? 1 : ((b.name.normalize(\"NFD\").replace(/[\\u0300-\\u036f]/g, \"\") > a.name.normalize(\"NFD\").replace(/[\\u0300-\\u036f]/g, \"\")) ? -1 : 0)),\n loading: false,\n showLoadingBottom: false\n })); \n }else{\n this.setState({\n showLoadingBottom: false\n });\n }\n }, (err) => {\n this.showErrorMessage(err.message || err.response.data.Error);\n });\n }\n\n loadingBottom = () => {\n if(this.state.showLoadingBottom){\n return(\n
\n
\n
\n
\n
\n
\n
\n

Carregando mais itens...

\n
\n )\n }\n }\n\n renderLeaningPlans(learningPlans){\n \n if (learningPlans.length == 0) {\n return(\n
\n
\n

Nenhum dado encontado.

\n
\n
\n )\n }else{\n return(\n \n
\n {learningPlans.filter(x => x.learningStep != null && x.learningStep != undefined).map((value, i) =>\n )} \n {this.loadingBottom()} \n
\n \n
\n )\n }\n }\n\n renderLoading(){\n if(this.state.loading){\n return (\n
\n
\n
\n
\n
\n
\n
\n
\n

Carregando...

\n
\n
\n )\n }\n }\n\n render() {\n const learningPlans = this.state.learningPlans;\n \n \n\n return (\n
\n \n {(value) => {\n this.showInfoMessage = value.info;\n this.showSuccessMessage = value.success;\n this.showWarningMessage = value.warning;\n this.showErrorMessage = value.error;\n }}\n \n \n \n {this.renderLoading()}\n {this.state.loading == false && (this.renderLeaningPlans(learningPlans))} \n
\n ) \n }\n}\n\nexport default Home;\n\n","import React, { Component } from 'react';\n\nclass Footer extends Component {\n render() {\n return (\n
\n )\n }\n}\n\nexport default Footer;","import React, { Component } from 'react';\nimport {Container} from \"reactstrap\";\nimport {Link} from \"react-router-dom\";\n\n\nclass Header extends Component {\n render(){\n return(\n
\n \n \n \"Plano\n \n \n
\n )\n }\n}\n\nexport default Header;","import React, {Component} from 'react';\nimport {Container, Col} from 'reactstrap';\nimport Footer from './Footer';\n//import Sidebar from './Sidebar';\nimport Header from './Header';\nimport AlertProvider from \"../../providers/AlertProvider\";\nimport '../../assets/css/styles.css';\nclass LayoutDefault extends Component {\n constructor(props) {\n super(props);\n this.state = {\n collapsed: false,\n };\n }\n\n onCollapse = () => {\n let active = !this.state.collapsed;\n this.setState({collapsed: active});\n };\n\n render() {\n return (\n
\n
\n
\n \n {this.props.children}\n \n
\n
\n
\n )\n }\n}\n\nexport default LayoutDefault;\n","import BaseService from '../Base/BaseServices'\nimport Config from '../../core/constants';\nimport HttpUtil from '../../core/network/httpUtil';\n\nlet Base = new BaseService('SkillCompetences');\n\nclass SkillCompetencesServices {\n constructor(){\n }\n\n static services = Base.services;\n\n static getData(page, pageSize, cb, errorCb) {\n return this.services.getData(page, pageSize, cb, errorCb);\n }\n static updateData(id, data, cb, errorCb){\n return this.services.updateData(id, data, cb, errorCb);\n }\n static removeData(id, cb, errorCb){\n return this.services.removeData(id, cb, errorCb);\n }\n static saveData(data, cb, errorCb) {\n return this.services.saveData(data, cb, errorCb);\n }\n static getDetails(id, cb, errorCb) {\n return this.services.getDetails(id, cb, errorCb);\n }\n static search(data, cb, errorCb){\n if (data.hasOwnProperty('active')){\n if (typeof data.active !== \"boolean\"){\n data.active = data.active === 'true';\n }\n }\n data.removed = false;\n return this.services.search(data, cb, errorCb);\n }\n\n static getSkillCompetencesDisciplinesByLearningPlanId = (learningPlanId, cb, errorCb) => {\n let urlApi = process.env.PUBLIC_URL || Config.URLS.API;\n \n return HttpUtil.GET(`${urlApi}SkillCompetences/GetSkillCompetencesDisciplinesByLearningPlanId/${learningPlanId}`,\n response => cb(response.data),\n errorCb);\n };\n\n static getSkillCompetencesExperienceFieldsByLearningPlanId = (learningPlanId, cb, errorCb) => {\n let urlApi = process.env.PUBLIC_URL || Config.URLS.API;\n \n return HttpUtil.GET(`${urlApi}SkillCompetences/GetSkillCompetencesExperienceFieldsByLearningPlanId/${learningPlanId}`,\n response => cb(response.data),\n errorCb);\n };\n\n static getSkillCompetencesDisciplinesByLearningStepId = (learningStepId, cb, errorCb) => {\n let urlApi = process.env.PUBLIC_URL || Config.URLS.API;\n \n return HttpUtil.GET(`${urlApi}SkillCompetences/GetSkillCompetencesDisciplinesByLearningStepId/${learningStepId}`,\n response => cb(response.data),\n errorCb);\n };\n\n static getSkillCompetencesExperienceFieldsByLearningStepId = (learningStepId, cb, errorCb) => {\n let urlApi = process.env.PUBLIC_URL || Config.URLS.API;\n \n return HttpUtil.GET(`${urlApi}SkillCompetences/GetSkillCompetencesExperienceFieldsByLearningStepId/${learningStepId}`,\n response => cb(response.data),\n errorCb);\n };\n}\n\nexport default SkillCompetencesServices;","import React, {Component} from 'react';\nimport {Container, Row, Col} from \"reactstrap\";\nimport {Link, withRouter} from \"react-router-dom\";\nimport LearningPlanServices from \"../../services/LearningPlans/LearningPlansServices\"\nimport SkillCompetencesServices from '../../services/SkillCompetences/SkillCompetencesServices';\nimport {AlertContext} from \"../../providers/AlertProvider\";\n\n\nclass LearningPlansDetails extends Component {\n constructor(props) {\n super(props);\n\n this.state = {\n model: null,\n id: null,\n bnccCapabilities: [],\n curriculumComponents: [],\n educationCapabilities: [],\n downloadUrl: '',\n description: '',\n subLevel: 1,\n listSkillCompetencesDisciplines: [],\n listSkillCompetencesExperienceFields: []\n };\n }\n\n componentDidMount() {\n const {match: {params}} = this.props;\n if (params.id !== undefined) {\n LearningPlanServices.getDetails(params.id, (data) => { \n if (data) {\n this.setState({\n id: params.id,\n model: data,\n description: data.name,\n subLevel: data.learningStep.subLevel\n }); \n }\n\n if(this.state.subLevel == 1){\n this.getSkillCompetencesExperienceFieldsByLearningPlanId(data.id);\n }else{\n this.getSkillCompetencesDisciplinesByLearningPlanId(data.id);\n }\n\n }, (err) => {\n debugger\n this.showErrorMessage(err.message || err.response.data.Error);\n });\n\n } else {\n this.showErrorMessage(\"Invalid\");\n }\n }\n\n getSkillCompetencesDisciplinesByLearningPlanId = (id, state) => {\n \n this.setState({ loading: true });\n SkillCompetencesServices.getSkillCompetencesDisciplinesByLearningPlanId(id, (data) => {\n this.setState({\n listSkillCompetencesDisciplines: data,\n pages: data.pages,\n loading: false\n });\n\n }, (err) => {\n this.showErrorMessage(err.message || err.response.data.Error);\n });\n };\n\n getSkillCompetencesExperienceFieldsByLearningPlanId = (id, state) => {\n \n this.setState({ loading: true });\n SkillCompetencesServices.getSkillCompetencesExperienceFieldsByLearningPlanId(id, (data) => {\n this.setState({\n listSkillCompetencesExperienceFields: data,\n pages: data.pages,\n loading: false\n });\n \n }, (err) => {\n this.showErrorMessage(err.message || err.response.data.Error);\n });\n };\n\n handleDownload = (e) => {\n const id = this.state.id;\n LearningPlanServices.downloadMaterial(id).then((response) => {\n\n var element = document.createElement('a');\n element.setAttribute('href', 'data:text/plain;base64,' + response.data);\n element.setAttribute('download', id+\".zip\");\n element.style.display = 'none';\n document.body.appendChild(element);\n element.click();\n document.body.removeChild(element);\n\n\n }).catch((err) => {\n this.showErrorMessage(err);\n });\n };\n\n handlePrint = (e) => {\n window.print();\n };\n\n htmlAttachments = (attachments) => {\n let rawData = attachments;\n \n return rawData.map((item, index) => {\n let style = {};\n let imgUrl = \"/img/i-anexo.png\";\n\n if (item.mimeType.indexOf(\"image/\") !== -1) {\n style = {\n 'background': `url(${item.url})`\n };\n }\n \n if (item.mimeType.indexOf(\"word\") !== -1 || item.mimeType.indexOf(\"wordprocessingml\") !== -1){\n imgUrl = \"/img/i-word.png\";\n }\n \n if (item.mimeType.indexOf(\"excel\") !== -1 || item.mimeType.indexOf(\"spreadsheetml\") !== -1){\n imgUrl = \"/img/i-excel.png\";\n }\n \n if (item.mimeType.indexOf(\"powerpoint\") !== -1 || item.mimeType.indexOf(\"presentationml\") !== -1){\n imgUrl = \"/img/i-ppt.png\";\n } \n\n return (\n
\n \n {imgUrl !== \"\" ? {item.name}/ :
\n );\n })\n };\n\n htmlSkillCompetences(){ \n if(this.state.subLevel == 1){\n return(\n

\n {this.state.listSkillCompetencesExperienceFields.length > 0 && this.state.listSkillCompetencesExperienceFields.map((item) => { \n return(\n

\n
 
\n
{item.name}
\n {item.listSkillCompetences.map((ItemSkillCompetence) => {\n return(\n
\n
\n ({ItemSkillCompetence.skillCompetencesCode})\n
\n
\n {ItemSkillCompetence.name}\n
\n
\n )\n })\n }\n
\n )\n })\n }\n

\n )\n }else{\n return(\n

\n { this.state.listSkillCompetencesDisciplines.length > 0 && this.state.listSkillCompetencesDisciplines.map((item) => { \n return(\n

\n
{item.knowledgeAreaName}
\n { item.disciplines.map((itemDisciplina) => { \n return(\n
\n {itemDisciplina.name} \n { itemDisciplina.skillCompetences.map((ItemSkillCompetence) => { \n return( \n
\n
\n ({ItemSkillCompetence.skillCompetencesCode})\n
\n
\n {ItemSkillCompetence.name}\n
\n
 
\n
\n ) \n })\n }\n
\n ) \n })\n }\n
\n )\n })\n }\n

\n )\n }\n }\n\n render() {\n \n const plan = this.state.model;\n\n if (!plan) {\n return
\n
\n
\n
\n
\n
\n
\n
\n

Carregando...

\n
\n
\n }\n\n return (\n
\n \n {(value) => {\n this.showInfoMessage = value.info;\n this.showSuccessMessage = value.success;\n this.showWarningMessage = value.warning;\n this.showErrorMessage = value.error;\n }}\n \n
\n
\n
\n
\n Home \n  \n  \n {plan.name}\n
\n
\n {'< Voltar'}\n
\n
\n
\n
\n\n \n \n \n \n

{plan.name}

\n

Objetivo geral

\n

\n

\n

\n

Objetivos específicos

\n

\n

\n

\n

Estratégias de aprendizagem

\n

\n

\n

\n

Recursos didáticos

\n

\n

\n

\n

Avaliação

\n

\n

\n

\n

Referências

\n

\n

\n

\n \n \n \n \n {this.state.model.learningPlansAttachments.length > 0 && (

Anexos

)}\n
    \n
  • \n {this.htmlAttachments(this.state.model.learningPlansAttachments)}\n
  • \n
\n \n \n \n this.handleDownload()}/>\n this.handlePrint()}/>\n

Etapa de ensino

\n

\n

\n

\n

Habilidades e competências relacionados

\n {this.htmlSkillCompetences()}\n

Palavras-chave

\n

\n

\n

\n

Duração

\n

\n

\n

\n \n {this.state.model.learningPlansDigitalTools.length > 0 && (

Ferramentas digitais

)}\n

{this.state.model.learningPlansDigitalTools.length > 0 && this.state.model.learningPlansDigitalTools\n .map(t => t.name)\n .reduce((prev, curr) => [prev, ', ', curr])}

\n {this.state.model.learningPlansRelateds.length > 0}\n \n {this.state.model.learningPlansRelateds.length > 0 && (

Roteiros relacionados

)}\n {this.state.model.learningPlansRelateds.length > 0 && this.state.model.learningPlansRelateds.map((item) => { \n return(\n \n \n )\n })\n }\n \n
\n
\n
\n )\n }\n}\n\nexport default withRouter(LearningPlansDetails);","import React, { Component } from 'react';\nimport { Route, BrowserRouter, Switch, Redirect } from 'react-router-dom';\n\nimport Home from './components/Home/Home';\nimport LayoutDefault from './components/layouts/LayoutDefault';\nimport LearningPlansDetails from \"./components/LearningPlans/LearningPlansDetails\";\n\nclass Routes extends Component {\n render() {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n } />\n \n \n );\n }\n}\n\nexport default Routes;","import React from 'react';\nimport ReactDOM from 'react-dom';\n\n\nimport * as serviceWorker from './serviceWorker';\nimport Routes from './routes';\n\nReactDOM.render(, document.getElementById('root'));\n\n// If you want your app to work offline and load faster, you can change\n// unregister() to register() below. Note this comes with some pitfalls.\n// Learn more about service workers: https://bit.ly/CRA-PWA\nserviceWorker.unregister();","// GLOBAL CONSTANTS\n// -----------------------------------\n\nexport const STORAGE_KEYS = {\n JWT_KEY: 'learningPlan.jwt',\n JWT_REF_KEY: 'learningPlan.ref_jwt',\n JWT_EXP_KEY: 'learningPlan.exp_jwt',\n USER_NAME: 'learningPlan.full_user_name',\n USER_EMAIL: 'learningPlan.full_user_email'\n};\n\nexport const URLS = {\n //LOCALHOST\n //API: \"https://localhost:44397/api/\",\n //REDIRECT: \"http://localhost:44325/\"\n\n //DEV\n // API: \"https://appservice-roteiros-dev.azurewebsites.net/api/\",\n // REDIRECT: \"https://webapp-roteirosprofessor-dev.azurewebsites.net/\"\n\n //DEMO\n //API: \"https://appservice-roteiros-demo.azurewebsites.net/api/\",\n //REDIRECT: \"https://webapp-roteirosprofessor-demo.azurewebsites.net/\"\n\n //PROD\n API: \"https://appservice-roteiros-prod.azurewebsites.net/api/\",\n REDIRECT: \"https://roteiros.bigbrain.com.br\"\n}\n\nexport const ADAL = {\n TENANT: \"esatnet.onmicrosoft.com\",\n CLIENT_ID: \"fe3ee87f-1bef-4a74-867c-70d4cb403103\",\n CLIENT_SECRET: \"b91h2iO9Fz.4Rm1._E8NMJWa9-Rny.VaY~\"\n}\n\nexport default {\n STORAGE_KEYS,\n URLS,\n ADAL\n}","import { AuthenticationContext, adalFetch, withAdalLogin } from 'react-adal';\nimport dotenv from 'dotenv';\nimport {Constants} from './core';\n\ndotenv.config();\n\nexport const endpoint =process.env.REACT_APP_CLIENT_ID;\n\nexport const adalConfig = {\n tenant: \"common\",\n clientId: Constants.ADAL.CLIENT_ID,\n redirectUri: Constants.URLS.REDIRECT,\n endpoints: {\n api: 'https://login.microsoftonline.com/',\n },\n cacheLocation: 'sessionStorage'\n};\n \nexport const authContext = new AuthenticationContext(adalConfig);\n \nexport const adalApiFetch = (fetch, url, options) =>\n adalFetch(authContext, adalConfig.endpoints.api, fetch, url, options);\n \nexport const withAdalLoginApi = withAdalLogin(authContext, adalConfig.endpoints.api);","import { runWithAdal } from 'react-adal';\nimport { authContext } from './adalConfig';\n \nconst DO_NOT_LOGIN = false;\n \nrunWithAdal(authContext, () => {\n \n // eslint-disable-next-line\n require('./indexApp.js');\n \n},DO_NOT_LOGIN);"],"sourceRoot":""}