{"version":3,"sources":["utils/enums.ts","svgReducer.ts","rootReducer.ts","utils/Utils.ts","svgSaga.ts","rootSaga.tsx","store.ts","App.tsx","index.tsx"],"names":["DISPATCHES","DOCICONS","initialState","svgInfo","svgReducer","state","action","produce","draft","type","SET_SVGINFO_SVGDATA","svgData","payload","SET_SVGINFO_DIMENSIONS","height","width","SET_SVGINFO_SITETEXT","siteText","SET_SVGINFO_DOCS","svgDocs","SET_SVGINFO_LINKS","svgLinks","SET_SVGINFO","console","log","SET_SVGINFO_PROCESSID","processId","rootReducer","combineReducers","getEnvironment","environment","baseUrl","listapi","webapi","env","svgList","pid","docList","linkList","window","location","pathname","search","get","url","Promise","fulfill","reject","axios","method","headers","Accept","then","response","items","data","d","results","error","getQueryParams","urlParams","URLSearchParams","paramsString","entries","param","slice","JSON","parse","init","getSvgInfo","getDimensions","getSvgDocs","getSVGLinks","getSvgFile","svgSaga","params","put","SAGA_GET_SVGINFO","docUrl","call","svgSPDocs","length","forEach","doc","ext","path","extname","FileRef","fileName","split","pop","newSvgDoc","icon","getDocIcon","push","docExtension","toLowerCase","WORD","EXCEL","POWERPOINT","PDF","ZIP","GENERAL","svgSPLinks","link","newSvgLink","URL","comments","Comments","svgSPInfo","svgFileData","replace","indexOf","SidText","takeLatest","SAGA_INIT","rootSaga","fork","logger","createLogger","sagaMiddleware","createSagaMiddleware","middleware","composedEnhancers","compose","applyMiddleware","store","createStore","run","App","useSelector","className","id","style","dangerouslySetInnerHTML","__html","href","src","map","index","Url","Description","dispatch","ReactDOM","render","document","getElementById"],"mappings":"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","file":"static/js/main.0ef58d8c.chunk.js","sourcesContent":["export enum DISPATCHES {\r\n SAGA_INIT = \"SAGA_INIT\",\r\n SAGA_GET_SVGINFO = \"SAGA_GET_SVGINFO\",\r\n SET_SVGINFO = \"SET_SVGINFO\",\r\n SET_SVGINPROPS = \"SET_SVGINPROPS\",\r\n SET_SVGINFO_SVGDATA = \"SET_SVGINFO_SVGDATA\",\r\n SET_SVGINFO_DIMENSIONS = \"SET_SVGINFO_DIMENSIONS\",\r\n SET_SVGINFO_SITETEXT = \"SET_SVGINFO_SITETEXT\",\r\n SET_SVGINFO_DOCS = \"SET_SVGINFO_DOCS\",\r\n SET_SVGINFO_LINKS = \"SET_SVGINFO_LINKS\",\r\n SET_SVGINFO_PROCESSID = \"SET_SVGINFO_PROCESSID\"\r\n}\r\n\r\nexport enum DOCICONS {\r\n WORD = \"/_layouts/15/images/icdocx.png\",\r\n POWERPOINT = \"/_layouts/15/images/icpptx.png\",\r\n EXCEL = \"/_layouts/15/images/icxlsx.png\",\r\n ZIP = \"/_layouts/15/images/iczip.gif\",\r\n PDF = \"/_layouts/15/images/icpdf.png\",\r\n GENERAL = \"/_layouts/15/images/icgen.gif\"\r\n}\r\n","import { DISPATCHES } from \"utils/enums\";\r\nimport produce from \"immer\";\r\nimport { svgInfoType } from \"utils/types\";\r\n\r\nexport interface IsvgState {\r\n svgInfo: svgInfoType;\r\n}\r\n\r\nconst initialState: IsvgState = {\r\n svgInfo: {} as svgInfoType\r\n};\r\n\r\n// type svgActionReturnType = {\r\n// type: DISPATCHES;\r\n// svgInfo: svgInfoType;\r\n// };\r\n// export type svgInPropsType = {\r\n// pid: string;\r\n// height: string;\r\n// width: string;\r\n// };\r\n\r\n// export type svgDocType = {\r\n// url: string;\r\n// icon: string;\r\n// fileName: string;\r\n// };\r\n\r\n// export type svgLinkType = {\r\n// url: SPUrlType;\r\n// comments: string;\r\n// };\r\n\r\n// export type svgInfoType = {\r\n// svgData: any;\r\n// height: string;\r\n// width: string;\r\n// siteText: string;\r\n// svgDocs: svgDocType[];\r\n// svgLinks: svgLinkType[];\r\n// };\r\n\r\nfunction svgReducer(state: IsvgState = initialState, action: any) {\r\n return produce(state, draft => {\r\n switch (action.type) {\r\n case DISPATCHES.SET_SVGINFO_SVGDATA:\r\n draft.svgInfo.svgData = action.payload;\r\n break;\r\n case DISPATCHES.SET_SVGINFO_DIMENSIONS:\r\n draft.svgInfo.height = action.payload.height;\r\n draft.svgInfo.width = action.payload.width;\r\n break;\r\n case DISPATCHES.SET_SVGINFO_SITETEXT:\r\n draft.svgInfo.siteText = action.payload;\r\n break;\r\n case DISPATCHES.SET_SVGINFO_DOCS:\r\n draft.svgInfo.svgDocs = action.payload;\r\n break;\r\n case DISPATCHES.SET_SVGINFO_LINKS:\r\n draft.svgInfo.svgLinks = action.payload;\r\n break;\r\n case DISPATCHES.SET_SVGINFO:\r\n console.log(\"-----REDUCER-----\");\r\n console.log(\"action.svgData\", action.payload);\r\n draft.svgInfo = action.payload;\r\n // return { ...state, svgData: action.svgData, height: action.height, width: action.width };\r\n break;\r\n case DISPATCHES.SET_SVGINFO_PROCESSID:\r\n draft.svgInfo.processId = action.payload;\r\n break;\r\n // case DISPATCHES.SET_SVGINPROPS:\r\n // console.log(\"-----REDUCER-----\");\r\n // console.log(\"action.svgData\", action.payload);\r\n // draft.svgInProps = action.payload;\r\n }\r\n });\r\n}\r\n\r\nexport default svgReducer;\r\n","import { combineReducers } from \"redux\";\r\nimport svgReducer from \"./svgReducer\";\r\n\r\nexport const rootReducer = combineReducers({\r\n svgReducer\r\n});\r\n\r\nexport type RootState = ReturnType;\r\n","// import jQuery from \"jquery\";\r\nimport Promise from \"promise\";\r\nimport axios from \"axios\";\r\n\r\ntype envType = {\r\n baseUrl: string;\r\n listapi: string;\r\n webapi: string;\r\n env: string;\r\n svgList: string;\r\n pid: string;\r\n docList: string;\r\n linkList: string;\r\n};\r\n\r\nexport const getEnvironment = (): envType => {\r\n const environment = {\r\n baseUrl: \"/tjansterprodukter/mpub\",\r\n listapi: \"/tjansterprodukter/mpub/_api/web/lists\",\r\n webapi: \"/tjansterprodukter/mpub/_api/web\",\r\n env: \"local\", // prod, dev, local,\r\n svgList: \"Processdiagram\",\r\n pid: \"Process%5Fx002F%5Faktivitet\",\r\n docList: \"Dokument\",\r\n linkList: \"Övriga referenser\"\r\n };\r\n\r\n if (window.location.pathname.search(\"tjansterprodukter/mpub\") !== -1) {\r\n environment.baseUrl = \"/tjansterprodukter/mpub\";\r\n environment.listapi = \"/tjansterprodukter/mpub/_api/web/lists\";\r\n environment.webapi = \"/tjansterprodukter/mpub/_api/web\";\r\n environment.env = \"prod\";\r\n environment.svgList = \"Processdiagram\";\r\n environment.docList = \"Dokument\";\r\n environment.linkList = \"Övriga referenser\";\r\n } else if (window.location.pathname.search(\"tjansterprodukter/dev/jacob\") !== -1) {\r\n environment.baseUrl = \"/tjansterprodukter/dev/jacob\";\r\n environment.listapi = \"/tjansterprodukter/dev/jacob/_api/web/lists\";\r\n environment.webapi = \"/tjansterprodukter/dev/jacob/_api/web\";\r\n environment.env = \"dev\";\r\n environment.svgList = \"VisioSvg\";\r\n environment.docList = \"Dokument\";\r\n environment.linkList = \"Övriga referenser\";\r\n }\r\n\r\n return environment;\r\n};\r\n\r\nexport const get = (url: string): any => {\r\n return new Promise(function (fulfill, reject) {\r\n axios({\r\n method: \"get\",\r\n url: url,\r\n headers: { Accept: \"application/json;odata=verbose\" }\r\n }).then(\r\n (response: any) => {\r\n const items =\r\n response.data && response.data.d && response.data.d.results\r\n ? response.data.d.results\r\n : response.data.d\r\n ? response.data.d\r\n : response.data\r\n ? response.data\r\n : [];\r\n console.log(\"RETURNING ITEMS: \", items);\r\n fulfill(items);\r\n },\r\n error => {\r\n reject(error.response);\r\n }\r\n );\r\n });\r\n};\r\n\r\nexport const getQueryParams = () => {\r\n const urlParams = new URLSearchParams(window.location.search);\r\n let paramsString = \"\";\r\n for (const param of urlParams.entries()) {\r\n paramsString += `\"${param[0]}\":\"${param[1]}\",`;\r\n }\r\n paramsString = `{${paramsString.slice(0, -1)}}`;\r\n console.log(\"paramsString: \", paramsString);\r\n console.log(\"paramsString JSON: \", JSON.parse(paramsString));\r\n return JSON.parse(paramsString);\r\n};\r\n\r\n// export function getSvgDataContent(){\r\n// return new Promise(function(fulfill) {\r\n// $.ajax({\r\n// url: url,\r\n// data: data,\r\n// success: function(data){\r\n// console.log(data);\r\n// fulfill(data);\r\n// },\r\n// dataType: dataType\r\n// });\r\n\r\n// });\r\n// };\r\n","import path from \"path\";\r\nimport { takeLatest, call, put } from \"redux-saga/effects\";\r\nimport { svgDocType, svgInfoSPType, svgLinkSPType, svgLinkType } from \"utils/types\";\r\nimport { DISPATCHES, DOCICONS } from \"utils/enums\";\r\nimport { GetSVGFileActionType, svgDocsSPType } from \"utils/types\";\r\nimport { getEnvironment, getQueryParams } from \"utils/Utils\";\r\nimport { get } from \"utils/Utils\";\r\n\r\nfunction* init() {\r\n const params = getQueryParams();\r\n const pid = params.processId ? params.processId : \"Regelverk FMV Materielpublikationer\";\r\n const height = params.height ? params.height : \"\";\r\n const width = params.width ? params.width : \"\";\r\n yield put({ type: DISPATCHES.SET_SVGINFO_PROCESSID, payload: pid });\r\n yield getSvgInfo({ type: DISPATCHES.SAGA_GET_SVGINFO, pid: pid, height: height, width: width });\r\n // yield put({ type: DISPATCHES.SET_SVGINPROPS, payload: { pid: pid, height: height, width: width } });\r\n}\r\n\r\n// type GetSVGFileActionType = {\r\n// type: DISPATCHES;\r\n// pid: string;\r\n// width: string;\r\n// height: string;\r\n// };\r\n\r\n// type svgInfoSPType = {\r\n// FileRef: string;\r\n// SidText: string;\r\n// };\r\n\r\n// type svgDocsSPType = {\r\n// FileRef: string;\r\n// };\r\n\r\n// type svgLinkSPType = {\r\n// URL: SPUrlType;\r\n// Comments: string;\r\n// };\r\n\r\n// export type SPUrlType = {\r\n// Description: string;\r\n// Url: string;\r\n// };\r\n\r\nfunction* getSvgInfo(action: GetSVGFileActionType) {\r\n yield getDimensions(action.height, action.width);\r\n yield getSvgFile(action.pid);\r\n yield getSvgDocs(action.pid);\r\n yield getSVGLinks(action.pid);\r\n}\r\n\r\nfunction* getDimensions(height: string, width: string) {\r\n yield put({ type: DISPATCHES.SET_SVGINFO_DIMENSIONS, payload: { height: height, width: width } });\r\n}\r\n\r\nfunction* getSvgDocs(pid: string) {\r\n const env = getEnvironment();\r\n //Get Documents\r\n const docUrl = `${env.listapi}/GetByTitle('${env.docList}')/Items?$filter=TaxCatchAll/Term eq '${pid}'&$select=FileRef`;\r\n const svgSPDocs: svgDocsSPType[] = yield call(get, docUrl);\r\n const svgDocs: svgDocType[] = [];\r\n if (svgSPDocs.length > 0) {\r\n svgSPDocs.forEach((doc: svgDocsSPType) => {\r\n const ext = path.extname(doc.FileRef);\r\n const fileName = doc.FileRef.split(\"/\").pop();\r\n const newSvgDoc: svgDocType = { url: doc.FileRef, icon: getDocIcon(ext), fileName: fileName ?? \"\" };\r\n svgDocs.push(newSvgDoc);\r\n });\r\n }\r\n yield put({ type: DISPATCHES.SET_SVGINFO_DOCS, payload: svgDocs });\r\n}\r\n\r\nfunction getDocIcon(docExtension: string) {\r\n switch (docExtension.toLowerCase()) {\r\n case \".doc\":\r\n case \".docx\":\r\n case \".docm\":\r\n case \".dot\":\r\n case \".dotm\":\r\n case \".dotx\":\r\n return DOCICONS.WORD;\r\n case \".xls\":\r\n case \".xlsb\":\r\n case \".xlsm\":\r\n case \".xlsx\":\r\n case \".xlt\":\r\n case \".xltx\":\r\n return DOCICONS.EXCEL;\r\n case \"pot\":\r\n case \".potm\":\r\n case \".potx\":\r\n case \".ppa\":\r\n case \".ppam\":\r\n case \".pps\":\r\n case \".ppsm\":\r\n case \".ppsx\":\r\n case \".ppt\":\r\n case \".pptm\":\r\n case \".pptx\":\r\n return DOCICONS.POWERPOINT;\r\n case \".pdf\":\r\n return DOCICONS.PDF;\r\n case \".zip\":\r\n return DOCICONS.ZIP;\r\n default:\r\n return DOCICONS.GENERAL;\r\n }\r\n}\r\n\r\nfunction* getSVGLinks(pid: string) {\r\n const env = getEnvironment();\r\n //Get Documents\r\n const docUrl = `${env.listapi}/GetByTitle('${env.linkList}')/Items?$filter=TaxCatchAll/Term eq '${pid}'&$select=URL,Comments`;\r\n const svgSPLinks: svgLinkSPType[] = yield call(get, docUrl);\r\n const svgLinks: svgLinkType[] = [];\r\n if (svgSPLinks.length > 0) {\r\n svgSPLinks.forEach((link: svgLinkSPType) => {\r\n const newSvgLink: svgLinkType = { url: link.URL, comments: link.Comments };\r\n svgLinks.push(newSvgLink);\r\n });\r\n }\r\n yield put({ type: DISPATCHES.SET_SVGINFO_LINKS, payload: svgLinks });\r\n}\r\n\r\n// function* getSvgFile(action: GetSVGFileActionType) {\r\nfunction* getSvgFile(pid: string) {\r\n const env = getEnvironment();\r\n\r\n // const url = `${env.listapi}/GetByTitle('${env.svgFolder}')/Items?$filter=${env.pid} eq ${action.pid}`;\r\n const url = `${env.listapi}/GetByTitle('${env.svgList}')/Items?$filter=TaxCatchAll/Term eq '${pid}'&$select=FileRef,SidText`;\r\n const svgSPInfo: svgInfoSPType[] = yield call(get, url);\r\n if (svgSPInfo[0]) {\r\n let svgFileData: string = yield call(get, svgSPInfo[0].FileRef);\r\n svgFileData = svgFileData.replace(\r\n svgFileData.slice(svgFileData.indexOf(\"height=\"), svgFileData.indexOf(\"viewBox=\") - 1),\r\n \"height='100%'\"\r\n );\r\n svgFileData = svgFileData.replace(\r\n svgFileData.slice(svgFileData.indexOf(\"width=\"), svgFileData.indexOf(\"height=\") - 1),\r\n \"width='100%'\"\r\n );\r\n // const newSvgInfo: svgInfoType = {\r\n // svgData: svgFileData,\r\n // height: action.height,\r\n // width: action.width,\r\n // sidText: svgSPInfo[0].SidText\r\n // };\r\n yield put({ type: DISPATCHES.SET_SVGINFO_SITETEXT, payload: svgSPInfo[0].SidText });\r\n yield put({ type: DISPATCHES.SET_SVGINFO_SVGDATA, payload: svgFileData });\r\n }\r\n}\r\n\r\nexport function* svgSaga() {\r\n // yield takeLatest(DISPATCHES.SAGA_GET_SVGINFO, getSvgFile);\r\n yield takeLatest(DISPATCHES.SAGA_INIT, init);\r\n}\r\n","import { fork } from \"redux-saga/effects\";\r\nimport { svgSaga } from \"./svgSaga\";\r\n// import { DISPATCHES } from \"utils/enums\";\r\n// import { getEnvironment } from \"utils/Utils\";\r\n// import { watchExampleSaga } from \"./ReduxSagaExample/ExampleSagas\";\r\n// import { get } from \"utils/Utils\";\r\n\r\n// type GetSVGFileActionType = {\r\n// pid: string;\r\n// width: string;\r\n// height: string;\r\n// };\r\n\r\n// function* getSvgFile(action: GetSVGFileActionType) {\r\n// const env = getEnvironment();\r\n// const url = `${env.listapi}/GetByTitle('${env.svgFolder}')/Items?$filter=${env.pid} eq ${action.pid}`;\r\n// yield call(get, url);\r\n// }\r\n\r\nexport default function* rootSaga() {\r\n yield fork(svgSaga);\r\n}\r\n","import { createStore, applyMiddleware, compose } from \"redux\";\r\nimport { createLogger } from \"redux-logger\";\r\nimport createSagaMiddleware from \"redux-saga\";\r\nimport { rootReducer } from \"./rootReducer\";\r\nimport rootSaga from \"./rootSaga\";\r\n\r\nconst logger = createLogger();\r\nconst sagaMiddleware = createSagaMiddleware();\r\n\r\nconst initialState = {};\r\n// const enhancers = [];\r\nconst middleware = [logger, sagaMiddleware];\r\n\r\nconst composedEnhancers = compose(applyMiddleware(...middleware));\r\n\r\nconst store = createStore(rootReducer, initialState, composedEnhancers);\r\n\r\nsagaMiddleware.run(rootSaga);\r\n\r\nexport default store;\r\n","// import React from \"react\";\r\nimport { RootState } from \"rootReducer\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { svgDocType, svgLinkType } from \"utils/types\";\r\nimport { DOCICONS } from \"utils/enums\";\r\n\r\n// import Example from \"ReduxSagaExample/Example\";\r\nconst App = () => {\r\n const { svgInfo } = useSelector((state: RootState) => state.svgReducer);\r\n console.log(`width x height: ${svgInfo.width} x ${svgInfo.height}`);\r\n // window.onload = function () {\r\n\r\n // document.getElementById(\"svgContent\").children[0].height.baseVal.valueAsString = \"100%\";\r\n // document.getElementById(\"svgContent\").children[0].width.baseVal.valueAsString = \"100%\";\r\n\r\n // });\r\n\r\n return (\r\n
\r\n
{svgInfo.processId}
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n Namn\r\n
\r\n {svgInfo && svgInfo.svgDocs\r\n ? svgInfo.svgDocs.map((doc: svgDocType, index: number) => (\r\n \r\n ))\r\n : null}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {svgInfo && svgInfo.svgLinks\r\n ? svgInfo.svgLinks.map((link: svgLinkType, index: number) => (\r\n \r\n \r\n \r\n \r\n \r\n ))\r\n : null}\r\n \r\n
URLKommentar
\r\n \r\n \r\n \r\n {link.url.Description}\r\n \r\n {link.comments}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default App;\r\n","import React from \"react\";\r\nimport ReactDOM from \"react-dom\";\r\nimport \"css/app.scss\";\r\nimport { Provider } from \"react-redux\";\r\nimport store from \"./store\";\r\nimport App from \"./App\";\r\n// import { getQueryParams } from \"utils/Utils\";\r\nimport { DISPATCHES } from \"utils/enums\";\r\n// import { svgInfoType } from \"svgReducer\";\r\n\r\n// const params = getQueryParams();\r\n// const pid = params.pid ? params.pid : \"\";\r\n// const height = params.height ? params.height : \"\";\r\n// const width = params.width ? params.width : \"\";\r\n// const dispatch = useDispatch();\r\nstore.dispatch({ type: DISPATCHES.SAGA_INIT });\r\n\r\nReactDOM.render(\r\n \r\n
\r\n \r\n
\r\n
,\r\n document.getElementById(\"root\")\r\n);\r\n"],"sourceRoot":""}