{"version":3,"file":"991c86bb189eab111fc9348680e4eda552dc914f-4dbd02a7ef6768267b74.js","mappings":"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","sources":["webpack://jumperrwd/./src/components/search/ResourceSearchComp.js","webpack://jumperrwd/./src/components/search/CustomIntegrationSearchComp.js","webpack://jumperrwd/./src/components/search/SearchBlock.js"],"sourcesContent":["import React from \"react\";\nimport { autobind } from \"react-decoration\";\nimport { navigate } from \"gatsby\";\nimport qs from \"query-string\";\nimport PropTypes from \"prop-types\";\nimport client from \"lib/ApolloClient\";\nimport gql from \"graphql-tag\";\nimport { ApolloProvider, Query } from \"react-apollo\";\nimport { inject, observer } from \"mobx-react\";\nimport { withI18next } from \"lib/withI18next\";\nimport searchAPI from \"lib/searchAPI\";\nimport KeyboardInput from \"components/form/KeyboardInput\";\nimport withLocation from \"lib/withLocation\";\nimport Link from \"lib/Link\";\n\nconst getResourceAutoComplete = gql`\n query getResourceAutoComplete($form: AutoCompleteForm) {\n getResourceAutoComplete(Input: $form) {\n list\n }\n }\n`;\n\nconst getResourceRelatedField = gql`\n query getResourceRelatedField {\n getResourceRelatedField {\n dbFieldList\n journalFieldList\n }\n }\n`;\n\nconst setResourceSearchHistory = gql`\n mutation setResourceSearchHistory($form: SearchHistoryForm) {\n result: setResourceSearchHistory(Input: $form) {\n success\n message\n errorType\n }\n }\n`;\n\nconst getResourceSearchHistory = gql`\n query getResourceSearchHistory {\n getResourceSearchHistory {\n rshItemList {\n searchType\n searchValue\n searchField\n op\n searchTime\n }\n }\n }\n`;\n\nclass PromptWord extends React.Component {\n render() {\n let { q, resourceType } = this.props;\n if (q == null || q.trim() == \"\") {\n return null;\n }\n\n return (\n \n \n {({ loading, data, error }) => {\n if (error) return \"\";\n if (!loading && data !== null) {\n const { list } = data.getResourceAutoComplete;\n if (list == null || list.length == 0) {\n return null;\n }\n return (\n <>\n \n \n );\n } else {\n return null;\n }\n }}\n \n \n );\n }\n}\n\nPromptWord.propTypes = {\n q: PropTypes.string,\n};\n\nclass RecentSearch extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n auth: props.readerStore.auth,\n refetch: null,\n };\n }\n\n componentWillReceiveProps(props) {\n if (this.state.auth !== props.readerStore.auth) {\n if (this.state.refetch !== null) {\n this.state.refetch();\n }\n this.setState({ auth: props.readerStore.auth });\n }\n }\n\n render() {\n let { t } = this.props;\n return (\n \n \n {({ loading, data, refetch, error }) => {\n if (error) return \"\";\n if (this.state.refetch === null) {\n this.setState({ refetch: refetch });\n }\n if (!loading && data && data.getResourceSearchHistory) {\n let { rshItemList } = data.getResourceSearchHistory;\n if (\n rshItemList === undefined ||\n rshItemList === null ||\n rshItemList.length === 0\n ) {\n return null;\n }\n return (\n <>\n
\n {t(\"jumperrwd.common.searchRecord\")}\n
\n \n \n );\n } else {\n return null;\n }\n }}\n
\n
\n );\n }\n}\n\n@withLocation\n@withI18next([\"common\"])\n@inject(\"appStore\", \"readerStore\")\n@observer\nclass ResourceSearchComp extends React.Component {\n constructor(props) {\n super(props);\n\n let defaultCondition = {\n id: 0,\n opFlag: true,\n del: true,\n op: \"and\",\n searchField: \"all\",\n searchInput: \"\",\n };\n\n let condition = [];\n\n let { search } = this.props;\n let params = { ...search };\n let { searchInput, searchField, op, mode = \"simple\" } = params;\n let searchTarget = params.searchTarget || \"all\";\n let advanceResourceType = params.searchTarget || \"databases\";\n let ispjournals = props.appStore.globalConfig[\"jumper.common.ispjournals\"];\n let isEbooks = props.appStore.globalConfig[\"jumperrwd.common.isEbooks\"];\n searchInput = searchInput || [];\n searchField = searchField || [];\n op = op || [];\n\n if (typeof searchInput === \"string\") {\n searchInput = [searchInput];\n }\n if (typeof searchField === \"string\") {\n searchField = [searchField];\n }\n if (typeof op === \"string\") {\n op = [op];\n }\n op.splice(0, 0, \"\");\n\n searchInput.forEach((input, key) => {\n input = input.trim();\n if (input !== \"\") {\n let id = condition.length + 1;\n let opFlag = true;\n let del = true;\n if (id === 1) {\n opFlag = false;\n del = false;\n }\n condition.push({\n ...defaultCondition,\n searchInput: input,\n searchField: searchField[key],\n op: op[key],\n id,\n opFlag,\n del,\n });\n }\n });\n\n if (condition.length === 0) {\n condition.push({\n ...defaultCondition,\n id: 1,\n op: \"\",\n opFlag: false,\n del: false,\n });\n }\n\n if (condition.length === 1) {\n condition.push({ ...defaultCondition, id: 2 });\n }\n\n this.state = {\n resourceType: searchTarget,\n advanceResourceType,\n searchInput: \"\",\n mode: mode,\n keywordCanempty: \"0\",\n recentSearchesDisplay: false,\n showPJournal: ispjournals === \"1\",\n showEbook: isEbooks === \"1\",\n defaultCondition: defaultCondition,\n condition: condition,\n seq: condition.length + 1,\n relatedField: null,\n displayFixed: \"none\",\n scrolldown_fix: \"\",\n };\n this.searchInput = React.createRef();\n this.searchInputFloat = React.createRef();\n }\n\n componentDidMount() {\n client.jumperrwdClient\n .query({\n query: getResourceRelatedField,\n })\n .then((res) => {\n if (res.data.getResourceRelatedField) {\n this.setState({ relatedField: res.data.getResourceRelatedField });\n }\n });\n\n if (this.state.mode === \"simple\") {\n let searchInput = \"\";\n let { search } = this.props;\n let params = { ...search };\n if (params.searchInput !== undefined) {\n searchInput = params.searchInput;\n }\n this.searchInput.current.val(searchInput);\n this.searchInputFloat.current.val(searchInput);\n this.setState({ searchInput: searchInput });\n }\n window.addEventListener(\"scroll\", this.scrollTop);\n }\n\n componentWillUnmount() {\n window.removeEventListener(\"scroll\", this.scrollTop);\n }\n\n @autobind\n scrollTop() {\n if (window.pageYOffset >= 200) {\n this.setState({\n scrolldown_fix: \"scrolldown_fix\",\n displayFixed: \"block\",\n });\n } else {\n this.setState({ scrolldown_fix: \"\", displayFixed: \"none\" });\n }\n }\n\n @autobind\n handleSearchInputChange() {\n if (this.state.mode === \"simple\") {\n let searchInput = this.searchInput.current.val();\n\n if (this.state.displayFixed == \"block\") {\n searchInput = this.searchInputFloat.current.val();\n this.searchInput.current.val(searchInput);\n } else {\n this.searchInputFloat.current.val(searchInput);\n }\n this.setState({ searchInput: searchInput });\n }\n }\n\n @autobind\n autoComplete(text, e) {\n e.preventDefault();\n this.searchInput.current.val(text);\n this.setState({ searchInput: text });\n }\n\n @autobind\n handleResourceType(e) {\n e.preventDefault();\n this.setState({ resourceType: e.target.value });\n }\n\n @autobind\n handleAdvanceResourceType(e) {\n e.preventDefault();\n let condition = this.state.condition;\n condition.map((t) => {\n t.searchField = \"all\";\n });\n this.setState({\n advanceResourceType: e.target.value,\n condition: condition,\n });\n }\n\n @autobind\n handleAdvanceChange(item, e) {\n let condition = this.state.condition;\n condition.map((t, key) => {\n if (t.id === item.id) {\n condition[key][e.target.name] = e.target.value;\n }\n\n if (item.id === 1) {\n if (this.state.displayFixed == \"block\") {\n // searchInput = this.searchInputFloat.current.val();\n // this.searchInput.current.val(searchInput);\n } else {\n this.searchInputFloat.current.val(e.target.value);\n }\n }\n });\n\n this.setState({ condition: condition });\n }\n\n @autobind\n addCondition() {\n let condition = this.state.condition;\n condition.push({ ...this.state.defaultCondition, id: this.state.seq });\n this.setCondition({ condition: condition, seq: this.state.seq + 1 });\n }\n\n @autobind\n delCondition(item) {\n let id = -1;\n let condition = this.state.condition;\n condition.map((t, key) => {\n if (t.id === item.id) {\n id = key;\n }\n });\n condition.splice(id, 1);\n this.setCondition({ condition: condition, seq: this.state.seq });\n }\n\n @autobind\n setCondition(data) {\n const { condition, seq } = data;\n if (seq !== null) {\n this.setState({ condition: condition, seq: seq });\n } else {\n this.setState({ condition: condition });\n }\n }\n\n @autobind\n getResource(items) {\n let op = [];\n let searchField = [];\n let searchInput = [];\n items.map((item, key) => {\n searchField.push(item.searchField);\n searchInput.push(item.searchInput);\n if (key !== 0) {\n op.push(item.op);\n }\n });\n return {\n op,\n searchField,\n searchInput,\n };\n }\n\n @autobind\n onSubmit(e) {\n e.preventDefault();\n let { t } = this.props;\n let { resourceType } = this.state;\n let params = {};\n let searchInput = this.searchInput.current.val();\n let pageType = \"search\";\n let searchTarget;\n let sTag = \"\";\n\n if (this.state.displayFixed == \"block\") {\n searchInput = this.searchInputFloat.current.val();\n this.searchInput.current.val(searchInput);\n } else {\n this.searchInputFloat.current.val(searchInput);\n }\n\n if (this.state.keywordCanempty === \"0\" && searchInput === \"\") {\n alert(t(\"jumperrwd.common.pleaseEnterSearchword\"));\n return;\n }\n if (resourceType !== \"all\") {\n searchTarget = resourceType;\n sTag = resourceType;\n params = { resourceType, searchTarget, searchInput, pageType };\n } else {\n params = { searchInput, pageType };\n }\n params.mode = \"simple\";\n\n client.jumperrwdClient\n .mutate({\n mutation: setResourceSearchHistory,\n variables: {\n form: {\n mode: \"simple\",\n searchInput: [searchInput],\n searchField: [],\n op: [],\n sTag,\n },\n },\n })\n .then((res) => {\n this.setState({ recentSearchesDisplay: false });\n navigate([\"/resourceList\", qs.stringify(params)].join(\"?\"));\n });\n }\n\n @autobind\n onFloatSubmit(e) {\n e.preventDefault();\n let { t } = this.props;\n let { resourceType } = this.state;\n let params = {};\n let searchInput = this.searchInputFloat.current.val();\n let pageType = \"search\";\n let searchTarget;\n let sTag = \"\";\n\n if (this.state.keywordCanempty === \"0\" && searchInput === \"\") {\n alert(t(\"jumperrwd.common.pleaseEnterSearchword\"));\n return;\n }\n if (resourceType !== \"all\") {\n searchTarget = resourceType;\n sTag = resourceType;\n params = { resourceType, searchTarget, searchInput, pageType };\n } else {\n params = { searchInput, pageType };\n }\n params.mode = \"simple\";\n\n client.jumperrwdClient\n .mutate({\n mutation: setResourceSearchHistory,\n variables: {\n form: {\n mode: \"simple\",\n searchInput: [searchInput],\n searchField: [],\n op: [],\n sTag,\n },\n },\n })\n .then((res) => {\n this.setState(\n {\n recentSearchesDisplay: false,\n mode: \"simple\",\n searchInput: searchInput,\n },\n () => {\n window.scrollTo(0, 0);\n navigate([\"/resourceList\", qs.stringify(params)].join(\"?\"));\n }\n );\n });\n }\n\n @autobind\n onAdvanceSubmit(e) {\n e.preventDefault();\n let { t } = this.props;\n let { advanceResourceType, condition } = this.state;\n let pageType = \"search\";\n let searchTarget = advanceResourceType;\n let params = searchAPI.searchParamfix(this.getResource(condition));\n\n if (this.state.keywordCanempty === \"0\" && params.searchInput.length === 0) {\n alert(t(\"jumperrwd.common.pleaseEnterSearchword\"));\n return;\n }\n\n params = {\n ...params,\n resourceType: advanceResourceType,\n pageType,\n searchTarget,\n mode: \"advance\",\n };\n\n let sTag = advanceResourceType;\n client.jumperrwdClient\n .mutate({\n mutation: setResourceSearchHistory,\n variables: {\n form: {\n mode: \"complex\",\n searchField: params.searchField,\n searchInput: params.searchInput,\n op: params.op,\n sTag,\n },\n },\n })\n .then((res) => {\n navigate([\"/resourceList\", qs.stringify(params)].join(\"?\"));\n });\n }\n\n @autobind\n changeSearchType(type, e) {\n e.preventDefault();\n let { mode } = this.state;\n /*let params = qs.parseUrl(window.location.href).query;\n let { searchInput, searchField, op, mode = \"simple\" } = params;\n params.mode = mode == \"simple\" ? \"advance\":\"simple\";\n delete params.pid;\n delete params.filterPid;*/\n mode = mode === \"simple\" ? \"advance\" : \"simple\";\n this.searchInputFloat.current.val(\"\");\n this.setState(\n {\n mode: mode,\n },\n () => {\n //navigate([location.pathname, qs.stringify(params)].join(\"?\"));\n }\n );\n }\n\n @autobind\n submitKeyword(keyword, e) {\n e.preventDefault();\n this.searchInput.current.val(keyword);\n this.searchForm.dispatchEvent(new Event(\"submit\"));\n }\n\n @autobind\n setRecentSearch(rshItem, e) {\n e.preventDefault();\n if (rshItem.searchField && rshItem.searchField.length > 0) {\n let condition = [];\n let { searchField, searchValue, op, searchType } = rshItem;\n searchValue.forEach((value, key) => {\n value = value.trim();\n if (value !== \"NULL\") {\n let id = condition.length + 1;\n let opFlag = true;\n let del = true;\n if (id === 1) {\n opFlag = false;\n del = false;\n }\n condition.push({\n ...this.state.defaultCondition,\n searchInput: value,\n searchField: searchField[key],\n op: op[key],\n id,\n opFlag,\n del,\n });\n }\n });\n let seq = condition.length + 1;\n this.setState({\n mode: \"advance\",\n advanceResourceType: searchType,\n condition,\n seq,\n });\n } else {\n let searchValue = rshItem.searchValue[0];\n let searchType = rshItem.searchType;\n this.searchInput.current.val(searchValue);\n this.setState({\n mode: \"simple\",\n resourceType: searchType,\n searchInput: searchValue,\n });\n }\n }\n\n render() {\n let { t, appStore } = this.props;\n let { searchBlock } = appStore;\n let {\n showPJournal,\n showEbook,\n mode,\n relatedField,\n advanceResourceType,\n recentSearchesDisplay,\n } = this.state;\n return (\n <>\n \n
\n
\n \n {mode === \"simple\" && (\n \n )}\n \n \n {showPJournal && (\n \n )}\n {showEbook && (\n \n )}\n \n \n
\n \n
\n
\n
\n \n
\n {mode === \"simple\" && (\n <>\n
(this.searchForm = c)} onSubmit={this.onSubmit}>\n
\n \n \n \n \n {showPJournal && (\n \n )}\n {showEbook && (\n \n )}\n \n {\n this.setState({ recentSearchesDisplay: true });\n }}\n onBlur={() => {\n setTimeout(\n () => this.setState({ recentSearchesDisplay: false }),\n 200\n );\n }}\n />\n \n {\n if (e.key === \"Enter\") {\n this.changeSearchType.bind(this, \"advance\");\n }\n }}>\n {t(\"jumper.common.advsearch\")}\n \n {recentSearchesDisplay && (\n
\n \n \n
\n )}\n
\n \n {t(\"jumperrwd.search.resourceView\")}\n \n
\n {searchBlock !== null && searchBlock.keywordTypeList && (\n <>\n {searchBlock.keywordTypeList.map((keywordTypeItem) => {\n if (\n keywordTypeItem.type === \"resource\" &&\n keywordTypeItem.keywordList\n ) {\n return (\n
\n
    \n {t(\"jumperrwd.common.hotKeyword\")}:\n {keywordTypeItem.keywordList.map((keyword) => {\n return (\n
  • \n {\n if (e.key === \"Enter\") {\n this.submitKeyword(\n keyword.name,\n e\n );\n }\n }}>\n {keyword.name}\n \n
  • \n );\n })}\n
\n
\n );\n }\n return \"\";\n })}\n \n )}\n \n )}\n {mode === \"advance\" && (\n
\n {this.state.condition.map((item, key) => {\n return (\n <>\n \n {item.id === 1 && (\n \n \n \n {showPJournal && (\n \n )}\n {showEbook && (\n \n )}\n \n )}\n {item.opFlag && (\n \n \n \n \n \n )}\n \n \n \n {relatedField &&\n ((advanceResourceType === \"databases\" &&\n relatedField.dbFieldList &&\n relatedField.dbFieldList.map((dbField) => {\n return (\n \n );\n })) ||\n ((advanceResourceType === \"journal\" ||\n advanceResourceType === \"paper_journal\" ||\n advanceResourceType === \"ebook\") &&\n relatedField.journalFieldList &&\n relatedField.journalFieldList.map(\n (journalField) => {\n let nameField = \"journalName\";\n if (advanceResourceType === \"ebook\") {\n nameField = \"ebookName\";\n }\n return (\n \n );\n }\n )))}\n \n {item.del && (\n {\n this.delCondition(item);\n }}>\n {t(\"jumperrwd.common.delete\")}\n \n )}\n {item.id === 1 && (\n <>\n
\n \n {\n if (e.key === \"Enter\") {\n this.changeSearchType.bind(this, \"simple\");\n }\n }}>\n {t(\"jumper.common.simplesearch\")}\n \n
\n \n )}\n
\n \n );\n })}\n \n {t(\"jumperrwd.search.addConditionLine\")}\n \n
\n \n {t(\"jumperrwd.search.resourceView\")}\n \n \n )}\n \n \n );\n }\n}\n\nResourceSearchComp.defaultProps = {};\n\nResourceSearchComp.propTypes = {\n t: PropTypes.func,\n};\n\nexport default ResourceSearchComp;\n","import React from \"react\";\nimport { autobind } from \"react-decoration\";\nimport { navigate } from \"gatsby\";\nimport withLocation from \"lib/withLocation\";\nimport qs from \"query-string\";\nimport PropTypes from \"prop-types\";\nimport client from \"lib/ApolloClient\";\nimport { inject, observer } from \"mobx-react\";\nimport { withI18next } from \"lib/withI18next\";\nimport gql from \"graphql-tag\";\nimport KeyboardInput from \"components/form/KeyboardInput\";\nimport Link from \"lib/Link\";\nimport { ApolloProvider, Query } from \"react-apollo\";\n\nconst getResourceAutoComplete = gql`\n query getResourceAutoComplete($form: AutoCompleteForm) {\n getResourceAutoComplete(Input: $form) {\n list\n }\n }\n`;\n\nclass PromptWord extends React.Component {\n render() {\n let { q, resourceType } = this.props;\n if (q == null || q.trim() == \"\") {\n return null;\n }\n\n return (\n \n \n {({ loading, data, error }) => {\n if (error) return \"\";\n if (!loading && data !== null) {\n const { list } = data.getResourceAutoComplete;\n if (list == null || list.length == 0) {\n return null;\n }\n return (\n <>\n
    \n {list.map((word, key) => (\n
  • \n {\n if (e.key === \"Enter\") {\n this.props.autoComplete(word, e);\n }\n }}>\n {word}\n \n
  • \n ))}\n
\n \n );\n } else {\n return null;\n }\n }}\n \n
\n );\n }\n}\n\nPromptWord.propTypes = {\n q: PropTypes.string,\n};\n\n@inject(\"appStore\")\n@observer\n@withI18next([\"common\"])\nclass CustomIntegrationSearchComp extends React.Component {\n constructor(props) {\n super(props);\n\n let conditions = [];\n let params = qs.parseUrl(window.location.href).query;\n let { searchInput, searchField, op, mode = \"simple\" } = params;\n\n searchInput = searchInput || [];\n searchField = searchField || [];\n op = op || [];\n\n if (typeof searchInput === \"string\") {\n searchInput = [searchInput];\n }\n if (typeof searchField === \"string\") {\n searchField = [searchField];\n }\n if (typeof op === \"string\") {\n op = [op];\n }\n op.splice(0, 0, \"\");\n\n searchInput.forEach((input, key) => {\n input = input.trim();\n let field = searchField[key];\n if (input != \"\") {\n conditions.push({\n input,\n field: searchField[key],\n op: op[key],\n });\n }\n });\n\n if (conditions.length == 0) {\n conditions.push({ input: \"\", field: \"TI\", op: \"\" });\n }\n\n if (conditions.length === 1) {\n conditions.push({ input: \"\", field: \"TI\", op: \"and\" });\n }\n\n this.state = {\n conditions,\n mode,\n searchInput: searchInput[0],\n displayFixed: \"none\",\n scrolldown_fix: \"\",\n recentSearchesDisplay: false,\n };\n this.searchInput = React.createRef();\n }\n\n componentDidMount() {\n window.addEventListener(\"scroll\", this.scrollTop);\n }\n\n componentWillUnmount() {\n window.removeEventListener(\"scroll\", this.scrollTop);\n }\n\n @autobind\n scrollTop() {\n if (window.pageYOffset >= 200) {\n this.setState({\n scrolldown_fix: \"scrolldown_fix\",\n displayFixed: \"block\",\n });\n } else {\n this.setState({ scrolldown_fix: \"\", displayFixed: \"none\" });\n }\n }\n\n @autobind\n onSubmit(e) {\n e.preventDefault();\n const { t } = this.props;\n let db = this.props.searchTypeItem.hyintID ? this.props.searchTypeItem.hyintID.split(\",\") : [];\n let decentralized = \"Y\";\n let centralized = \"N\";\n let { conditions, mode } = this.state;\n let maxCondition = 3;\n let searchBlockType = this.props.searchTypeItem.type;\n\n if (mode == \"simple\") {\n maxCondition = 1;\n }\n\n let searchInput = [],\n searchField = [],\n op = [];\n\n conditions.forEach((condition, key) => {\n if (key < maxCondition) {\n const { input, field, op: operator } = condition;\n if (input.trim() != \"\") {\n searchInput.push(input);\n searchField.push(field);\n if (operator != \"\") {\n op.push(operator);\n }\n }\n }\n });\n\n let params = { searchInput, searchField, op, db, mode, searchBlockType, centralized, decentralized };\n\n if (searchInput.length == 0) {\n alert(t`message.entersearchword`);\n } else {\n navigate([\"/searchResult\", qs.stringify(params)].join(\"?\"));\n }\n\n this.setState({\n recentSearchesDisplay: false,\n });\n }\n\n @autobind\n handlerSearchInputChange(key, e) {\n e.persist();\n const { name, value } = e.target;\n let { conditions } = this.state;\n conditions[key][name] = value;\n this.setState({ conditions });\n }\n\n toggleSearchMode = () => {\n let { mode } = this.state; //\n /*let params = qs.parseUrl(window.location.href).query;\n let { searchInput, searchField, op, mode = \"simple\" } = params;\n params.mode = mode == \"simple\" ? \"advance\":\"simple\";\n delete params.pid;\n delete params.filterPid;*/ mode =\n mode == \"simple\" ? \"advance\" : \"simple\";\n this.setState(\n {\n mode,\n },\n () => {\n //navigate([window.location.uri, qs.stringify(params)].join(\"?\"));\n }\n );\n };\n\n addContition = () => {\n let { conditions, centralized, decentralized, mode } = this.state;\n let maxCondition = decentralized ? 3 : 12;\n if (mode == \"simple\") {\n maxCondition = 1;\n }\n if (conditions.length < maxCondition) {\n conditions.push({ input: \"\", field: \"TI\", op: \"and\" });\n this.setState({ conditions });\n }\n };\n\n delCondition = (index) => {\n let { conditions } = this.state;\n conditions.splice([index], 1);\n this.setState({ conditions });\n };\n\n @autobind\n submitKeyword(keyword, e) {\n e.preventDefault();\n let conditions = { ...this.state.conditions };\n conditions[0].input = keyword;\n this.setState(conditions);\n //this.searchInput.current.val(keyword);\n this.searchForm.dispatchEvent(new Event(\"submit\"));\n }\n\n @autobind\n autoComplete(text, e) {\n e.preventDefault();\n let { conditions } = this.state;\n conditions[0][\"input\"] = text;\n this.setState({ conditions });\n }\n\n render() {\n let { t, appStore } = this.props;\n let { searchBlock } = appStore;\n const { conditions, mode, recentSearchesDisplay } = this.state;\n\n let isSimple = mode == \"simple\";\n\n let maxCondition = 3;\n if (mode === \"simple\") {\n maxCondition = 1;\n }\n let showAdd = conditions.length < maxCondition;\n\n let hintMessage = t(\"jumper.common.keywordfield.fullsearch.tips\");\n if (this.props.searchTypeItem.hintMessage) {\n hintMessage = t(this.props.searchTypeItem.hintMessage);\n }\n return (\n <>\n \n
\n {conditions.map((condition, key) => {\n let isFirst = key == 0;\n let formLineClass = isFirst ? \"\" : \"condition\";\n const { field, input, op } = condition;\n if (mode == \"simple\" && key > 0) {\n return null;\n }\n if (!showAdd && key > maxCondition) {\n return null;\n }\n return (\n
\n \n \n
\n );\n })}\n
\n \n
\n
(this.searchForm = c)} onSubmit={this.onSubmit}>\n {conditions.map((condition, key) => {\n let isFirst = key == 0;\n let formLineClass = isFirst ? \"\" : \"condition\";\n const { field, input, op } = condition;\n if (mode == \"simple\" && key > 0) {\n return null;\n }\n if (!showAdd && key > maxCondition) {\n return null;\n }\n return (\n
\n {!isFirst && (\n \n \n \n \n \n )}\n {\n this.setState({ recentSearchesDisplay: true });\n }}\n onBlur={() => {\n setTimeout(\n () => this.setState({ recentSearchesDisplay: false }),\n 200\n );\n }}\n autoComplete={isSimple ? \"off\" : \"on\"}\n />\n {isSimple && recentSearchesDisplay && (\n
\n \n
\n )}\n {!isSimple && (\n \n \n \n \n \n \n \n \n \n )}\n {!isFirst && (\n \n delete\n \n )}\n {isFirst && (\n <>\n \n {\n if (e.key === \"Enter\") {\n this.toggleSearchMode(e);\n }\n }}>\n {mode == \"simple\"\n ? t(\"jumper.common.advsearch\")\n : t(\"jumper.common.simplesearch\")}\n \n \n )}\n
\n );\n })}\n {!isSimple && showAdd && (\n \n {t(\"jumperrwd.search.addConditionLine\")}\n \n )}\n \n {searchBlock !== null && searchBlock.keywordTypeList && (\n <>\n {searchBlock.keywordTypeList.map((keywordTypeItem) => {\n if (\n keywordTypeItem.type === \"integration\" &&\n keywordTypeItem.keywordList\n ) {\n return (\n
\n
    \n {t(\"jumperrwd.common.hotKeyword\")}:\n {keywordTypeItem.keywordList.map((keyword) => {\n return (\n
  • \n {\n if (e.key === \"Enter\") {\n this.submitKeyword(\n keyword.name,\n e\n );\n }\n }}>\n {keyword.name}\n \n
  • \n );\n })}\n
\n
\n );\n }\n return \"\";\n })}\n \n )}\n
\n \n );\n }\n}\n\nCustomIntegrationSearchComp.defaultProps = {};\n\nCustomIntegrationSearchComp.propTypes = {\n t: PropTypes.func,\n};\nexport default CustomIntegrationSearchComp;\n","import React from \"react\";\nimport { autobind } from \"react-decoration\";\nimport withLocation from \"lib/withLocation\";\nimport PropTypes from \"prop-types\";\nimport { inject, observer } from \"mobx-react\";\nimport { withI18next } from \"lib/withI18next\";\nimport IntegrationSearchComp from \"./IntegrationSearchComp\";\nimport ResourceSearchComp from \"./ResourceSearchComp\";\nimport CustomIntegrationSearchComp from \"./CustomIntegrationSearchComp\";\nimport { navigate } from \"gatsby\";\nimport qs from \"query-string\";\n\n@withLocation\n@withI18next([\"common\"])\n@inject(\"appStore\")\n@observer\nclass SearchBlock extends React.Component {\n constructor(props) {\n super(props);\n\n let { globalConfig } = props.appStore;\n let showHold = globalConfig[\"jumper.common.iscatalog\"] === \"1\";\n let showIntegration =\n globalConfig[\"jumper.common.isdiscovery\"] === \"1\" ||\n globalConfig[\"jumper.common.ishyint\"] === \"1\";\n let showResource = globalConfig[\"jumper.common.isresource\"] === \"1\";\n let tabbar = globalConfig[\"jumper.common.tabbar.default\"];\n if (tabbar === \"collections\") {\n tabbar = \"hold\";\n } else if (tabbar === \"fullsearch\") {\n tabbar = \"integration\";\n }\n let searchType = this.props.searchType || tabbar;\n this.state = {\n searchType,\n showHold,\n showIntegration,\n showResource,\n };\n }\n\n componentWillReceiveProps(props) {\n if (\n props.search.searchBlockType !== undefined &&\n this.props.search.searchBlockType !== props.search.searchBlockType\n ) {\n this.setState({ searchType: props.search.searchBlockType });\n }\n }\n\n @autobind\n changeSearchType(searchType, e) {\n e.preventDefault();\n let { search, location, appStore } = this.props;\n let { globalConfig } = appStore;\n let { pathname } = location;\n if (searchType === \"resource\") {\n if (!pathname.includes(\"/resourceList\")) {\n if (globalConfig[\"jumper.common.resourcetabmode\"] === \"1\") {\n navigate(\"/resourceList\");\n } else if (search.searchBlockType === searchType || search.searchBlockType === undefined) {\n this.setState({ searchType: searchType });\n } else {\n let params = {};\n params.searchBlockType = searchType;\n navigate([\"/\", qs.stringify(params)].join(\"?\"));\n }\n } else {\n this.setState({ searchType: searchType });\n }\n } else {\n if (pathname === \"/\") {\n if (search.searchBlockType === searchType || search.searchBlockType === undefined) {\n this.setState({ searchType: searchType });\n } else {\n let params = {};\n params.searchBlockType = searchType;\n navigate([\"/\", qs.stringify(params)].join(\"?\"));\n }\n } else if (pathname.includes(\"/searchResult\")) {\n if (searchType !== search.searchBlockType) {\n let params = {};\n params.searchBlockType = searchType;\n navigate([\"/\", qs.stringify(params)].join(\"?\"));\n }\n } else {\n let params = {};\n params.searchBlockType = searchType;\n navigate([\"/\", qs.stringify(params)].join(\"?\"));\n }\n }\n }\n\n @autobind\n searchComp() {\n let { appStore } = this.props;\n let { searchBlock } = appStore;\n switch (this.state.searchType) {\n case \"integration\":\n return ;\n case \"resource\":\n return ;\n default:\n if (searchBlock && searchBlock.searchTypeList) {\n for (let i = 0; i < searchBlock.searchTypeList.length; i++) {\n let searchTypeItem = searchBlock.searchTypeList[i];\n if (\n searchTypeItem.type === this.state.searchType &&\n searchTypeItem.mode === \"integration\"\n ) {\n return (\n \n );\n }\n }\n }\n }\n }\n\n render() {\n let { appStore } = this.props;\n let { showHold, showIntegration, showResource } = this.state;\n let { searchBlock } = appStore;\n return (\n <>\n
\n \"搜尋框背景\"\n
\n
\n
\n
\n
    \n {searchBlock &&\n searchBlock.searchTypeList &&\n searchBlock.searchTypeList.map((searchTypeItem) => {\n if (searchTypeItem.type === \"integration\") {\n return (\n <>\n {showIntegration && (\n \n {\n if (e.key === \"Enter\") {\n this.changeSearchType(\"integration\", e);\n }\n }}>\n {this.props.t(\n \"jumperrwd.common.fulltextSearch\"\n )}\n \n \n )}\n \n );\n } else if (searchTypeItem.type === \"resource\") {\n return (\n <>\n {showResource && (\n \n {\n if (e.key === \"Enter\") {\n this.changeSearchType(\"resource\", e);\n }\n }}>\n {this.props.t(\"jumper.common.dbjournal\")}\n \n \n )}\n \n );\n } else if (searchTypeItem.type !== \"hold\" || showHold) {\n return (\n <>\n \n {\n if (e.key === \"Enter\") {\n this.changeSearchType(\n searchTypeItem.type,\n e\n );\n }\n }}>\n {searchTypeItem.message\n ? this.props.t(searchTypeItem.message)\n : searchTypeItem.name}\n \n \n \n );\n }\n return \"\";\n })}\n
\n
\n {this.searchComp()}\n
\n
\n
\n
\n \n );\n }\n}\n\nSearchBlock.defaultProps = {};\n\nSearchBlock.propTypes = {\n t: PropTypes.func,\n};\n\nexport default SearchBlock;\n"],"names":["getResourceAutoComplete","gql","getResourceRelatedField","setResourceSearchHistory","getResourceSearchHistory","PromptWord","render","this","props","q","resourceType","trim","client","query","variables","form","inputText","loading","data","error","list","length","className","map","word","key","tabIndex","onClick","autoComplete","bind","onKeyDown","e","React","propTypes","PropTypes","RecentSearch","state","auth","readerStore","refetch","componentWillReceiveProps","setState","t","fetchPolicy","rshItemList","rshItem","searchType","searchCondition","searchTime","searchValue","value","searchField","op","toUpperCase","setRecentSearch","ResourceSearchComp","withI18next","inject","withLocation","observer","defaultCondition","id","opFlag","del","searchInput","condition","search","params","mode","searchTarget","advanceResourceType","ispjournals","appStore","globalConfig","isEbooks","splice","forEach","input","push","keywordCanempty","recentSearchesDisplay","showPJournal","showEbook","seq","relatedField","displayFixed","scrolldown_fix","searchInputFloat","componentDidMount","then","res","undefined","current","val","window","addEventListener","scrollTop","componentWillUnmount","removeEventListener","pageYOffset","handleSearchInputChange","text","preventDefault","handleResourceType","target","handleAdvanceResourceType","handleAdvanceChange","item","name","addCondition","setCondition","delCondition","getResource","items","onSubmit","pageType","sTag","mutation","navigate","qs","join","alert","onFloatSubmit","scrollTo","onAdvanceSubmit","searchAPI","changeSearchType","type","submitKeyword","keyword","searchForm","dispatchEvent","Event","searchBlock","style","display","title","onChange","KeyboardInput","ref","placeholder","c","onFocus","onBlur","setTimeout","Link","href","keywordTypeList","keywordTypeItem","keywordList","dbFieldList","dbField","journalFieldList","journalField","nameField","autobind","defaultProps","CustomIntegrationSearchComp","toggleSearchMode","addContition","conditions","maxCondition","centralized","decentralized","field","index","location","db","searchTypeItem","hyintID","split","searchBlockType","operator","handlerSearchInputChange","persist","isSimple","showAdd","hintMessage","formLineClass","isFirst","SearchBlock","showHold","showIntegration","showResource","tabbar","pathname","includes","searchComp","IntegrationSearchComp","searchTypeList","i","src","alt","message"],"sourceRoot":""}