{"version":3,"file":"component---src-pages-resource-list-js-a20ab0de609b211c816c.js","mappings":"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","sources":["webpack://jumperrwd/./src/pages/resourceList.js"],"sourcesContent":["import React from \"react\";\nimport Layout from \"components/layout\";\nimport { withI18next } from \"lib/withI18next\";\nimport DBResourceListComp from \"components/resource/DBResourceListComp\";\nimport JournalResourceListComp from \"components/resource/JournalResourceListComp\";\nimport ResourceListTab from \"components/resource/ResourceListTab\";\nimport SearchBlock from \"components/search/SearchBlock\";\nimport { autobind } from \"react-decoration\";\nimport { page } from \"components/page\";\nimport { navigate } from \"gatsby\";\nimport qs from \"query-string\";\n\n@withI18next([\"common\"])\n@page\nclass ResourceList extends React.Component {\n constructor(props) {\n super(props);\n let state = this.getQueryState(props);\n this.state = state;\n }\n\n componentWillReceiveProps(props) {\n if (this.props !== props) {\n if (this.state.auth !== props.readerStore.auth) {\n let { location } = this.props;\n if (location.pathname === \"/resourceList\") {\n this.resetPage();\n }\n }\n this.setQueryState(props);\n }\n }\n\n @autobind\n setQueryState(props) {\n let state = this.getQueryState(props);\n\n if (JSON.stringify(state) !== JSON.stringify(this.state)) {\n this.setState({\n ...state,\n });\n }\n }\n\n @autobind\n getQueryState(props) {\n let { search, readerStore, appStore } = props;\n let { resourceConfig } = appStore;\n let params = { ...search };\n let {\n resourceType,\n pageNo,\n limit,\n searchInput,\n searchField,\n op,\n showType,\n filterField,\n filterValue,\n sort,\n order,\n pageType,\n subject,\n college,\n unit,\n classSn,\n par,\n phonetic,\n strokes,\n language,\n alphabet,\n dbID,\n searchTarget,\n sc,\n } = params;\n let publicationType = \"\";\n let defaultResourceType =\n resourceConfig && resourceConfig.resourceTabList\n ? resourceConfig.resourceTabList[0]\n : \"databases\";\n\n let resourceTypeSet = [\n \"databases\",\n \"network\",\n \"journal\",\n \"ejournal\",\n \"ebook\",\n \"paper_journal\",\n ];\n\n if (resourceTypeSet.indexOf(resourceType) === -1) {\n resourceType = defaultResourceType;\n }\n\n if (sort === undefined || sort === \"\") {\n if (resourceType === \"databases\") {\n if (pageType === \"search\") {\n sort = \"related\";\n } else if (pageType === \"hot\") {\n sort = \"hot\";\n } else {\n sort = \"ebname\";\n }\n } else {\n if (pageType === \"hot\") {\n sort = \"hot\";\n }\n }\n }\n\n if (pageType === undefined || pageType === \"\") {\n pageType = \"list\";\n }\n\n pageNo = pageNo || 1;\n limit = limit || 30;\n searchInput = [].concat(searchInput || []);\n searchField = [].concat(searchField || []);\n op = [].concat(op || []);\n showType = showType || \"simple\";\n filterField = [].concat(filterField || []);\n filterValue = [].concat(filterValue || []);\n\n op.splice(0, 0, \"\");\n let removeId = 0;\n searchInput = searchInput.filter((v, k) => {\n if (v !== null && v.trim() !== \"\") {\n return 1;\n } else {\n searchField.splice(k - removeId, 1);\n op.splice(k - removeId, 1);\n removeId++;\n }\n });\n op.splice(0, 1);\n\n if (resourceType === \"journal\") {\n publicationType = \"1\";\n } else if (resourceType === \"paper_journal\") {\n publicationType = \"3\";\n } else if (resourceType === \"ebook\") {\n publicationType = \"2\";\n }\n\n if (sort === \"hot\") {\n order = \"desc\";\n }\n\n let searchForm = {\n publicationType,\n pageNo,\n limit,\n searchField,\n searchInput: searchInput.map(\n Function.prototype.call,\n String.prototype.trim\n ),\n op,\n showType,\n filterField,\n filterValue,\n sort,\n order,\n subject,\n college,\n unit,\n resourceType,\n pageType,\n classSn,\n par,\n phonetic,\n strokes,\n language,\n alphabet,\n dbID,\n searchTarget,\n sc,\n };\n\n Object.keys(searchForm).map((key) => {\n if (\n searchForm[key] === null ||\n (typeof searchForm[key] === \"string\" && searchForm[key].trim() === \"\")\n ) {\n delete searchForm[key];\n }\n });\n\n let state = {\n searchForm: searchForm,\n auth: readerStore.auth,\n resourceType: resourceType,\n pageType: pageType,\n };\n\n return state;\n }\n\n @autobind\n resetPage() {\n let { search, location } = this.props;\n let params = { ...search };\n delete params[\"pageNo\"];\n delete params[\"limit\"];\n let path = Object.keys(params).length > 0 ? [location.pathname, qs.stringify(params)].join(\"?\") : location.pathname;\n navigate(path);\n }\n\n @autobind\n resourceListComp() {\n if (this.state.searchForm !== undefined) {\n switch (this.state.resourceType) {\n case \"databases\":\n return (\n \n );\n case \"journal\":\n return (\n \n );\n case \"paper_journal\":\n return (\n \n );\n case \"ebook\":\n return (\n \n );\n }\n }\n }\n\n render() {\n return (\n \n \n :::\n \n \n \n {this.resourceListComp()}\n \n \n \n );\n }\n}\n\nexport default ResourceList;\n"],"names":["ResourceList","withI18next","page","props","state","getQueryState","componentWillReceiveProps","this","auth","readerStore","location","pathname","resetPage","setQueryState","JSON","stringify","setState","search","resourceConfig","appStore","params","resourceType","pageNo","limit","searchInput","searchField","op","showType","filterField","filterValue","sort","order","pageType","subject","college","unit","classSn","par","phonetic","strokes","language","alphabet","dbID","searchTarget","sc","publicationType","defaultResourceType","resourceTabList","indexOf","undefined","concat","splice","removeId","filter","v","k","trim","searchForm","map","Function","prototype","call","String","Object","keys","key","path","length","qs","join","navigate","resourceListComp","render","className","id","class","href","accesskey","title","searchType","React","autobind"],"sourceRoot":""}