@abi-software/flatmapvuer 0.2.4-dynamic-1 → 0.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack://flatmapvuer/webpack/universalModuleDefinition","webpack://flatmapvuer/webpack/bootstrap","webpack://flatmapvuer/external \"element-ui/lib/checkbox-group\"","webpack://flatmapvuer/external \"core-js/modules/es.string.split.js\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/checkbox-group.css\"","webpack://flatmapvuer/external \"element-ui/lib/select\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/select.css\"","webpack://flatmapvuer/./src/components/MultiFlatmapVuer.vue?2fbd","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/radio-group.css\"","webpack://flatmapvuer/external \"core-js/modules/web.dom-collections.for-each.js\"","webpack://flatmapvuer/external \"core-js/modules/web.dom-collections.iterator.js\"","webpack://flatmapvuer/external \"element-ui/lib/container\"","webpack://flatmapvuer/external \"core-js/modules/es.string.search.js\"","webpack://flatmapvuer/external \"element-ui/lib/main\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/link.css\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/button.css\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/radio.css\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/loading.css\"","webpack://flatmapvuer/external \"element-ui/lib/header\"","webpack://flatmapvuer/external \"core-js/modules/es.symbol.iterator.js\"","webpack://flatmapvuer/external \"core-js/modules/es.regexp.to-string.js\"","webpack://flatmapvuer/./src/components/PubmedViewer.vue?d298","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/carousel.css\"","webpack://flatmapvuer/external \"@abi-software/svg-sprite\"","webpack://flatmapvuer/external \"core-js/modules/es.array.from.js\"","webpack://flatmapvuer/external \"core-js/modules/es.array.map.js\"","webpack://flatmapvuer/external \"core-js/modules/es.symbol.description.js\"","webpack://flatmapvuer/external \"@abi-software/flatmap-viewer\"","webpack://flatmapvuer/external \"core-js/modules/es.array.iterator.js\"","webpack://flatmapvuer/./src/components/FlatmapVuer.vue?34a3","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/header.css\"","webpack://flatmapvuer/external \"element-ui/lib/radio\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/checkbox.css\"","webpack://flatmapvuer/external \"element-ui/lib/button\"","webpack://flatmapvuer/external \"core-js/modules/es.string.replace.js\"","webpack://flatmapvuer/external \"element-ui/lib/locale/lang/en\"","webpack://flatmapvuer/external \"element-ui/lib/row\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/col.css\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/main.css\"","webpack://flatmapvuer/external \"element-ui/lib/link\"","webpack://flatmapvuer/external \"element-ui/lib/locale\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/option.css\"","webpack://flatmapvuer/external \"core-js/modules/es.set.js\"","webpack://flatmapvuer/external \"core-js/modules/es.array.includes.js\"","webpack://flatmapvuer/./src/components/MultiFlatmapVuer.vue?f438","webpack://flatmapvuer/external \"vue\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/icon.css\"","webpack://flatmapvuer/external \"element-ui/lib/popover\"","webpack://flatmapvuer/external \"core-js/modules/es.object.to-string.js\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/base.css\"","webpack://flatmapvuer/external \"core-js/modules/es.symbol.js\"","webpack://flatmapvuer/./src/components/FlatmapVuer.vue?eea6","webpack://flatmapvuer/external \"@soda/get-current-script\"","webpack://flatmapvuer/external \"core-js/modules/es.string.iterator.js\"","webpack://flatmapvuer/external \"element-ui/lib/carousel\"","webpack://flatmapvuer/external \"element-ui/lib/col\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/popover.css\"","webpack://flatmapvuer/external \"element-ui/lib/loading\"","webpack://flatmapvuer/external \"css-element-queries/src/ResizeSensor\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/container.css\"","webpack://flatmapvuer/external \"element-ui/lib/icon\"","webpack://flatmapvuer/external \"element-ui/lib/checkbox\"","webpack://flatmapvuer/external \"core-js/modules/web.url.js\"","webpack://flatmapvuer/./src/components/Tooltip.vue?c9a1","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/carousel-item.css\"","webpack://flatmapvuer/external \"element-ui/lib/option\"","webpack://flatmapvuer/external \"element-ui/lib/carousel-item\"","webpack://flatmapvuer/./src/components/Tooltip.vue?d570","webpack://flatmapvuer/external \"core-js/modules/es.regexp.exec.js\"","webpack://flatmapvuer/external \"core-js/modules/es.function.name.js\"","webpack://flatmapvuer/external \"core-js/modules/es.array.slice.js\"","webpack://flatmapvuer/external \"core-js/modules/es.object.keys.js\"","webpack://flatmapvuer/external \"core-js/modules/es.promise.js\"","webpack://flatmapvuer/./src/components/PubmedViewer.vue?a745","webpack://flatmapvuer/external \"core-js/modules/es.number.constructor.js\"","webpack://flatmapvuer/./node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js","webpack://flatmapvuer/./src/components/FlatmapVuer.vue?5711","webpack://flatmapvuer/./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack://flatmapvuer/./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack://flatmapvuer/./node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js","webpack://flatmapvuer/./src/components/Tooltip.vue?e9e4","webpack://flatmapvuer/./src/components/PubmedViewer.vue?16b9","webpack://flatmapvuer/./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","webpack://flatmapvuer/./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","webpack://flatmapvuer/./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","webpack://flatmapvuer/./node_modules/@babel/runtime/helpers/esm/slicedToArray.js","webpack://flatmapvuer/src/components/PubmedViewer.vue","webpack://flatmapvuer/./src/components/PubmedViewer.vue?8f41","webpack://flatmapvuer/./node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack://flatmapvuer/./src/components/PubmedViewer.vue","webpack://flatmapvuer/src/components/Tooltip.vue","webpack://flatmapvuer/./src/components/Tooltip.vue?0f87","webpack://flatmapvuer/./src/components/Tooltip.vue","webpack://flatmapvuer/./src/icons/flatmap-marker.js","webpack://flatmapvuer/src/components/FlatmapVuer.vue","webpack://flatmapvuer/./src/components/FlatmapVuer.vue?f442","webpack://flatmapvuer/./src/components/FlatmapVuer.vue","webpack://flatmapvuer/./src/components/MultiFlatmapVuer.vue?6e01","webpack://flatmapvuer/src/components/MultiFlatmapVuer.vue","webpack://flatmapvuer/./src/components/MultiFlatmapVuer.vue?6257","webpack://flatmapvuer/./src/components/MultiFlatmapVuer.vue","webpack://flatmapvuer/./src/components/index.js","webpack://flatmapvuer/./node_modules/@vue/cli-service/lib/commands/build/entry-lib-no-default.js","webpack://flatmapvuer/external \"core-js/modules/es.string.includes.js\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/row.css\"","webpack://flatmapvuer/external \"element-ui/lib/radio-group\""],"names":["_arrayLikeToArray","arr","len","length","i","arr2","Array","_unsupportedIterableToArray","o","minLen","arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","from","test","_createForOfIteratorHelper","allowArrayLike","it","Symbol","iterator","isArray","unsupportedIterableToArray","F","s","done","value","e","_e","f","TypeError","normalCompletion","didErr","err","step","next","_e2","_arrayWithHoles","_iterableToArrayLimit","_i","_arr","_n","_d","_s","push","_nonIterableRest","_slicedToArray","arrayWithHoles","iterableToArrayLimit","nonIterableRest"],"mappings":"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fA;AAgBA,aAhBA,qBAgBA,kBAhBA,EAgBA;AACA;AACA;AACA,KAnBA;AAoBA;AAAA;;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AACA,sBADA;AAEA;AACA;AADA,SAFA;AAKA;AALA,SAOA,IAPA,CAOA;AAAA;AAAA,OAPA,EAQA,IARA,CAQA;AACA;AACA;AACA;AACA;;AACA;AACA;AAAA;AAAA;AAAA;;AACA;AAAA;AAAA;AAAA;AAAA;AAEA,WAJA;AAKA,SAPA;;AAQA;AAAA;AAAA;AACA,OApBA,EAqBA,KArBA,CAqBA;AACA;AACA,OAvBA;AAwBA,KAjDA;AAkDA;AACA;AACA;AACA;AACA;AACA;AAvDA;AAjCA,G;;ACtCsU,CAAgB,wHAAG,EAAC,C;;;;;ACA1V;;AAEA;AACA;AACA;;AAEe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;ACjGuG;AACvC;AACL;AACsC;;;AAGjG;AAC0F;AAC1F,gBAAgB,kBAAU;AAC1B,EAAE,+CAAM;AACR,EAAE,4DAAM;AACR,EAAE,qEAAe;AACjB;AACA;AACA;AACA;;AAEA;;AAEe,kE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACmBf;AACA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;;AAEA;AACA;AAAA;AAAA;AACA,CAFA;;AAIA;AACA;AAAA;AAAA,GADA;AAEA,iBAFA;AAGA;AACA;AACA,mBADA;AAEA;AAFA,KADA;AAKA;AACA,kBADA;AAEA;AAFA,KALA;;AASA;AACA;AACA;AACA;AACA,kBADA;AAEA;AAFA;AAZA,GAHA;AAoBA;AACA;AACA,8BADA;AAEA,yBAFA;AAGA;AAHA;AAKA,GA1BA;AA2BA;AACA;AACA;AACA,KAHA;AAIA;AACA;AACA,KANA;AAOA;AACA;AACA,KATA;AAUA;AACA;AACA,KAZA;AAaA;AACA;AACA;AAfA;AA3BA,G;;AC9DiU,CAAgB,8GAAG,EAAC,C;;;;;ACAnP;AACvC;AACL;AACsC;;;AAG5F;AAC0F;AAC1F,IAAI,iBAAS,GAAG,kBAAU;AAC1B,EAAE,0CAAM;AACR,EAAE,uDAAM;AACR,EAAE,gEAAe;AACjB;AACA;AACA;AACA;;AAEA;;AAEe,6DAAS,Q;;;;;ACnBT,2hEAAf,E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC6NA;AACA;AACA;AACA;AAUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;;AAEA;AACA;AACA;AACA,GAFA;AAGA,CAJA;;AAMA;AACA,qBADA;AAEA;AACA,yCADA;AAEA,uDAFA;AAGA;AAHA,GAFA;AAOA;AACA;AACA;AACA,GAVA;AAWA;AACA;AACA;;AACA;AACA;AACA;AACA,KANA;AAOA;AACA;AACA,KATA;;AAUA;AACA;AACA;AACA;AACA;;AACA;AACA;AAAA;AAAA;AAAA;AACA;AACA,KAlBA;;AAmBA;AACA;AACA;AACA;AACA;;AACA;AACA;AAAA;AAAA;AAAA;AACA;AACA,KA3BA;;AA4BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA,KAvCA;;AAwCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAhDA;;AAiDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAzDA;AA0DA;AACA;AACA;AACA;AACA,KA9DA;AA+DA;AACA;AACA;AACA,6BACA,uDADA;AAEA,KApEA;AAqEA,wBArEA,gCAqEA,GArEA,EAqEA;AACA;AAAA;AAAA;AACA;;AACA;AACA;AACA;AACA,KA3EA;AA4EA;AAAA;;AACA;AACA;AACA;AACA;;AAHA;AAAA;AAAA;;AAIA;AACA,kCADA;AAEA,4BAFA;AAGA,4BAHA;AAIA,sBAJA;AAKA,0BALA;AAMA,wBANA;AAOA;AAPA,UAJA,CAaA;;AACA,kDACA;;AACA;AACA,OAjBA;AAkBA,KA/FA;AAgGA;AACA;AACA,UACA,6BACA,0CAFA,EAGA;AACA,8BACA,gDADA,EAEA,sBAFA,EAGA;AAAA;AAAA,SAHA;AAKA;AACA;AACA,KA7GA;AA8GA;AACA;AACA;AACA;AACA,6EACA,OADA;AAEA;;AACA;AACA,yEACA,OADA;AAEA,OAHA;AAIA,KAzHA;AA0HA;AACA;AACA,KA5HA;AA6HA;AACA;AACA;AACA,wBADA;AAEA,6BAFA;AAGA,wBAHA;AAIA,+BAJA;AAKA;AALA;AAQA;AACA,kCAXA,CAaA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCADA;AAEA,oCAFA;AAGA,2CAHA;AAIA,iCAJA;AAKA;AALA;AAOA;AACA,OA9BA,CA+BA;;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BADA;AAEA,gCAFA;AAGA,qBAHA;AAIA;AAJA;AAMA;;AAEA;AACA;AACA,OAFA,MAEA;AACA;AACA;AACA,KAhLA;AAiLA;AACA;AACA;;AACA;AACA;AACA;AACA,SAFA,MAEA;AACA;AAAA;AAAA;AACA;;AACA;AACA;AACA,KA5LA;AA6LA;AACA;AACA;AACA;AACA,KAjMA;AAkMA;AACA;AACA;AACA;AACA;AACA,SAFA;AAGA;AACA,OANA,MAMA;AACA;AACA;AACA;AACA,SAFA;AAGA;AACA;AACA,KAhNA;AAiNA;AAAA;;AACA;AACA;AACA;AACA,SAFA,EAEA,GAFA;AAGA;AACA,KAvNA;AAwNA;AACA;AACA;AACA;AACA;AACA,KA7NA;AA8NA;AACA;AACA;AACA;AACA;AACA,uBADA;AAEA;AAFA;AAIA;AACA,KAvOA;AAwOA;AACA,eACA,gBADA,CACA,8BADA,EAEA,OAFA,CAEA;AACA;AACA,OAJA;AAKA,KA9OA;AA+OA;AACA;;AACA;AACA;;AADA,mDAEA,oBAFA;AAAA;;AAAA;AAEA;AAAA;AACA;AACA;AAJA;AAAA;AAAA;AAAA;AAAA;;AAKA;AACA;AACA,KAxPA;AAyPA;AACA;AACA;AACA,2BADA;AAEA;AAFA;AAIA;AACA;;AACA;AACA,KAlQA;AAmQA;AACA;AACA;AACA,yCACA;AACA;AACA;AACA,SALA,MAKA;AACA;AACA;AACA;AACA,KA9QA;AA+QA;AAAA;;AACA;AACA;AACA;;AACA;AACA;AAAA;AAAA;AACA;;AACA;AACA;AACA,+CACA,KADA,EAEA,kBAFA,EAGA,oBAHA,EAIA;AACA;AACA;AACA;AACA,uCAJA;AAKA,kCALA;AAMA,6BANA;AAOA,qCAPA;AAQA,iCARA;AASA;AATA,SAJA;AAgBA;AACA;AACA;AACA,2CACA,oBADA,EAEA,wBAFA;;AAIA;;AACA;;AACA;;AACA;;AACA;AACA,uCACA,gDADA,KAEA,6BACA;AACA,SAhBA;AAiBA,OAzCA,MAyCA;AACA;AACA;AACA,KA5TA;;AA6TA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAFA,MAEA;AACA;AACA,sEACA,6CADA,KAEA;AACA;AACA;AACA;AA3UA,GAXA;AAwVA;AACA,iBADA;AAEA;AACA,mBADA;AAEA;AAFA,KAFA;AAMA;AACA,kBADA;AAEA;AAFA,KANA;AAUA;AACA,mBADA;AAEA;AAFA,KAVA;AAcA;AACA,mBADA;AAEA;AAFA,KAdA;AAkBA;AACA,mBADA;AAEA;AAFA,KAlBA;AAsBA;AACA,mBADA;AAEA;AAFA,KAtBA;AA0BA;AACA,mBADA;AAEA;AAFA,KA1BA;AA8BA;AACA,mBADA;AAEA;AAFA,KA9BA;AAkCA;AACA,mBADA;AAEA;AAFA,KAlCA;AAsCA;AACA,kBADA;AAEA;AAFA,KAtCA;;AA0CA;AACA;AACA;AACA;AACA,kBADA;AAEA;AAFA,KA7CA;;AAiDA;AACA;AACA;AACA;AACA,kBADA;AAEA;AAFA;AApDA,GAxVA;AAiZA;AACA;AACA,sBADA;AAEA,kBAFA;AAGA,4BAHA;AAIA,oBAJA;AAKA,0BACA;AAAA;AAAA,OADA,EAEA;AAAA;AAAA,OAFA,EAGA;AAAA;AAAA,OAHA,EAIA;AAAA;AAAA,OAJA,EAKA;AAAA;AAAA,OALA,EAMA;AAAA;AAAA,OANA,EAOA;AAAA;AAAA,OAPA,CALA;AAcA,mBAdA;AAeA,gCAfA;AAgBA,6DAhBA;AAiBA,oBAjBA;AAkBA,mCAlBA;AAmBA,sBAnBA;AAoBA,wBApBA;AAqBA,uBArBA;AAsBA;AAtBA;AAwBA,GA1aA;AA2aA;AACA;AACA;AACA,KAHA;AAIA;AACA;AACA,KANA;AAOA;AACA;AACA;AACA,OAHA;AAIA,qBAJA;AAKA;AALA;AAPA,GA3aA;AA0bA;AACA;;AACA;AACA;AACA;AA9bA,G;;AC7PqU,CAAgB,sHAAG,EAAC,C;;;;;ACAnP;AACvC;AACL;AACsC;;;AAGhG;AAC0F;AAC1F,IAAI,qBAAS,GAAG,kBAAU;AAC1B,EAAE,8CAAM;AACR,EAAE,MAAM;AACR,EAAE,eAAe;AACjB;AACA;AACA;AACA;;AAEA;;AAEe,qEAAS,Q;;ACnBxB,IAAI,gEAAM,gBAAgB,aAAa,0BAA0B,wBAAwB,iBAAiB,8BAA8B,YAAY,aAAa,sCAAsC,YAAY,mCAAmC,yCAAyC,2BAA2B,sIAAsI,QAAQ,8CAA8C,iBAAiB,wBAAwB,kBAAkB,aAAa,qEAAqE,kCAAkC,wHAAwH,KAAK,4BAA4B,QAAQ,mDAAmD,sBAAsB,6BAA6B,6CAA6C,uBAAuB,eAAe,yBAAyB,4BAA4B,OAAO,UAAU,UAAU,qBAAqB,iBAAiB,OAAO,WAAW,gCAAgC,qDAAqD,yBAAyB,aAAa,4FAA4F,6CAA6C,gBAAgB,QAAQ,mWAAmW,KAAK,kEAAkE,EAAE;AAC/0D,IAAI,yEAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACoDnB;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA,0BADA;AAEA;AACA;AADA,GAFA;AAKA;AACA;AACA,GAPA;AAQA;AACA;AAAA;;AACA;AACA,gCACA,IADA,CACA;AAAA;AAAA,SADA,EAEA,IAFA,CAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAPA;;AAQA;AACA;AACA;AACA,aAFA,MAEA;AACA;AACA;;AACA;AACA,oDACA;AACA,aAHA;AAIA;;AACA;AACA,SAxBA;AAyBA,OA1BA;AA2BA,KA7BA;AA8BA;AACA;AACA,KAhCA;AAiCA;AACA;AACA,KAnCA;AAoCA;AACA;;AACA;AACA;AACA;;AACA;AACA,KA1CA;AA2CA;AACA;AACA,KA7CA;AA8CA;AACA;AACA;AACA,KAjDA;AAkDA;AACA;AACA;AACA,KArDA;AAsDA;AACA,yCACA;AACA;AACA;AACA,KA3DA;;AA4DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCADA;AAEA;AAFA;AAIA;AACA;AACA;AACA,KA1EA;;AA2EA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;;AACA;AACA;AACA;AACA;;AACA;AACA;AACA;AACA;;AACA;AACA,eAHA;AAIA;AACA,WATA,MASA;AACA;;AACA;AACA;AACA,SAdA;AAeA;AACA,KAnGA;AAoGA;AACA;AACA;AAtGA,GARA;AAgHA;AACA;AACA,mBADA;AAEA;AAFA,KADA;AAKA;AACA,mBADA;AAEA;AAFA,KALA;AASA;AACA,mBADA;AAEA;AAFA,KATA;AAaA;AACA,mBADA;AAEA;AAFA,KAbA;;AAiBA;AACA;AACA;AACA;AACA;AACA,kBADA;AAEA;AAFA,KArBA;AAyBA;AACA,kBADA;AAEA;AAFA,KAzBA;AA6BA;AACA,mBADA;AAEA;AAFA,KA7BA;AAiCA;AACA,mBADA;AAEA;AAFA,KAjCA;AAqCA;AACA,mBADA;AAEA;AAFA,KArCA;AAyCA;AACA,kBADA;AAEA;AAFA,KAzCA;AA6CA,wBA7CA;;AA8CA;AACA;AACA;AACA;AACA,kBADA;AAEA;AAFA,KAjDA;;AAqDA;AACA;AACA;AACA;AACA,kBADA;AAEA;AAFA;AAxDA,GAhHA;AA6KA;AACA;AACA,8BADA;AAEA,yBAFA;AAGA;AAHA;AAKA,GAnLA;AAoLA;AACA;AACA;AACA;AACA,OAHA;AAIA,qBAJA;AAKA;AALA;AADA;AApLA,G;;ACnE0U,CAAgB,gIAAG,EAAC,C;;;;;ACAnP;AACvC;AACL;AACsC;;;AAGrG;AAC0F;AAC1F,IAAI,0BAAS,GAAG,kBAAU;AAC1B,EAAE,mDAAM;AACR,EAAE,gEAAM;AACR,EAAE,yEAAe;AACjB;AACA;AACA;AACA;;AAEA;;AAEe,+EAAS,Q;;ACnBxB;AACA;AACA;AACA;;;ACHwB;AACF;;;;;;;;ACDtB,kE;;;;;;;ACAA,+D;;;;;;;ACAA,uD","file":"flatmapvuer.umd.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"flatmapvuer\"] = factory();\n\telse\n\t\troot[\"flatmapvuer\"] = factory();\n})((typeof self !== 'undefined' ? self : this), function() {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"fae3\");\n","module.exports = require(\"element-ui/lib/checkbox-group\");","module.exports = require(\"core-js/modules/es.string.split.js\");","module.exports = require(\"element-ui/lib/theme-chalk/checkbox-group.css\");","module.exports = require(\"element-ui/lib/select\");","module.exports = require(\"element-ui/lib/theme-chalk/select.css\");","// extracted by mini-css-extract-plugin","module.exports = require(\"element-ui/lib/theme-chalk/radio-group.css\");","module.exports = require(\"core-js/modules/web.dom-collections.for-each.js\");","module.exports = require(\"core-js/modules/web.dom-collections.iterator.js\");","module.exports = require(\"element-ui/lib/container\");","module.exports = require(\"core-js/modules/es.string.search.js\");","module.exports = require(\"element-ui/lib/main\");","module.exports = require(\"element-ui/lib/theme-chalk/link.css\");","module.exports = require(\"element-ui/lib/theme-chalk/button.css\");","module.exports = require(\"element-ui/lib/theme-chalk/radio.css\");","module.exports = require(\"element-ui/lib/theme-chalk/loading.css\");","module.exports = require(\"element-ui/lib/header\");","module.exports = require(\"core-js/modules/es.symbol.iterator.js\");","module.exports = require(\"core-js/modules/es.regexp.to-string.js\");","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PubmedViewer.vue?vue&type=style&index=0&id=06d0e387&scoped=true&lang=scss&\"","module.exports = require(\"element-ui/lib/theme-chalk/carousel.css\");","module.exports = require(\"@abi-software/svg-sprite\");","module.exports = require(\"core-js/modules/es.array.from.js\");","module.exports = require(\"core-js/modules/es.array.map.js\");","module.exports = require(\"core-js/modules/es.symbol.description.js\");","module.exports = require(\"@abi-software/flatmap-viewer\");","module.exports = require(\"core-js/modules/es.array.iterator.js\");","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FlatmapVuer.vue?vue&type=style&index=0&id=f7035e5c&scoped=true&lang=scss&\"","module.exports = require(\"element-ui/lib/theme-chalk/header.css\");","module.exports = require(\"element-ui/lib/radio\");","module.exports = require(\"element-ui/lib/theme-chalk/checkbox.css\");","module.exports = require(\"element-ui/lib/button\");","module.exports = require(\"core-js/modules/es.string.replace.js\");","module.exports = require(\"element-ui/lib/locale/lang/en\");","module.exports = require(\"element-ui/lib/row\");","module.exports = require(\"element-ui/lib/theme-chalk/col.css\");","module.exports = require(\"element-ui/lib/theme-chalk/main.css\");","module.exports = require(\"element-ui/lib/link\");","module.exports = require(\"element-ui/lib/locale\");","module.exports = require(\"element-ui/lib/theme-chalk/option.css\");","module.exports = require(\"core-js/modules/es.set.js\");","module.exports = require(\"core-js/modules/es.array.includes.js\");","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MultiFlatmapVuer.vue?vue&type=style&index=0&id=45aec25f&scoped=true&lang=scss&\"","module.exports = require(\"vue\");","module.exports = require(\"element-ui/lib/theme-chalk/icon.css\");","module.exports = require(\"element-ui/lib/popover\");","module.exports = require(\"core-js/modules/es.object.to-string.js\");","module.exports = require(\"element-ui/lib/theme-chalk/base.css\");","module.exports = require(\"core-js/modules/es.symbol.js\");","// extracted by mini-css-extract-plugin","module.exports = require(\"@soda/get-current-script\");","module.exports = require(\"core-js/modules/es.string.iterator.js\");","module.exports = require(\"element-ui/lib/carousel\");","module.exports = require(\"element-ui/lib/col\");","module.exports = require(\"element-ui/lib/theme-chalk/popover.css\");","module.exports = require(\"element-ui/lib/loading\");","module.exports = require(\"css-element-queries/src/ResizeSensor\");","module.exports = require(\"element-ui/lib/theme-chalk/container.css\");","module.exports = require(\"element-ui/lib/icon\");","module.exports = require(\"element-ui/lib/checkbox\");","module.exports = require(\"core-js/modules/web.url.js\");","// extracted by mini-css-extract-plugin","module.exports = require(\"element-ui/lib/theme-chalk/carousel-item.css\");","module.exports = require(\"element-ui/lib/option\");","module.exports = require(\"element-ui/lib/carousel-item\");","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tooltip.vue?vue&type=style&index=0&id=4802b201&scoped=true&lang=scss&\"","module.exports = require(\"core-js/modules/es.regexp.exec.js\");","module.exports = require(\"core-js/modules/es.function.name.js\");","module.exports = require(\"core-js/modules/es.array.slice.js\");","module.exports = require(\"core-js/modules/es.object.keys.js\");","module.exports = require(\"core-js/modules/es.promise.js\");","// extracted by mini-css-extract-plugin","module.exports = require(\"core-js/modules/es.number.constructor.js\");","// This file is imported into lib/wc client bundles.\n\nif (typeof window !== 'undefined') {\n var currentScript = window.document.currentScript\n if (process.env.NEED_CURRENTSCRIPT_POLYFILL) {\n var getCurrentScript = require('@soda/get-current-script')\n currentScript = getCurrentScript()\n\n // for backward compatibility, because previously we directly included the polyfill\n if (!('currentScript' in document)) {\n Object.defineProperty(document, 'currentScript', { get: getCurrentScript })\n }\n }\n\n var src = currentScript && currentScript.src.match(/(.+\\/)[^/]+\\.js(\\?.*)?$/)\n if (src) {\n __webpack_public_path__ = src[1] // eslint-disable-line\n }\n}\n\n// Indicate to webpack that this file can be concatenated\nexport default null\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.loading),expression:\"loading\"}],staticClass:\"flatmap-container\",attrs:{\"element-loading-text\":\"Loading...\",\"element-loading-spinner\":\"el-icon-loading\",\"element-loading-background\":\"rgba(0, 0, 0, 0.3)\"}},[_c('map-svg-sprite-color'),_c('div',{staticStyle:{\"height\":\"100%\",\"width\":\"100%\",\"position\":\"relative\",\"overflow-y\":\"none\"}},[_c('div',{ref:\"display\",staticStyle:{\"height\":\"100%\",\"width\":\"100%\"}}),(_vm.displayWarning)?_c('el-popover',{ref:\"warningPopover\",attrs:{\"content\":_vm.warningMessage,\"placement\":\"right\",\"appendToBody\":false,\"trigger\":\"manual\",\"popper-class\":\"warning-popper flatmap-popper right-popper\"},model:{value:(_vm.hoverVisibilities[6].value),callback:function ($$v) {_vm.$set(_vm.hoverVisibilities[6], \"value\", $$v)},expression:\"hoverVisibilities[6].value\"}}):_vm._e(),(_vm.displayWarning)?_c('i',{directives:[{name:\"popover\",rawName:\"v-popover:warningPopover\",arg:\"warningPopover\"}],staticClass:\"el-icon-warning warning-icon\",on:{\"mouseover\":function($event){return _vm.showToolitip(6)},\"mouseout\":function($event){return _vm.hideToolitip(6)}}},[_c('span',{staticClass:\"warning-text\"},[_vm._v(\"Beta\")])]):_vm._e(),_c('div',{staticClass:\"bottom-right-control\"},[_c('el-popover',{attrs:{\"content\":\"Zoom in\",\"placement\":\"left\",\"appendToBody\":false,\"trigger\":\"manual\",\"popper-class\":\"flatmap-popper left-popper\"},model:{value:(_vm.hoverVisibilities[0].value),callback:function ($$v) {_vm.$set(_vm.hoverVisibilities[0], \"value\", $$v)},expression:\"hoverVisibilities[0].value\"}},[_c('map-svg-icon',{staticClass:\"icon-button zoomIn\",attrs:{\"slot\":\"reference\",\"icon\":\"zoomIn\"},nativeOn:{\"click\":function($event){return _vm.zoomIn()},\"mouseover\":function($event){return _vm.showToolitip(0)},\"mouseout\":function($event){return _vm.hideToolitip(0)}},slot:\"reference\"})],1),_c('el-popover',{attrs:{\"content\":\"Zoom out\",\"placement\":\"top-end\",\"appendToBody\":false,\"trigger\":\"manual\",\"popper-class\":\"flatmap-popper popper-zoomout\"},model:{value:(_vm.hoverVisibilities[1].value),callback:function ($$v) {_vm.$set(_vm.hoverVisibilities[1], \"value\", $$v)},expression:\"hoverVisibilities[1].value\"}},[_c('map-svg-icon',{staticClass:\"icon-button zoomOut\",attrs:{\"slot\":\"reference\",\"icon\":\"zoomOut\"},nativeOn:{\"click\":function($event){return _vm.zoomOut()},\"mouseover\":function($event){return _vm.showToolitip(1)},\"mouseout\":function($event){return _vm.hideToolitip(1)}},slot:\"reference\"})],1),_c('el-popover',{attrs:{\"content\":\"Reset\",\"placement\":\"top\",\"appendToBody\":false,\"trigger\":\"manual\",\"popper-class\":\"flatmap-popper\"},model:{value:(_vm.hoverVisibilities[2].value),callback:function ($$v) {_vm.$set(_vm.hoverVisibilities[2], \"value\", $$v)},expression:\"hoverVisibilities[2].value\"}},[_c('map-svg-icon',{staticClass:\"icon-button resetView\",attrs:{\"slot\":\"reference\",\"icon\":\"resetZoom\"},nativeOn:{\"click\":function($event){return _vm.resetView()},\"mouseover\":function($event){return _vm.showToolitip(2)},\"mouseout\":function($event){return _vm.hideToolitip(2)}},slot:\"reference\"})],1)],1),_c('el-popover',{ref:\"checkBoxPopover\",attrs:{\"content\":\"Change pathway visibility\",\"placement\":\"right\",\"appendToBody\":false,\"trigger\":\"manual\",\"popper-class\":\"flatmap-popper right-popper\"},model:{value:(_vm.hoverVisibilities[4].value),callback:function ($$v) {_vm.$set(_vm.hoverVisibilities[4], \"value\", $$v)},expression:\"hoverVisibilities[4].value\"}}),_c('div',{staticClass:\"pathway-location\",class:{ open: _vm.drawerOpen, close: !_vm.drawerOpen }},[(_vm.pathways.length > 0 && _vm.pathControls)?_c('div',{directives:[{name:\"popover\",rawName:\"v-popover:checkBoxPopover\",arg:\"checkBoxPopover\"}],staticClass:\"pathway-container\"},[_c('el-popover',{ref:\"markerPopover\",attrs:{\"content\":\"Find these markers for data\",\"placement\":\"right\",\"appendToBody\":false,\"trigger\":\"manual\",\"popper-class\":\"flatmap-popper popper-bump-right right-popper\"},model:{value:(_vm.hoverVisibilities[5].value),callback:function ($$v) {_vm.$set(_vm.hoverVisibilities[5], \"value\", $$v)},expression:\"hoverVisibilities[5].value\"}}),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.hoverVisibilities[5].value),expression:\"hoverVisibilities[5].value\"},{name:\"popover\",rawName:\"v-popover:markerPopover\",arg:\"markerPopover\"}],staticClass:\"flatmap-marker-help\",domProps:{\"innerHTML\":_vm._s(_vm.flatmapMarker)}}),_c('el-row',[_c('el-col',{attrs:{\"span\":12}},[_c('div',{staticClass:\"pathways-display-text\"},[_vm._v(\"Pathways\")])]),_c('el-col',{attrs:{\"span\":12}},[_c('el-checkbox',{staticClass:\"all-checkbox\",attrs:{\"indeterminate\":_vm.isIndeterminate},on:{\"change\":_vm.handleCheckAllChange},model:{value:(_vm.checkAll),callback:function ($$v) {_vm.checkAll=$$v},expression:\"checkAll\"}},[_vm._v(\"Display all\")])],1)],1),_c('el-checkbox-group',{staticClass:\"checkbox-group\",attrs:{\"size\":\"small\"},on:{\"change\":_vm.handleCheckedItemsChange},model:{value:(_vm.checkedItems),callback:function ($$v) {_vm.checkedItems=$$v},expression:\"checkedItems\"}},[_c('div',{staticClass:\"checkbox-group-inner\"},_vm._l((_vm.pathways),function(item){return _c('el-row',{key:item.type,attrs:{\"label\":item.type}},[_c('div',{staticClass:\"checkbox-container\"},[_c('el-checkbox',{staticClass:\"my-checkbox\",attrs:{\"label\":item.type,\"checked\":true},on:{\"change\":function($event){return _vm.visibilityToggle()}}},[_c('div',{staticClass:\"path-visual\",class:item.type}),_vm._v(\" \"+_vm._s(item.label)+\" \")])],1)])}),1)])],1):_vm._e(),_c('div',{staticClass:\"drawer-button\",class:{ open: _vm.drawerOpen, close: !_vm.drawerOpen },on:{\"click\":_vm.toggleDrawer}},[_c('i',{staticClass:\"el-icon-arrow-left\"})])]),_c('el-popover',{ref:\"backgroundPopover\",attrs:{\"placement\":\"top-start\",\"width\":\"175\",\"appendToBody\":false,\"trigger\":\"click\",\"popper-class\":\"background-popper\"}},[_c('el-row',{staticClass:\"backgroundText\"},[_vm._v(\"Organs display\")]),_c('el-row',{staticClass:\"backgroundControl\"},[_c('el-radio-group',{staticClass:\"flatmap-radio\",on:{\"change\":_vm.setColour},model:{value:(_vm.colourRadio),callback:function ($$v) {_vm.colourRadio=$$v},expression:\"colourRadio\"}},[_c('el-radio',{attrs:{\"label\":true}},[_vm._v(\"Colour\")]),_c('el-radio',{attrs:{\"label\":false}},[_vm._v(\"Greyscale\")])],1)],1),_c('el-row',{staticClass:\"backgroundSpacer\"}),_c('el-row',{staticClass:\"backgroundText\"},[_vm._v(\"Outlines display\")]),_c('el-row',{staticClass:\"backgroundControl\"},[_c('el-radio-group',{staticClass:\"flatmap-radio\",on:{\"change\":_vm.setOutlines},model:{value:(_vm.outlinesRadio),callback:function ($$v) {_vm.outlinesRadio=$$v},expression:\"outlinesRadio\"}},[_c('el-radio',{attrs:{\"label\":true}},[_vm._v(\"Show\")]),_c('el-radio',{attrs:{\"label\":false}},[_vm._v(\"Hide\")])],1)],1),_c('el-row',{staticClass:\"backgroundSpacer\"}),_c('el-row',{staticClass:\"backgroundText\"},[_vm._v(\"Change background\")]),_c('el-row',{staticClass:\"backgroundControl\"},_vm._l((_vm.availableBackground),function(item){return _c('div',{key:item,class:['backgroundChoice', item, item == _vm.currentBackground ? 'active' :''],on:{\"click\":function($event){return _vm.backgroundChangeCallback(item)}}})}),0)],1),_c('el-popover',{attrs:{\"content\":\"Change background color\",\"placement\":\"right\",\"appendToBody\":false,\"trigger\":\"manual\",\"popper-class\":\"flatmap-popper right-popper\"},model:{value:(_vm.hoverVisibilities[3].value),callback:function ($$v) {_vm.$set(_vm.hoverVisibilities[3], \"value\", $$v)},expression:\"hoverVisibilities[3].value\"}},[_c('map-svg-icon',{directives:[{name:\"popover\",rawName:\"v-popover:backgroundPopover\",arg:\"backgroundPopover\"}],staticClass:\"icon-button background-colour\",class:{ open: _vm.drawerOpen, close: !_vm.drawerOpen },attrs:{\"slot\":\"reference\",\"icon\":\"changeBckgd\"},nativeOn:{\"mouseover\":function($event){return _vm.showToolitip(3)},\"mouseout\":function($event){return _vm.hideToolitip(3)}},slot:\"reference\"})],1),_c('Tooltip',{ref:\"tooltip\",staticClass:\"tooltip\",attrs:{\"content\":_vm.tooltipContent,\"flatmapAPI\":_vm.flatmapAPI},on:{\"resource-selected\":_vm.resourceSelected}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","import unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nexport default function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n\n if (!it) {\n if (Array.isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n\n var F = function F() {};\n\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e) {\n throw _e;\n },\n f: F\n };\n }\n\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e2) {\n didErr = true;\n err = _e2;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n}","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"tooltip-container\"},[(_vm.content)?_c('el-main',{staticClass:\"main\"},[(_vm.content.title)?_c('div',{staticClass:\"block\"},[_c('span',{staticClass:\"title\"},[_vm._v(_vm._s(_vm.titleCase(_vm.content.title)))])]):_c('div',{staticClass:\"block\"},[_c('span',{staticClass:\"title\"},[_vm._v(_vm._s(_vm.content.featureId))])]),(_vm.content.featureId)?_c('pubmed-viewer',{staticClass:\"block\",attrs:{\"flatmapAPI\":_vm.flatmapAPI,\"featureId\":_vm.content.featureId},on:{\"pubmedSearchUrl\":_vm.pubmedSearchUrlUpdate}}):_vm._e(),(_vm.content.components)?_c('div',{staticClass:\"block\"},[_c('div',{staticClass:\"attribute-title\"},[_vm._v(\"Components\")]),_c('span',{staticClass:\"attribute-content\"},[_vm._v(_vm._s(_vm.content.components))])]):_vm._e(),(_vm.content.start)?_c('div',{staticClass:\"block\"},[_c('div',{staticClass:\"attribute-title\"},[_vm._v(\"Origin\")]),_c('span',{staticClass:\"attribute-content\"},[_vm._v(_vm._s(_vm.content.start))])]):_vm._e(),(_vm.content.distribution)?_c('div',{staticClass:\"block\"},[_c('div',{staticClass:\"attribute-title\"},[_vm._v(\"Distribution\")]),_c('span',{staticClass:\"attribute-content\"},[_vm._v(_vm._s(_vm.content.distribution))])]):_vm._e(),_vm._l((_vm.content.actions),function(action){return _c('el-button',{key:action.title,staticClass:\"button\",attrs:{\"round\":\"\"},on:{\"click\":function($event){return _vm.resourceSelected(action)}}},[(action.title === 'Search for dataset' || action.title === 'View Dataset' )?_c('i',{staticClass:\"el-icon-coin\"}):_vm._e(),_vm._v(\" \"+_vm._s(action.title)+\" \")])}),(_vm.pubmedSearchUrl)?_c('el-button',{staticClass:\"button\",attrs:{\"icon\":\"el-icon-notebook-2\"},on:{\"click\":function($event){return _vm.openUrl(_vm.pubmedSearchUrl)}}},[_vm._v(\" Open publications in pubmed \")]):_vm._e()],2):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"pubmed-container\"},[_c('div',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.loading.response),expression:\"loading.response\"}],staticClass:\"block\"},[_c('div',{staticClass:\"attribute-title\"},[_vm._v(\"Pubmed Resources\")]),_c('br'),_c('el-carousel',{attrs:{\"autoplay\":false,\"indicator-position\":\"outside\",\"height\":\"250px\",\"width\":\"200px\"}},_vm._l((_vm.pubmeds),function(pub,i){return _c('el-carousel-item',{key:i},[_c('div',{staticClass:\"attribute-content\"},[_c('div',{domProps:{\"innerHTML\":_vm._s(pub.html)}}),_c('el-link',{staticClass:\"el-link\",attrs:{\"href\":pub.url,\"underline\":false,\"target\":\"_blank\"}},[_vm._v(_vm._s(pub.url))])],1)])}),1)],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n\n var _s, _e;\n\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","<template>\r\n <div class=\"pubmed-container\">\r\n <div v-loading=\"loading.response\" class=\"block\">\r\n <div class=\"attribute-title\">Pubmed Resources</div>\r\n <br/>\r\n <el-carousel \r\n :autoplay=\"false\" \r\n indicator-position=\"outside\"\r\n height=\"250px\" width=\"200px\"\r\n >\r\n <el-carousel-item v-for=\"(pub, i) in pubmeds\" :key=\"i\">\r\n <div class=\"attribute-content\">\r\n <div v-html=\"pub.html\"/>\r\n <el-link :href=\"pub.url\" :underline=\"false\" class=\"el-link\" target=\"_blank\">{{pub.url}}</el-link>\r\n </div>\r\n </el-carousel-item>\r\n </el-carousel>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n\r\n<script>\r\n/* eslint-disable no-alert, no-console */\r\nimport Vue from \"vue\";\r\nimport {\r\n Link,\r\n Carousel,\r\n CarouselItem\r\n} from \"element-ui\";\r\nimport lang from \"element-ui/lib/locale/lang/en\";\r\nimport locale from \"element-ui/lib/locale\";\r\nlocale.use(lang);\r\nVue.use(Link);\r\nVue.use(Carousel);\r\nVue.use(CarouselItem);\r\n\r\n\r\nexport default {\r\n name: \"Tooltip\",\r\n props: { \r\n featureId: {\r\n type: String,\r\n default: ''\r\n },\r\n /**\r\n * Specify the endpoint of the flatmap server.\r\n */\r\n flatmapAPI: {\r\n type: String,\r\n default: \"https://mapcore-demo.org/flatmaps/\"\r\n }\r\n },\r\n watch: {\r\n 'featureId': function (val){\r\n console.log('feature id watch triggered', val)\r\n this.flatmapQuery(val)\r\n }\r\n },\r\n computed: {\r\n },\r\n data: function() {\r\n return {\r\n pubmeds: [],\r\n pubmedIds: [],\r\n loading: {response: true, publications: true}\r\n };\r\n },\r\n mounted: function() {\r\n this.flatmapQuery(this.featureId)\r\n },\r\n methods: {\r\n stripPMIDPrefix: function (pubmedId){\r\n return pubmedId.split(':')[1]\r\n },\r\n titleFromPubmed: function (pubmedId){\r\n return new Promise((resolve) => {\r\n fetch(`https://api.ncbi.nlm.nih.gov/lit/ctxp/v1/pubmed/?format=citation&contenttype=json&id=${pubmedId}`)\r\n .then(response => response.json())\r\n .then(data => {\r\n resolve(data.apa.format)\r\n })\r\n .catch((error) => {\r\n console.error('Error:', error);\r\n });\r\n })\r\n },\r\n splitLink(bibliographyString){\r\n let split = bibliographyString.split('https')\r\n return [split[0], 'https' + split[1]]\r\n },\r\n flatmapQuery: function(identifier){\r\n this.pubmeds = []\r\n this.loading.response = true\r\n let endpoint = this.flatmapAPI + 'knowledge/query/';\r\n const data = { sql: 'select publication from publications where entity=?', \"params\": [identifier]};\r\n fetch(endpoint, {\r\n method: 'POST',\r\n headers: {\r\n 'Content-Type': 'application/json',\r\n },\r\n body: JSON.stringify(data),\r\n })\r\n .then(response => response.json())\r\n .then(data => {\r\n this.responseData = data\r\n this.loading.response = false\r\n data.values.forEach(identifier => {\r\n let ids = this.stripPMIDPrefix(identifier[0])\r\n this.titleFromPubmed(ids).then( bib=>{\r\n let [html, link] = this.splitLink(bib)\r\n this.pubmeds.push({identifier: identifier[0] , html: html, url: link})\r\n \r\n })\r\n });\r\n this.$emit('pubmedSearchUrl', this.pubmedSearchUrl(data.values.map(id=>this.stripPMIDPrefix(id[0]))))\r\n })\r\n .catch((error) => {\r\n console.error('Error:', error);\r\n });\r\n },\r\n pubmedSearchUrl: function(ids) {\r\n let url = 'https://pubmed.ncbi.nlm.nih.gov/?'\r\n let params = new URLSearchParams()\r\n params.append('term', ids)\r\n return url + params.toString()\r\n }\r\n }\r\n};\r\n</script>\r\n\r\n<style scoped lang=\"scss\">\r\n@import \"~element-ui/packages/theme-chalk/src/link\";\r\n@import \"~element-ui/packages/theme-chalk/src/carousel\";\r\n@import \"~element-ui/packages/theme-chalk/src/carousel-item\";\r\n\r\n.attribute-title{\r\n font-size: 16px;\r\n font-weight: 600;\r\n /* font-weight: bold; */\r\n text-transform: uppercase;\r\n}\r\n\r\n.attribute-content{\r\n font-size: 14px;\r\n font-weight: 400;\r\n}\r\n\r\n.el-link {\r\n color: $app-primary-color;\r\n text-decoration: none;\r\n word-wrap: break-word;\r\n &:hover, &:focus{\r\n color: $app-primary-color;\r\n text-decoration: underline;\r\n }\r\n}\r\n\r\n::v-deep .el-carousel__button {\r\n background-color: $app-primary-color; \r\n}\r\n\r\n.button {\r\n margin-left: 0px !important;\r\n margin-top: 0px !important;\r\n font-size: 14px !important;\r\n background-color: $app-primary-color;\r\n color: #fff;\r\n &:hover{\r\n color: #fff !important;\r\n background: #ac76c5 !important;\r\n border: 1px solid #ac76c5 !important;\r\n }\r\n &+.button {\r\n margin-top: 10px !important;\r\n background-color: $app-primary-color;\r\n color: #fff; \r\n }\r\n}\r\n\r\n</style>","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PubmedViewer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PubmedViewer.vue?vue&type=script&lang=js&\"","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nexport default function normalizeComponent (\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier, /* server only */\n shadowMode /* vue-cli only */\n) {\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () {\n injectStyles.call(\n this,\n (options.functional ? this.parent : this).$root.$options.shadowRoot\n )\n }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functional component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n","import { render, staticRenderFns } from \"./PubmedViewer.vue?vue&type=template&id=06d0e387&scoped=true&\"\nimport script from \"./PubmedViewer.vue?vue&type=script&lang=js&\"\nexport * from \"./PubmedViewer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./PubmedViewer.vue?vue&type=style&index=0&id=06d0e387&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"06d0e387\",\n null\n \n)\n\nexport default component.exports","<template>\r\n <div class=\"tooltip-container\">\r\n <el-main v-if=\"content\" class=\"main\">\r\n <div class=\"block\" v-if=\"content.title\">\r\n <span class=\"title\">{{titleCase(content.title)}}</span>\r\n </div>\r\n <div class=\"block\" v-else>\r\n <span class=\"title\">{{content.featureId}}</span>\r\n </div>\r\n \r\n\r\n <pubmed-viewer v-if=\"content.featureId\" class=\"block\" :flatmapAPI=flatmapAPI :featureId=\"content.featureId\" @pubmedSearchUrl=\"pubmedSearchUrlUpdate\"/>\r\n <div v-if=\"content.components\" class=\"block\">\r\n <div class=\"attribute-title\">Components</div>\r\n <span class=\"attribute-content\">{{content.components}}</span>\r\n </div>\r\n <div v-if=\"content.start\" class=\"block\">\r\n <div class=\"attribute-title\">Origin</div>\r\n <span class=\"attribute-content\">{{content.start}}</span>\r\n </div>\r\n <div v-if=\"content.distribution\" class=\"block\">\r\n <div class=\"attribute-title\">Distribution</div>\r\n <span class=\"attribute-content\">{{content.distribution}}</span>\r\n </div>\r\n <el-button v-for=\"action in content.actions\" round :key=\"action.title\"\r\n class=\"button\" @click=\"resourceSelected(action)\">\r\n <i v-if=\"action.title === 'Search for dataset' || action.title === 'View Dataset' \" class=\"el-icon-coin\"></i>\r\n {{action.title}}\r\n </el-button>\r\n <el-button v-if=\"pubmedSearchUrl\" class=\"button\" icon=\"el-icon-notebook-2\" @click=\"openUrl(pubmedSearchUrl)\">\r\n Open publications in pubmed\r\n </el-button>\r\n </el-main>\r\n </div>\r\n</template>\r\n\r\n\r\n<script>\r\n/* eslint-disable no-alert, no-console */\r\nimport Vue from \"vue\";\r\nimport {\r\n Button,\r\n Container,\r\n Header,\r\n Icon,\r\n Main\r\n} from \"element-ui\";\r\nimport lang from \"element-ui/lib/locale/lang/en\";\r\nimport locale from \"element-ui/lib/locale\";\r\nlocale.use(lang);\r\nVue.use(Button);\r\nVue.use(Container);\r\nVue.use(Header);\r\nVue.use(Icon);\r\nVue.use(Main);\r\n\r\nimport PubmedViewer from './PubmedViewer.vue'\r\n\r\nconst titleCase = (str) => {\r\n return str.replace(/\\w\\S*/g, (t) => { return t.charAt(0).toUpperCase() + t.substr(1).toLowerCase() });\r\n}\r\n\r\nexport default {\r\n components: { PubmedViewer },\r\n name: \"Tooltip\",\r\n props: { \r\n visible: {\r\n type: Boolean,\r\n default: false\r\n },\r\n content: {\r\n type: Object,\r\n default: undefined\r\n },\r\n /**\r\n * Specify the endpoint of the flatmap server.\r\n */\r\n flatmapAPI: {\r\n type: String,\r\n default: \"https://mapcore-demo.org/flatmaps/\"\r\n }\r\n },\r\n data: function() {\r\n return {\r\n activeSpecies: undefined,\r\n appendToBody: false,\r\n pubmedSearchUrl: ''\r\n };\r\n },\r\n methods: {\r\n resourceSelected: function(action) {\r\n this.$emit(\"resource-selected\", action); \r\n },\r\n titleCase: function(title){\r\n return titleCase(title)\r\n },\r\n onClose: function() {\r\n this.$emit(\"onClose\");\r\n },\r\n openUrl: function(url){\r\n window.open(url, '_blank')\r\n },\r\n pubmedSearchUrlUpdate: function (val){\r\n this.pubmedSearchUrl = val\r\n }\r\n }\r\n};\r\n</script>\r\n\r\n<style scoped lang=\"scss\">\r\n@import \"~element-ui/packages/theme-chalk/src/button\";\r\n@import \"~element-ui/packages/theme-chalk/src/container\";\r\n@import \"~element-ui/packages/theme-chalk/src/header\";\r\n@import \"~element-ui/packages/theme-chalk/src/main\";\r\n\r\n.tooltip-container {\r\n text-align:justify;\r\n border-radius: 4px;\r\n box-shadow: 0 1px 2px rgba(0,0,0,.1);\r\n pointer-events: auto;\r\n background: #fff;\r\n border: 1px solid $app-primary-color;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n}\r\n\r\n.display {\r\n width: 44px;\r\n word-break: normal;\r\n}\r\n\r\n.title {\r\n text-align: left;\r\n width: 16em;\r\n line-height: 1.5em !important;\r\n font-size: 1em;\r\n font-family: Helvetica;\r\n font-weight: 500;\r\n /* font-weight: bold; */\r\n padding-bottom: 8px;\r\n}\r\n\r\n.block {\r\n margin-bottom: 1.5em;\r\n}\r\n\r\n.pub {\r\n width: 16rem;\r\n}\r\n\r\n.icon {\r\n right: 0px;\r\n position: absolute;\r\n top: 10px;\r\n}\r\n\r\n.icon:hover {\r\n cursor: pointer;\r\n}\r\n\r\n.main {\r\n font-size: 14px;\r\n text-align: left;\r\n line-height: 1.5em;\r\n font-family: Helvetica;\r\n font-weight: 400;\r\n /* outline: thin red solid; */\r\n padding: 1em !important;\r\n overflow: hidden;\r\n min-width: 16rem;\r\n}\r\n\r\n.attribute-title{\r\n font-size: 16px;\r\n font-weight: 600;\r\n /* font-weight: bold; */\r\n text-transform: uppercase;\r\n}\r\n\r\n.attribute-content{\r\n font-size: 14px;\r\n font-weight: 400;\r\n}\r\n\r\n.popover-container {\r\n height: 100%;\r\n width: 100%;\r\n}\r\n\r\n.main {\r\n .el-button.is-round{\r\n border-radius: 4px;\r\n padding: 9px 20px 10px 20px;\r\n display: flex;\r\n height: 36px;\r\n }\r\n}\r\n\r\n.button {\r\n margin-left: 0px !important;\r\n margin-top: 0px !important;\r\n font-size: 14px !important;\r\n background-color: $app-primary-color;\r\n color: #fff;\r\n &+.button {\r\n margin-top: 10px !important;\r\n }\r\n &:hover {\r\n color: #fff !important;\r\n background: #ac76c5 !important;\r\n border: 1px solid #ac76c5 !important;\r\n }\r\n}\r\n\r\n.tooltip-container{\r\n &::after, &::before {\r\n content: '';\r\n display: block;\r\n position: absolute;\r\n width: 0;\r\n height: 0;\r\n border-style: solid;\r\n flex-shrink: 0;\r\n }\r\n}\r\n\r\n.mapboxgl-popup-anchor-bottom {\r\n .tooltip-container {\r\n &::after, &::before {\r\n top: 100%;\r\n border-width: 12px;\r\n }\r\n &::after {\r\n margin-top:-1px;\r\n border-color: rgb(255, 255, 255) transparent transparent transparent ;\r\n }\r\n &::before {\r\n margin: 0 auto;\r\n border-color: $app-primary-color transparent transparent transparent ;\r\n }\r\n }\r\n}\r\n\r\n.mapboxgl-popup-anchor-top {\r\n .tooltip-container {\r\n &::after, &::before {\r\n top: -24px;\r\n border-width: 12px;\r\n }\r\n &::after {\r\n margin-top: 1px;\r\n border-color: transparent transparent rgb(255, 255, 255) transparent ;\r\n }\r\n &::before {\r\n margin: 0 auto;\r\n border-color: transparent transparent $app-primary-color transparent ;\r\n }\r\n }\r\n}\r\n\r\n\r\n/* Fix for chrome bug where under triangle pops up above one on top of it */\r\n.selector:not(*:root), .tooltip-container::after{\r\n top: 99.4%;\r\n}\r\n</style>\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tooltip.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tooltip.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Tooltip.vue?vue&type=template&id=4802b201&scoped=true&\"\nimport script from \"./Tooltip.vue?vue&type=script&lang=js&\"\nexport * from \"./Tooltip.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Tooltip.vue?vue&type=style&index=0&id=4802b201&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4802b201\",\n null\n \n)\n\nexport default component.exports","export default '<div class=\"flatmap-marker\"><svg display=\"block\" height=\"41px\" width=\"27px\" viewBox=\"0 0 27 41\"><g fill-rule=\"nonzero\"><g transform=\"translate(3.0, 29.0)\" fill=\"#000000\"><ellipse opacity=\"0.04\" cx=\"10.5\" cy=\"5.80029008\" rx=\"10.5\" ry=\"5.25002273\"></ellipse><ellipse opacity=\"0.04\" cx=\"10.5\" cy=\"5.80029008\" rx=\"10.5\" ry=\"5.25002273\"></ellipse><ellipse opacity=\"0.04\" cx=\"10.5\" cy=\"5.80029008\" rx=\"9.5\" ry=\"4.77275007\"></ellipse><ellipse opacity=\"0.04\" cx=\"10.5\" cy=\"5.80029008\" rx=\"8.5\" ry=\"4.29549936\"></ellipse><ellipse opacity=\"0.04\" cx=\"10.5\" cy=\"5.80029008\" rx=\"7.5\" ry=\"3.81822308\"></ellipse><ellipse opacity=\"0.04\" cx=\"10.5\" cy=\"5.80029008\" rx=\"6.5\" ry=\"3.34094679\"></ellipse><ellipse opacity=\"0.04\" cx=\"10.5\" cy=\"5.80029008\" rx=\"5.5\" ry=\"2.86367051\"></ellipse><ellipse opacity=\"0.04\" cx=\"10.5\" cy=\"5.80029008\" rx=\"4.5\" ry=\"2.38636864\"></ellipse></g><g fill=\"#005974\"><path d=\"M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z\"></path></g><g opacity=\"0.25\" fill=\"#000000\"><path d=\"M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z\"></path></g><g transform=\"translate(6.0, 7.0)\" fill=\"#FFFFFF\"></g><g transform=\"translate(8.0, 8.0)\"><circle fill=\"#000000\" opacity=\"0.25\" cx=\"5.5\" cy=\"5.5\" r=\"5.4999962\"></circle><circle fill=\"#FFFFFF\" cx=\"5.5\" cy=\"5.5\" r=\"5.4999962\"></circle></g></g></svg></div>'","<template>\r\n <div\r\n class=\"flatmap-container\"\r\n v-loading=\"loading\"\r\n element-loading-text=\"Loading...\"\r\n element-loading-spinner=\"el-icon-loading\"\r\n element-loading-background=\"rgba(0, 0, 0, 0.3)\"\r\n >\r\n <map-svg-sprite-color />\r\n <div style=\"height:100%;width:100%;position:relative;overflow-y:none\">\r\n <div style=\"height:100%;width:100%;\" ref=\"display\"></div>\r\n <el-popover\r\n :content=\"warningMessage\"\r\n placement=\"right\"\r\n v-if=\"displayWarning\"\r\n :appendToBody=\"false\"\r\n trigger=\"manual\"\r\n popper-class=\"warning-popper flatmap-popper right-popper\"\r\n v-model=\"hoverVisibilities[6].value\"\r\n ref=\"warningPopover\"\r\n ></el-popover>\r\n <i\r\n class=\"el-icon-warning warning-icon\"\r\n v-if=\"displayWarning\"\r\n @mouseover=\"showToolitip(6)\"\r\n @mouseout=\"hideToolitip(6)\"\r\n v-popover:warningPopover\r\n >\r\n <span class=\"warning-text\">Beta</span>\r\n </i>\r\n <div class=\"bottom-right-control\">\r\n <el-popover\r\n content=\"Zoom in\"\r\n placement=\"left\"\r\n :appendToBody=\"false\"\r\n trigger=\"manual\"\r\n popper-class=\"flatmap-popper left-popper\"\r\n v-model=\"hoverVisibilities[0].value\"\r\n >\r\n <map-svg-icon\r\n icon=\"zoomIn\"\r\n class=\"icon-button zoomIn\"\r\n slot=\"reference\"\r\n @click.native=\"zoomIn()\"\r\n @mouseover.native=\"showToolitip(0)\"\r\n @mouseout.native=\"hideToolitip(0)\"\r\n />\r\n </el-popover>\r\n <el-popover\r\n content=\"Zoom out\"\r\n placement=\"top-end\"\r\n :appendToBody=\"false\"\r\n trigger=\"manual\"\r\n popper-class=\"flatmap-popper popper-zoomout\"\r\n v-model=\"hoverVisibilities[1].value\"\r\n >\r\n <map-svg-icon\r\n icon=\"zoomOut\"\r\n class=\"icon-button zoomOut\"\r\n slot=\"reference\"\r\n @click.native=\"zoomOut()\"\r\n @mouseover.native=\"showToolitip(1)\"\r\n @mouseout.native=\"hideToolitip(1)\"\r\n />\r\n </el-popover>\r\n <el-popover\r\n content=\"Reset\"\r\n placement=\"top\"\r\n :appendToBody=\"false\"\r\n trigger=\"manual\"\r\n popper-class=\"flatmap-popper\"\r\n v-model=\"hoverVisibilities[2].value\"\r\n >\r\n <map-svg-icon\r\n icon=\"resetZoom\"\r\n class=\"icon-button resetView\"\r\n slot=\"reference\"\r\n @click.native=\"resetView()\"\r\n @mouseover.native=\"showToolitip(2)\"\r\n @mouseout.native=\"hideToolitip(2)\"\r\n />\r\n </el-popover>\r\n </div>\r\n <el-popover\r\n content=\"Change pathway visibility\"\r\n placement=\"right\"\r\n :appendToBody=\"false\"\r\n trigger=\"manual\"\r\n popper-class=\"flatmap-popper right-popper\"\r\n v-model=\"hoverVisibilities[4].value\"\r\n ref=\"checkBoxPopover\"\r\n />\r\n <div class=\"pathway-location\" :class=\"{ open: drawerOpen, close: !drawerOpen }\">\r\n <div\r\n class=\"pathway-container\"\r\n v-if=\"pathways.length > 0 && pathControls\"\r\n v-popover:checkBoxPopover\r\n >\r\n <el-popover\r\n content=\"Find these markers for data\"\r\n placement=\"right\"\r\n :appendToBody=\"false\"\r\n trigger=\"manual\"\r\n popper-class=\"flatmap-popper popper-bump-right right-popper\"\r\n v-model=\"hoverVisibilities[5].value\"\r\n ref=\"markerPopover\"\r\n ></el-popover>\r\n <div\r\n v-show=\"hoverVisibilities[5].value\"\r\n class=\"flatmap-marker-help\"\r\n v-html=\"flatmapMarker\"\r\n v-popover:markerPopover\r\n ></div>\r\n <el-row>\r\n <el-col :span=\"12\">\r\n <div class=\"pathways-display-text\">Pathways</div>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-checkbox\r\n class=\"all-checkbox\"\r\n :indeterminate=\"isIndeterminate\"\r\n v-model=\"checkAll\"\r\n @change=\"handleCheckAllChange\"\r\n >Display all</el-checkbox>\r\n </el-col>\r\n </el-row>\r\n <el-checkbox-group\r\n v-model=\"checkedItems\"\r\n size=\"small\"\r\n class=\"checkbox-group\"\r\n @change=\"handleCheckedItemsChange\"\r\n >\r\n <div class=\"checkbox-group-inner\">\r\n <el-row v-for=\"item in pathways\" :key=\"item.type\" :label=\"item.type\">\r\n <div class=\"checkbox-container\">\r\n <el-checkbox\r\n class=\"my-checkbox\"\r\n :label=\"item.type\"\r\n @change=\"visibilityToggle()\"\r\n :checked=\"true\"\r\n >\r\n <div class=\"path-visual\" :class=\"item.type\"></div>\r\n {{item.label}}\r\n </el-checkbox>\r\n </div>\r\n </el-row>\r\n </div>\r\n </el-checkbox-group>\r\n </div>\r\n <div\r\n @click=\"toggleDrawer\"\r\n class=\"drawer-button\"\r\n :class=\"{ open: drawerOpen, close: !drawerOpen }\"\r\n >\r\n <i class=\"el-icon-arrow-left\"></i>\r\n </div>\r\n </div>\r\n <el-popover\r\n ref=\"backgroundPopover\"\r\n placement=\"top-start\"\r\n width=\"175\"\r\n :appendToBody=\"false\"\r\n trigger=\"click\"\r\n popper-class=\"background-popper\"\r\n >\r\n <el-row class=\"backgroundText\">Organs display</el-row>\r\n <el-row class=\"backgroundControl\">\r\n <el-radio-group v-model=\"colourRadio\" class=\"flatmap-radio\" @change=\"setColour\">\r\n <el-radio :label=\"true\">Colour</el-radio>\r\n <el-radio :label=\"false\">Greyscale</el-radio>\r\n </el-radio-group>\r\n </el-row>\r\n <el-row class=\"backgroundSpacer\"></el-row>\r\n <el-row class=\"backgroundText\">Outlines display</el-row>\r\n <el-row class=\"backgroundControl\">\r\n <el-radio-group v-model=\"outlinesRadio\" class=\"flatmap-radio\" @change=\"setOutlines\">\r\n <el-radio :label=\"true\">Show</el-radio>\r\n <el-radio :label=\"false\">Hide</el-radio>\r\n </el-radio-group>\r\n </el-row>\r\n <el-row class=\"backgroundSpacer\"></el-row>\r\n <el-row class=\"backgroundText\">Change background</el-row>\r\n <el-row class=\"backgroundControl\">\r\n <div\r\n v-for=\"item in availableBackground\"\r\n :key=\"item\"\r\n :class=\"['backgroundChoice', item, item == currentBackground ? 'active' :'']\"\r\n @click=\"backgroundChangeCallback(item)\"\r\n />\r\n </el-row>\r\n </el-popover>\r\n <el-popover\r\n content=\"Change background color\"\r\n placement=\"right\"\r\n v-model=\"hoverVisibilities[3].value\"\r\n :appendToBody=\"false\"\r\n trigger=\"manual\"\r\n popper-class=\"flatmap-popper right-popper\"\r\n >\r\n <map-svg-icon\r\n v-popover:backgroundPopover\r\n icon=\"changeBckgd\"\r\n class=\"icon-button background-colour\"\r\n :class=\"{ open: drawerOpen, close: !drawerOpen }\"\r\n slot=\"reference\"\r\n @mouseover.native=\"showToolitip(3)\"\r\n @mouseout.native=\"hideToolitip(3)\"\r\n />\r\n </el-popover>\r\n <Tooltip\r\n ref=\"tooltip\"\r\n class=\"tooltip\"\r\n :content=\"tooltipContent\"\r\n :flatmapAPI=\"flatmapAPI\"\r\n @resource-selected=\"resourceSelected\"\r\n />\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\n/* eslint-disable no-alert, no-console */\r\nimport Vue from \"vue\";\r\nimport Tooltip from \"./Tooltip\";\r\nimport { MapSvgIcon, MapSvgSpriteColor } from \"@abi-software/svg-sprite\";\r\nimport {\r\n Checkbox,\r\n CheckboxGroup,\r\n Col,\r\n Loading,\r\n Radio,\r\n RadioGroup,\r\n Row\r\n} from \"element-ui\";\r\nimport lang from \"element-ui/lib/locale/lang/en\";\r\nimport locale from \"element-ui/lib/locale\";\r\nimport flatmapMarker from \"../icons/flatmap-marker\";\r\nlocale.use(lang);\r\nVue.use(Checkbox);\r\nVue.use(CheckboxGroup);\r\nVue.use(Col);\r\nVue.use(Loading.directive);\r\nVue.use(Radio);\r\nVue.use(RadioGroup);\r\nVue.use(Row);\r\nconst ResizeSensor = require(\"css-element-queries/src/ResizeSensor\");\r\n\r\nconst mapResize = map => {\r\n return () => {\r\n if (map) map.resize();\r\n };\r\n};\r\n\r\nexport default {\r\n name: \"FlatmapVuer\",\r\n components: {\r\n MapSvgIcon,\r\n MapSvgSpriteColor,\r\n Tooltip\r\n },\r\n beforeCreate: function() {\r\n this.mapManager = undefined;\r\n this.mapImp = undefined;\r\n },\r\n methods: {\r\n backgroundChangeCallback: function(colour) {\r\n this.currentBackground = colour;\r\n if (this.mapImp) {\r\n this.mapImp.setBackgroundColour(this.currentBackground, 1);\r\n }\r\n },\r\n toggleDrawer: function() {\r\n this.drawerOpen = !this.drawerOpen;\r\n },\r\n /**\r\n * Function to toggle colour/greyscale of organs.\r\n */\r\n setColour: function(flag) {\r\n this.colourRadio = flag;\r\n if (this.mapImp) {\r\n this.mapImp.setColour({ colour: flag, outline: this.outlinesRadio });\r\n }\r\n },\r\n /**\r\n * Function to toggle outlines f organs.\r\n */\r\n setOutlines: function(flag) {\r\n this.outlineRadio = flag;\r\n if (this.mapImp) {\r\n this.mapImp.setColour({ colour: this.colourRadio, outline: flag });\r\n }\r\n },\r\n /**\r\n * Function to toggle paths to default.\r\n * Also called when the associated button is pressed.\r\n */\r\n resetView: function() {\r\n if (this.mapImp) {\r\n this.mapImp.resetMap();\r\n this.checkedItems = this.mapImp.pathTypes().map(item => item.type);\r\n this.isIndeterminate = false;\r\n this.checkAll = true;\r\n }\r\n },\r\n /**\r\n * Function to zoom in.\r\n * Also called when the associated button is pressed.\r\n */\r\n zoomIn: function() {\r\n if (this.mapImp) {\r\n this.mapImp.zoomIn();\r\n }\r\n },\r\n /**\r\n * Function to zoom out.\r\n * Also called when the associated button is pressed.\r\n */\r\n zoomOut: function() {\r\n if (this.mapImp) {\r\n this.mapImp.zoomOut();\r\n }\r\n },\r\n visibilityToggle: function() {\r\n if (this.mapImp) {\r\n this.mapImp.showPaths(this.checkedItems);\r\n }\r\n },\r\n handleCheckedItemsChange: function(value) {\r\n let checkedCount = value.length;\r\n this.checkAll = checkedCount === this.pathways.length;\r\n this.isIndeterminate =\r\n checkedCount > 0 && checkedCount < this.pathways.length;\r\n },\r\n handleCheckAllChange(val) {\r\n this.checkedItems = val ? this.pathways.map(a => a.type) : [];\r\n this.isIndeterminate = false;\r\n if (this.mapImp) {\r\n this.mapImp.showPaths(this.checkedItems);\r\n }\r\n },\r\n eventCallback: function() {\r\n return (eventType, feature, ...args) => {\r\n const label = feature.label;\r\n const resource = [feature.models];\r\n const taxonomy = this.entry;\r\n const data = {\r\n dataset: feature.dataset,\r\n taxonomy: taxonomy,\r\n resource: resource,\r\n label: label,\r\n feature: feature,\r\n userData: args,\r\n eventType: eventType\r\n };\r\n // Disable the nueron pop up for now.\r\n if (feature && feature.type !== \"marker\")\r\n this.checkAndCreatePopups(data);\r\n this.$emit(\"resource-selected\", data);\r\n };\r\n },\r\n // checkNeuronClicked shows a neuron path pop up if a path was recently clicked\r\n checkAndCreatePopups: function(data) {\r\n if (\r\n data.eventType == \"click\" &&\r\n this.createTooltipFromNeuronCuration(data)\r\n ) {\r\n this.mapImp.showPopup(\r\n this.mapImp.modelFeatureIds(data.resource[0])[0],\r\n this.$refs.tooltip.$el,\r\n { className: \"flatmap-tooltip-dialog\" }\r\n );\r\n this.popUpCssHack();\r\n }\r\n },\r\n popUpCssHack: function() {\r\n // Below is a hack to remove flatmap tooltips while popup is open\r\n let ftooltip = document.querySelector(\".flatmap-tooltip-popup\");\r\n if (ftooltip) ftooltip.style.display = \"none\";\r\n document.querySelector(\".mapboxgl-popup-close-button\").style.display =\r\n \"block\";\r\n this.$refs.tooltip.$el.style.display = \"flex\";\r\n document.querySelector(\".mapboxgl-popup-close-button\").onclick = () => {\r\n document.querySelector(\".flatmap-tooltip-popup\").style.display =\r\n \"block\";\r\n };\r\n },\r\n resourceSelected: function(action) {\r\n this.$emit(\"resource-selected\", action);\r\n },\r\n createTooltipFromNeuronCuration: function(data) {\r\n const feature = data.resource[0];\r\n let content = {\r\n title: undefined,\r\n components: undefined,\r\n start: undefined,\r\n distribution: undefined,\r\n actions: []\r\n };\r\n\r\n let foundAnnotations = false;\r\n this.tooltipVisible = false;\r\n\r\n // neural data check\r\n if (feature) {\r\n if (feature.includes(\"ilxtr:neuron\")) {\r\n foundAnnotations = true;\r\n this.tooltipVisible = true;\r\n this.tooltipContent = content;\r\n this.tooltipContent.uberon = feature;\r\n this.tooltipContent.title = data.label;\r\n this.tooltipContent.featureId = feature;\r\n this.tooltipContent.actions.push({\r\n title: \"Search for dataset\",\r\n label: \"Neuron Datasets\",\r\n resource: feature.split(\":\")[1],\r\n type: \"Neuron Search\",\r\n nervePath: true\r\n });\r\n }\r\n }\r\n // annotated with datset check\r\n if (data.dataset) {\r\n foundAnnotations = true;\r\n this.tooltipVisible = true;\r\n this.tooltipContent = content;\r\n this.tooltipContent.uberon = feature;\r\n this.tooltipContent.title = data.label;\r\n this.tooltipContent.actions.push({\r\n title: \"View dataset\",\r\n resource: data.dataset,\r\n type: \"URL\",\r\n nervePath: false\r\n });\r\n }\r\n\r\n if (foundAnnotations) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n },\r\n // Keeping this as an API\r\n showPopup: function(featureId, node, options) {\r\n let myOptions = options;\r\n if (this.mapImp) {\r\n if (myOptions) {\r\n if (!myOptions.className) myOptions.className = \"flatmapvuer-popover\";\r\n } else {\r\n myOptions = { className: \"flatmapvuer-popover\" };\r\n }\r\n this.mapImp.showPopup(featureId, node, myOptions);\r\n }\r\n },\r\n showMarkerPopup: function(featureId, node, options) {\r\n if (this.mapImp) {\r\n this.mapImp.showMarkerPopup(featureId, node, options);\r\n }\r\n },\r\n setHelpMode: function(helpMode) {\r\n if (helpMode) {\r\n this.inHelp = true;\r\n this.hoverVisibilities.forEach(item => {\r\n item.value = true;\r\n });\r\n this.openFlatmapHelpPopup();\r\n } else {\r\n this.inHelp = false;\r\n this.hoverVisibilities.forEach(item => {\r\n item.value = false;\r\n });\r\n this.closeFlatmapHelpPopup();\r\n }\r\n },\r\n showToolitip: function(tooltipNumber) {\r\n if (!this.inHelp) {\r\n this.tooltipWait = setTimeout(() => {\r\n this.hoverVisibilities[tooltipNumber].value = true;\r\n }, 500);\r\n }\r\n },\r\n hideToolitip: function(tooltipNumber) {\r\n if (!this.inHelp) {\r\n this.hoverVisibilities[tooltipNumber].value = false;\r\n clearTimeout(this.tooltipWait);\r\n }\r\n },\r\n openFlatmapHelpPopup: function() {\r\n if (this.mapImp) {\r\n let heartId = this.mapImp.featureIdsForModel(\"UBERON:0000948\")[0];\r\n const elm = \"Click for more information\";\r\n this.mapImp.showPopup(heartId, elm, {\r\n anchor: \"top\",\r\n className: \"flatmap-popup-popper\"\r\n });\r\n }\r\n },\r\n closeFlatmapHelpPopup: function() {\r\n this.$el\r\n .querySelectorAll(\".mapboxgl-popup-close-button\")\r\n .forEach(item => {\r\n item.click();\r\n });\r\n },\r\n getLabels: function() {\r\n let labels = [];\r\n if (this.mapImp) {\r\n let annotations = this.mapImp.annotations;\r\n for (let value of annotations.values()) {\r\n if (value.label) labels.push(value.label);\r\n }\r\n return Array.from(new Set(labels));\r\n }\r\n },\r\n getState: function() {\r\n if (this.mapImp) {\r\n let state = {\r\n entry: this.entry,\r\n viewport: this.mapImp.getState()\r\n };\r\n return state;\r\n }\r\n return undefined;\r\n },\r\n setState: function(state) {\r\n if (state) {\r\n if (this.mapImp && state.entry) {\r\n if (this.entry == state.entry)\r\n if (state.viewport) {\r\n this.mapImp.setState(state.viewport);\r\n }\r\n } else {\r\n this.createFlatmap(state);\r\n }\r\n }\r\n },\r\n createFlatmap: function(state) {\r\n if (!this.mapImp && !this.loading) {\r\n this.loading = true;\r\n let minimap = false;\r\n if (this.displayMinimap) {\r\n minimap = { position: \"top-right\" };\r\n }\r\n let entry = this.entry;\r\n if (state && state.entry) entry = state.entry;\r\n let promise1 = this.mapManager.loadMap(\r\n entry,\r\n this.$refs.display,\r\n this.eventCallback(),\r\n {\r\n //fullscreenControl: false,\r\n //annotatable: false,\r\n //debug: true,\r\n featureInfo: this.featureInfo,\r\n \"min-zoom\": this.minZoom,\r\n pathControls: false,\r\n searchable: this.searchable,\r\n tooltips: this.tooltips,\r\n minimap: minimap\r\n }\r\n );\r\n promise1.then(returnedObject => {\r\n this.mapImp = returnedObject;\r\n window.mapImp = returnedObject\r\n this.sensor = new ResizeSensor(\r\n this.$refs.display,\r\n mapResize(this.mapImp)\r\n );\r\n this.mapImp.setBackgroundOpacity(1);\r\n this.backgroundChangeCallback(this.currentBackground);\r\n this.pathways = this.mapImp.pathTypes();\r\n this.$emit(\"ready\", this);\r\n this.loading = false;\r\n if (this._viewportToBeSet)\r\n this.mapImp.setState(this._viewportToBeSet);\r\n else if (state && state.viewport)\r\n this.mapImp.setState(state.viewport);\r\n });\r\n } else if (state) {\r\n if (this.entry == state.entry) this._viewportToBeSet = state.viewport;\r\n }\r\n },\r\n /**\r\n * Function to display features with annotation matching the provided term.\r\n */\r\n searchAndShowResult: function(term) {\r\n if (this.mapImp) {\r\n if (term === undefined || term === \"\") {\r\n this.mapImp.clearSearchResults();\r\n } else {\r\n let searchResults = this.mapImp.search(term);\r\n if (searchResults && searchResults.__featureIds.length > 0)\r\n this.mapImp.showSearchResults(searchResults);\r\n else this.mapImp.clearSearchResults();\r\n }\r\n }\r\n }\r\n },\r\n props: {\r\n entry: String,\r\n featureInfo: {\r\n type: Boolean,\r\n default: false\r\n },\r\n minZoom: {\r\n type: Number,\r\n default: 4\r\n },\r\n pathControls: {\r\n type: Boolean,\r\n default: true\r\n },\r\n searchable: {\r\n type: Boolean,\r\n default: false\r\n },\r\n tooltips: {\r\n type: Boolean,\r\n default: true\r\n },\r\n helpMode: {\r\n type: Boolean,\r\n default: false\r\n },\r\n renderAtMounted: {\r\n type: Boolean,\r\n default: true\r\n },\r\n displayWarning: {\r\n type: Boolean,\r\n default: true\r\n },\r\n displayMinimap: {\r\n type: Boolean,\r\n default: false\r\n },\r\n warningMessage: {\r\n type: String,\r\n default: \"Beta feature - This map is based on the connectivity of a rat. New connectivity and species specificity will be added as the SPARC program progress.\"\r\n },\r\n /**\r\n * State containing state of the flatmap.\r\n */\r\n state: {\r\n type: Object,\r\n default: undefined\r\n },\r\n /**\r\n * Specify the endpoint of the flatmap server.\r\n */\r\n flatmapAPI: {\r\n type: String,\r\n default: \"https://mapcore-demo.org/flatmaps/\"\r\n }\r\n },\r\n data: function() {\r\n return {\r\n checkedItems: [],\r\n pathways: [],\r\n isIndeterminate: false,\r\n checkAll: true,\r\n hoverVisibilities: [\r\n { value: false },\r\n { value: false },\r\n { value: false },\r\n { value: false },\r\n { value: false },\r\n { value: false },\r\n { value: false }\r\n ],\r\n inHelp: false,\r\n currentBackground: \"white\",\r\n availableBackground: [\"white\", \"lightskyblue\", \"black\"],\r\n loading: false,\r\n flatmapMarker: flatmapMarker,\r\n drawerOpen: true,\r\n tooltipContent: {},\r\n colourRadio: true,\r\n outlinesRadio: true\r\n };\r\n },\r\n watch: {\r\n entry: function() {\r\n if (!this.state) this.createFlatmap();\r\n },\r\n helpMode: function(val) {\r\n this.setHelpMode(val);\r\n },\r\n state: {\r\n handler: function(state) {\r\n this.setState(state);\r\n },\r\n immediate: true,\r\n deep: true\r\n }\r\n },\r\n mounted: function() {\r\n const flatmap = require(\"@abi-software/flatmap-viewer\");\r\n this.mapManager = new flatmap.MapManager(this.flatmapAPI);\r\n if (this.renderAtMounted) this.createFlatmap();\r\n }\r\n};\r\n</script>\r\n\r\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\r\n<style scoped lang=\"scss\">\r\n@import \"~element-ui/packages/theme-chalk/src/button\";\r\n@import \"~element-ui/packages/theme-chalk/src/checkbox\";\r\n@import \"~element-ui/packages/theme-chalk/src/checkbox-group\";\r\n@import \"~element-ui/packages/theme-chalk/src/loading\";\r\n@import \"~element-ui/packages/theme-chalk/src/row\";\r\n\r\n.warning-icon {\r\n position: absolute;\r\n top: 90px;\r\n left: 37px;\r\n text-align: left;\r\n font-size: 25px;\r\n color: $warning;\r\n\r\n &:hover {\r\n cursor: pointer;\r\n }\r\n}\r\n\r\n.warning-text {\r\n font-size: 15px;\r\n vertical-align: 5px;\r\n}\r\n\r\n.path-visual {\r\n margin: 3px 0;\r\n height: 3px;\r\n width: 25px;\r\n margin-right: 5px;\r\n display: inline-block;\r\n &.cns {\r\n background: #9b1fc1;\r\n }\r\n &.lcn {\r\n background: #f19e38;\r\n }\r\n &.para-pre {\r\n background: #3f8f4a;\r\n }\r\n &.para-post {\r\n background: repeating-linear-gradient(\r\n 90deg,\r\n #3f8f4a,\r\n #3f8f4a 6px,\r\n transparent 0,\r\n transparent 9px\r\n );\r\n }\r\n &.sensory {\r\n background: #2a62f6;\r\n }\r\n &.somatic {\r\n background: #98561d;\r\n }\r\n &.symp-pre {\r\n background: #ea3423;\r\n }\r\n &.symp-post {\r\n background: repeating-linear-gradient(\r\n 90deg,\r\n #ea3423,\r\n #ea3423 6px,\r\n transparent 0,\r\n transparent 9px\r\n );\r\n }\r\n}\r\n\r\n.flatmap-container {\r\n height: 100%;\r\n width: 100%;\r\n}\r\n\r\n.pathway-location {\r\n position: absolute;\r\n bottom: 0px;\r\n transition: all 1s ease;\r\n &.open {\r\n left: 0px;\r\n }\r\n &.close {\r\n left: -298px;\r\n }\r\n}\r\n\r\n.pathway-container {\r\n float: left;\r\n padding-left: 16px;\r\n padding-right: 18px;\r\n max-height: calc(100% - 184px);\r\n text-align: left;\r\n overflow: auto;\r\n border: 1px solid rgb(220, 223, 230);\r\n padding-top: 7px;\r\n padding-bottom: 16px;\r\n background: #ffffff;\r\n}\r\n\r\n.pathways-display-text {\r\n width: 59px;\r\n height: 20px;\r\n color: rgb(48, 49, 51);\r\n font-size: 14px;\r\n font-weight: normal;\r\n line-height: 20px;\r\n margin-left: 8px;\r\n}\r\n\r\n.all-checkbox {\r\n float: right;\r\n}\r\n\r\n.checkbox-container {\r\n display: flex;\r\n cursor: pointer;\r\n}\r\n\r\n.checkbox-group {\r\n width: 260px;\r\n border: 1px solid rgb(144, 147, 153);\r\n border-radius: 4px;\r\n background: #ffffff;\r\n}\r\n\r\n.my-checkbox {\r\n background-color: #fff;\r\n width: 100%;\r\n}\r\n\r\n.checkbox-group-inner {\r\n padding: 18px;\r\n}\r\n\r\n.flatmap-marker-help {\r\n display: inline-block;\r\n}\r\n\r\n::v-deep .popper-bump-right {\r\n left: 30px;\r\n}\r\n\r\n::v-deep .el-checkbox__label {\r\n padding-left: 5px;\r\n color: $app-primary-color;\r\n font-size: 12px;\r\n font-weight: 500;\r\n letter-spacing: 0px;\r\n line-height: 14px;\r\n}\r\n\r\n::v-deep .el-checkbox__input {\r\n &.is-indeterminate,\r\n &.is-checked {\r\n .el-checkbox__inner {\r\n background-color: $app-primary-color;\r\n border-color: $app-primary-color;\r\n }\r\n }\r\n}\r\n\r\n::v-deep .el-checkbox__label {\r\n color: $app-primary-color !important;\r\n}\r\n\r\n.el-dropdown-link {\r\n cursor: pointer;\r\n color: #409eff;\r\n}\r\n.el-icon-arrow-down {\r\n font-size: 12px;\r\n}\r\n.demonstration {\r\n display: block;\r\n color: #8492a6;\r\n font-size: 14px;\r\n margin-bottom: 20px;\r\n}\r\n\r\n.tooltip {\r\n display: none;\r\n}\r\n\r\n::v-deep .mapboxgl-popup {\r\n max-width: 300px !important;\r\n}\r\n\r\n::v-deep .flatmap-tooltip-popup {\r\n &.mapboxgl-popup-anchor-bottom {\r\n .mapboxgl-popup-content {\r\n margin-bottom: 12px;\r\n &::after,\r\n &::before {\r\n top: 100%;\r\n border-width: 12px;\r\n }\r\n /* this border color controlls the color of the triangle (what looks like the fill of the triangle) */\r\n &::after {\r\n margin-top: -1px;\r\n border-color: rgb(255, 255, 255) transparent transparent transparent;\r\n }\r\n /* this border color controlls the outside, thin border */\r\n &::before {\r\n margin: 0 auto;\r\n border-color: $app-primary-color transparent transparent transparent;\r\n }\r\n }\r\n }\r\n &.mapboxgl-popup-anchor-top {\r\n .mapboxgl-popup-content {\r\n margin-top: 18px;\r\n &::after,\r\n &::before {\r\n top: calc(-100% + 6px);\r\n border-width: 12px;\r\n }\r\n /* this border color controlls the color of the triangle (what looks like the fill of the triangle) */\r\n &::after {\r\n margin-top: 1px;\r\n border-color: transparent transparent rgb(255, 255, 255) transparent;\r\n }\r\n &::before {\r\n margin: 0 auto;\r\n border-color: transparent transparent $app-primary-color transparent;\r\n }\r\n }\r\n }\r\n .mapboxgl-popup-content {\r\n border-radius: 4px;\r\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);\r\n pointer-events: none;\r\n display: none;\r\n background: #fff;\r\n border: 1px solid $app-primary-color;\r\n padding-left: 6px;\r\n padding-right: 6px;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n &::after,\r\n &::before {\r\n content: \"\";\r\n display: block;\r\n position: absolute;\r\n width: 0;\r\n height: 0;\r\n border-style: solid;\r\n flex-shrink: 0;\r\n }\r\n }\r\n .mapboxgl-popup-tip {\r\n display: none;\r\n }\r\n}\r\n\r\n::v-deep .mapboxgl-popup {\r\n &.flatmap-marker-popup {\r\n box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);\r\n pointer-events: auto;\r\n background: #fff;\r\n }\r\n}\r\n\r\n/* Fix for chrome bug where under triangle pops up above one on top of it */\r\n.selector:not(*:root),\r\n::v-deep.flatmap-tooltip-popup {\r\n .mapboxgl-popup-content::after {\r\n top: 99.9%;\r\n }\r\n}\r\n\r\n::v-deep .flatmap-tooltip-dialog {\r\n .mapboxgl-popup-tip {\r\n display: none;\r\n }\r\n}\r\n\r\n::v-deep .flatmap-marker-popup {\r\n .mapboxgl-popup-content {\r\n padding: 0px;\r\n }\r\n}\r\n\r\n::v-deep .flatmapvuer-popover {\r\n .mapboxgl-popup-close-button {\r\n position: absolute;\r\n right: 0.5em;\r\n top: 0;\r\n border: 0;\r\n border-radius: 0 3px 0 0;\r\n cursor: pointer;\r\n background-color: transparent;\r\n font-size: 2.5em;\r\n color: grey;\r\n top: 0.95em;\r\n }\r\n}\r\n\r\n.zoomOut {\r\n padding-left: 8px;\r\n}\r\n\r\n.resetView {\r\n padding-left: 8px;\r\n}\r\n\r\n.background-colour {\r\n bottom: 16px;\r\n position: absolute;\r\n transition: all 1s ease;\r\n}\r\n.background-colour.open {\r\n left: 322px;\r\n}\r\n.background-colour.close {\r\n left: 24px;\r\n}\r\n\r\n::v-deep .background-popper {\r\n padding: 5px 12px;\r\n background-color: #ffffff;\r\n border: 1px solid $app-primary-color;\r\n box-shadow: 0px 2px 12px 0px rgba(0, 0, 0, 0.06);\r\n height: 200px;\r\n width: 175px;\r\n min-width: 175px;\r\n &.el-popper[x-placement^=\"top\"] {\r\n .popper__arrow {\r\n border-top-color: $app-primary-color !important;\r\n &::after {\r\n border-top-color: #fff !important;\r\n }\r\n }\r\n }\r\n}\r\n\r\n.backgroundText {\r\n color: rgb(48, 49, 51);\r\n font-size: 14px;\r\n font-weight: normal;\r\n line-height: 20px;\r\n}\r\n\r\n.backgroundControl {\r\n display: flex;\r\n margin-top: 16px;\r\n}\r\n\r\n.backgroundChoice {\r\n width: 20px;\r\n height: 20px;\r\n border: 1px solid rgb(144, 147, 153);\r\n margin-left: 20px;\r\n &.active {\r\n border: 2px solid $app-primary-color;\r\n }\r\n &:hover {\r\n cursor: pointer;\r\n }\r\n &.white {\r\n background-color: white;\r\n margin-left: 10px;\r\n }\r\n &.black {\r\n background-color: black;\r\n }\r\n &.lightskyblue {\r\n background-color: white;\r\n }\r\n}\r\n\r\n.togglePaths {\r\n top: 201px;\r\n right: 20px;\r\n position: absolute;\r\n}\r\n\r\n.icon-button {\r\n height: 24px !important;\r\n width: 24px !important;\r\n color: $app-primary-color;\r\n &:hover {\r\n cursor: pointer;\r\n }\r\n}\r\n\r\n::v-deep .flatmap-popper {\r\n padding: 6px 4px;\r\n font-size: 12px;\r\n color: rgb(48, 49, 51);\r\n background-color: #f3ecf6;\r\n border: 1px solid $app-primary-color;\r\n white-space: nowrap;\r\n min-width: unset;\r\n &.warning-popper {\r\n min-width: 150px;\r\n max-width: 400px;\r\n word-break: keep-all;\r\n white-space: unset;\r\n }\r\n &.left-popper {\r\n .popper__arrow {\r\n border-left-color: $app-primary-color !important;\r\n &::after {\r\n border-left-color: #f3ecf6 !important;\r\n }\r\n }\r\n }\r\n &.right-popper {\r\n .popper__arrow {\r\n border-right-color: $app-primary-color !important;\r\n &:after {\r\n border-right-color: #f3ecf6 !important;\r\n }\r\n }\r\n }\r\n &.el-popper[x-placement^=\"top\"] {\r\n .popper__arrow {\r\n border-top-color: $app-primary-color !important;\r\n &:after {\r\n border-top-color: #f3ecf6 !important;\r\n }\r\n }\r\n }\r\n}\r\n\r\n::v-deep .el-loading-spinner {\r\n i,\r\n .el-loading-text {\r\n color: $app-primary-color;\r\n }\r\n}\r\n\r\n::v-deep .flatmap-popup-popper {\r\n .mapboxgl-popup-tip {\r\n border-bottom-color: $app-primary-color;\r\n }\r\n .mapboxgl-popup-content {\r\n padding: 6px 4px;\r\n font-size: 12px;\r\n color: rgb(48, 49, 51);\r\n background-color: #f3ecf6;\r\n border: 1px solid $app-primary-color;\r\n white-space: nowrap;\r\n min-width: unset;\r\n .mapboxgl-popup-close-button {\r\n display: none;\r\n }\r\n }\r\n}\r\n\r\n::v-deep .flatmap-popper {\r\n \r\n}\r\n\r\n::v-deep .popper-zoomout {\r\n padding-right: 13px !important;\r\n left: -21px !important;\r\n}\r\n\r\n::v-deep .popper-zoomout {\r\n .popper__arrow {\r\n left: 53px !important;\r\n }\r\n}\r\n\r\n::v-deep .mapboxgl-popup-content {\r\n padding: 0px;\r\n}\r\n\r\n.bottom-right-control {\r\n position: absolute;\r\n right: 16px;\r\n bottom: 16px;\r\n}\r\n\r\n::v-deep .my-drawer {\r\n background: rgba(0, 0, 0, 0);\r\n box-shadow: none;\r\n}\r\n\r\n.drawer {\r\n ::v-deep .el-drawer:focus {\r\n outline: none;\r\n }\r\n}\r\n\r\n.open-drawer,\r\n.drawer-button {\r\n z-index: 8;\r\n width: 20px;\r\n height: 40px;\r\n border: solid 1px #e4e7ed;\r\n text-align: center;\r\n vertical-align: middle;\r\n cursor: pointer;\r\n pointer-events: auto;\r\n}\r\n\r\n.open-drawer {\r\n position: absolute;\r\n left: 0px;\r\n background-color: #f7faff;\r\n box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.06);\r\n}\r\n\r\n.drawer-button {\r\n float: left;\r\n margin-top: calc(50% - 36px);\r\n border-left: 0;\r\n background-color: #ffffff;\r\n i {\r\n margin-top: 12px;\r\n color: $app-primary-color;\r\n transition-delay: 0.9s;\r\n }\r\n &.open {\r\n i {\r\n transform: rotate(0deg) scaleY(2.5);\r\n }\r\n }\r\n &.close {\r\n i {\r\n transform: rotate(180deg) scaleY(2.5);\r\n }\r\n }\r\n}\r\n\r\n::v-deep .mapboxgl-canvas-container {\r\n canvas {\r\n outline: none;\r\n }\r\n}\r\n\r\n.backgroundSpacer {\r\n border-bottom: 1px solid #e4e7ed;\r\n margin-bottom: 10px;\r\n}\r\n\r\n.flatmap-radio {\r\n ::v-deep label {\r\n margin-right: 20px;\r\n &:last-child {\r\n margin-right: 0px;\r\n }\r\n }\r\n .el-radio__input {\r\n &.is-checked {\r\n & + .el-radio__label {\r\n color: $app-primary-color;\r\n }\r\n .el-radio__inner {\r\n border-color: $app-primary-color;\r\n background: $app-primary-color;\r\n }\r\n }\r\n }\r\n}\r\n</style>\r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FlatmapVuer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FlatmapVuer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FlatmapVuer.vue?vue&type=template&id=f7035e5c&scoped=true&\"\nimport script from \"./FlatmapVuer.vue?vue&type=script&lang=js&\"\nexport * from \"./FlatmapVuer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FlatmapVuer.vue?vue&type=style&index=0&id=f7035e5c&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"f7035e5c\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"multi-container\"},[_c('div',{staticStyle:{\"position\":\"absolute\",\"z-index\":\"10\"}},[_c('div',{staticClass:\"species-display-text\"},[_vm._v(\" Species \")]),_c('el-popover',{ref:\"selectPopover\",attrs:{\"content\":\"Select a species\",\"placement\":\"right\",\"appendToBody\":false,\"trigger\":\"manual\",\"popper-class\":\"flatmap-popper right-popper\"},model:{value:(_vm.helpMode),callback:function ($$v) {_vm.helpMode=$$v},expression:\"helpMode\"}}),_c('el-select',{directives:[{name:\"popover\",rawName:\"v-popover:selectPopover\",arg:\"selectPopover\"}],staticClass:\"select-box\",attrs:{\"id\":\"flatmap-select\",\"popper-append-to-body\":_vm.appendToBody,\"placeholder\":\"Select\",\"popper-class\":\"flatmap_dropdown\"},on:{\"change\":_vm.flatmapChanged},model:{value:(_vm.activeSpecies),callback:function ($$v) {_vm.activeSpecies=$$v},expression:\"activeSpecies\"}},_vm._l((_vm.speciesList),function(item,key){return _c('el-option',{key:key,attrs:{\"label\":key,\"value\":key}},[_c('el-row',[_c('el-col',{attrs:{\"span\":8}},[_c('i',{class:item.iconClass})]),_c('el-col',{attrs:{\"span\":12}},[_vm._v(_vm._s(key))])],1)],1)}),1)],1),_vm._l((_vm.speciesList),function(item,key){return _c('FlatmapVuer',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.activeSpecies==key),expression:\"activeSpecies==key\"}],key:key,ref:key,refInFor:true,staticStyle:{\"height\":\"100%\"},attrs:{\"showLayer\":_vm.showLayer,\"entry\":item.taxo,\"displayWarning\":item.displayWarning,\"warningMessage\":_vm.warningMessage,\"featureInfo\":_vm.featureInfo,\"minZoom\":_vm.minZoom,\"pathControls\":_vm.pathControls,\"searchable\":_vm.searchable,\"helpMode\":_vm.helpMode,\"renderAtMounted\":_vm.renderAtMounted,\"displayMinimap\":_vm.displayMinimap,\"flatmapAPI\":_vm.flatmapAPI},on:{\"resource-selected\":_vm.FlatmapSelected,\"ready\":_vm.FlatmapReady}})})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <div class=\"multi-container\">\r\n <div style=\"position:absolute;z-index:10;\">\r\n <div class=\"species-display-text\">\r\n Species\r\n </div>\r\n <el-popover content=\"Select a species\" placement=\"right\" \r\n :appendToBody=false trigger=\"manual\" popper-class=\"flatmap-popper right-popper\" v-model=\"helpMode\" ref=\"selectPopover\">\r\n </el-popover>\r\n <el-select\r\n id=\"flatmap-select\"\r\n :popper-append-to-body=\"appendToBody\"\r\n v-model=\"activeSpecies\"\r\n placeholder=\"Select\"\r\n class=\"select-box\"\r\n popper-class=\"flatmap_dropdown\"\r\n @change=\"flatmapChanged\"\r\n v-popover:selectPopover\r\n >\r\n <el-option v-for=\"(item, key) in speciesList\" :key=\"key\" :label=\"key\" :value=\"key\">\r\n <el-row>\r\n <el-col :span=\"8\"><i :class=\"item.iconClass\"></i></el-col>\r\n <el-col :span=\"12\">{{ key }}</el-col>\r\n </el-row>\r\n </el-option>\r\n </el-select>\r\n </div>\r\n <FlatmapVuer\r\n v-for=\"(item, key) in speciesList\"\r\n :key=\"key\"\r\n :showLayer=\"showLayer\"\r\n v-show=\"activeSpecies==key\"\r\n :entry=\"item.taxo\"\r\n :displayWarning=\"item.displayWarning\"\r\n :warningMessage=\"warningMessage\"\r\n :ref=\"key\"\r\n @resource-selected=\"FlatmapSelected\"\r\n @ready=\"FlatmapReady\"\r\n :featureInfo=\"featureInfo\"\r\n :minZoom=\"minZoom\"\r\n :pathControls=\"pathControls\"\r\n :searchable=\"searchable\"\r\n :helpMode=\"helpMode\"\r\n :renderAtMounted=\"renderAtMounted\"\r\n :displayMinimap=\"displayMinimap\"\r\n style=\"height:100%\"\r\n :flatmapAPI=\"flatmapAPI\"\r\n />\r\n </div>\r\n</template>\r\n\r\n\r\n<script>\r\n/* eslint-disable no-alert, no-console */\r\nimport Vue from \"vue\";\r\nimport FlatmapVuer from \"./FlatmapVuer.vue\";\r\nimport { Col, Option, Select, Row, Popover } from \"element-ui\"; \r\nimport lang from \"element-ui/lib/locale/lang/en\";\r\nimport locale from \"element-ui/lib/locale\";\r\nlocale.use(lang);\r\nVue.use(Col);\r\nVue.use(Row);\r\nVue.use(Option);\r\nVue.use(Select);\r\nVue.use(Popover)\r\n\r\n\r\nexport default {\r\n name: \"MultiFlatmapVuer\",\r\n components: {\r\n FlatmapVuer\r\n },\r\n mounted: function() {\r\n this.initialise();\r\n },\r\n methods: {\r\n initialise: function() {\r\n return new Promise(resolve => {\r\n fetch(this.flatmapAPI)\r\n .then(response => response.json())\r\n .then(data => {\r\n this.speciesLis= {};\r\n Object.keys(this.availableSpecies).forEach(key => {\r\n for (let i = 0; i < data.length; i++) {\r\n if (data[i].describes == this.availableSpecies[key].taxo) {\r\n this.speciesList[key] = this.availableSpecies[key];\r\n break;\r\n }\r\n }\r\n });\r\n if (!this.state) {\r\n if (this.initial && this.speciesList[this.initial] !== undefined) {\r\n this.activeSpecies = this.initial;\r\n } else {\r\n this.activeSpecies = Object.keys(this.speciesList)[0];\r\n }\r\n Vue.nextTick(() => {\r\n if (this.$refs[this.activeSpecies])\r\n this.$refs[this.activeSpecies][0].createFlatmap();\r\n });\r\n }\r\n resolve();\r\n });\r\n })\r\n },\r\n FlatmapSelected: function(resource) {\r\n this.$emit(\"resource-selected\", resource);\r\n },\r\n FlatmapReady: function(component) {\r\n this.$emit(\"ready\", component);\r\n },\r\n getCoordinatesOfLastClick: function() {\r\n const flatmap = this.$refs[this.activeSpecies];\r\n if (flatmap && flatmap[0]) {\r\n return flatmap[0].getCoordinatesOfLastClick();\r\n }\r\n return undefined;\r\n },\r\n getCurrentFlatmap: function() {\r\n return this.$refs[this.activeSpecies][0];\r\n },\r\n showPopup: function(featureId, node, options) {\r\n let map = this.getCurrentFlatmap();\r\n map.showPopup(featureId, node, options);\r\n },\r\n showMarkerPopup: function(featureId, node, options) {\r\n let map = this.getCurrentFlatmap();\r\n map.showMarkerPopup(featureId, node, options);\r\n },\r\n flatmapChanged: function(species){\r\n if (this.activeSpecies != species) \r\n this.activeSpecies = species;\r\n this.$refs[this.activeSpecies][0].createFlatmap();\r\n this.$emit('flatmapChanged', this.activeSpecies);\r\n },\r\n /**\r\n * Function used for getting the current states of the scene. This exported states \r\n * can be imported using the importStates method.\r\n * \r\n * @public\r\n */\r\n getState: function() {\r\n let state = {\r\n species: this.activeSpecies,\r\n state: undefined,\r\n };\r\n let map = this.getCurrentFlatmap();\r\n state.state = map.getState();\r\n return state;\r\n },\r\n /**\r\n * Function used for importing the states of the scene. This exported states \r\n * can be imported using the read states method.\r\n * \r\n * @public\r\n */\r\n setState: function(state) {\r\n if (state) {\r\n this.initialise().then(() => {\r\n if (state.species && state.species !== this.activeSpecies) {\r\n this.activeSpecies = state.species;\r\n if (state.state) {\r\n //Wait for next tick when the refs are ready for rendering\r\n this.$nextTick(() => {\r\n this.$refs[this.activeSpecies][0].createFlatmap(state.state);\r\n this.$emit('flatmapChanged', this.activeSpecies);\r\n })\r\n }\r\n } else if (state.state) {\r\n let map = this.getCurrentFlatmap();\r\n map.setState(state.state);\r\n }\r\n })\r\n }\r\n },\r\n resourceSelected: function(action) {\r\n this.$emit(\"resource-selected\", action);\r\n },\r\n },\r\n props: {\r\n showLayer: {\r\n type: Boolean,\r\n default: false\r\n },\r\n featureInfo: {\r\n type: Boolean,\r\n default: false\r\n },\r\n pathControls: {\r\n type: Boolean,\r\n default: true\r\n },\r\n searchable: {\r\n type: Boolean,\r\n default: false\r\n },\r\n /**\r\n * Initial species for the flatmap.\r\n * This value will be ignored if a valid state object is provided.\r\n */\r\n initial: {\r\n type: String,\r\n default: \"\"\r\n },\r\n minZoom: {\r\n type: Number,\r\n default: 4\r\n },\r\n renderAtMounted: {\r\n type: Boolean,\r\n default: false\r\n },\r\n helpMode: {\r\n type: Boolean,\r\n default: false\r\n },\r\n displayMinimap: {\r\n type: Boolean,\r\n default: false\r\n },\r\n warningMessage: {\r\n type: String,\r\n default: \"Beta feature - This map is based on the connectivity of a rat. New connectivity and species specificity will be added as the SPARC program progress.\"\r\n },\r\n availableSpecies: {},\r\n /**\r\n * State containing state of the flatmap.\r\n */\r\n state: {\r\n type: Object,\r\n default: undefined,\r\n },\r\n /**\r\n * Specify the endpoint of the flatmap server.\r\n */\r\n flatmapAPI: {\r\n type: String,\r\n default: \"https://mapcore-demo.org/flatmaps/\"\r\n },\r\n },\r\n data: function() {\r\n return {\r\n activeSpecies: undefined,\r\n appendToBody: false,\r\n speciesList: {}\r\n };\r\n },\r\n watch: {\r\n state: {\r\n handler: function(state) {\r\n this.setState(state);\r\n },\r\n immediate: true,\r\n deep: true,\r\n }\r\n }\r\n};\r\n</script>\r\n\r\n<style scoped lang=\"scss\">\r\n@import \"~element-ui/packages/theme-chalk/src/select\";\r\n@import \"~element-ui/packages/theme-chalk/src/option\";\r\n\r\n.multi-container {\r\n height: 100%;\r\n width: 100%;\r\n}\r\n\r\n.species-display-text {\r\n width: 47px;\r\n height: 20px;\r\n color: rgb(48, 49, 51);\r\n font-size: 14px;\r\n font-weight: normal;\r\n line-height: 20px;\r\n left:24px;\r\n top:16px;\r\n position: absolute;\r\n}\r\n\r\n.select-box {\r\n width: 120px;\r\n border-radius: 4px;\r\n border: 1px solid rgb(144, 147, 153);\r\n background-color: var(--white);\r\n font-weight: 500;\r\n color:rgb(48, 49, 51);;\r\n left: 16px;\r\n top: 44px;\r\n position: absolute;\r\n ::v-deep .el-input__inner {\r\n color: rgb(48, 49, 51);\r\n padding-top: 0.25em;\r\n .is-focus {\r\n border: 1px solid $app-primary-color;\r\n }\r\n }\r\n}\r\n\r\n.flatmap_dropdown {\r\n .el-select-dropdown__item {\r\n white-space: nowrap;\r\n text-align: left;\r\n &.selected {\r\n color: $app-primary-color;\r\n font-weight: normal;\r\n }\r\n }\r\n}\r\n\r\n::v-deep .flatmap-popper {\r\n padding: 6px 4px;\r\n font-size:12px;\r\n color: rgb(48, 49, 51);\r\n background-color: #f3ecf6;\r\n border: 1px solid $app-primary-color;\r\n white-space: nowrap;\r\n min-width: unset;\r\n &.right-popper {\r\n .popper__arrow {\r\n border-right-color: $app-primary-color !important;\r\n &:after {\r\n border-right-color: #f3ecf6 !important;\r\n }\r\n }\r\n }\r\n}\r\n\r\n::v-deep .flatmap-marker-popup{\r\n background-color: #f0f0f000 !important;\r\n box-shadow: none !important;\r\n}\r\n\r\n</style>\r\n\r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MultiFlatmapVuer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MultiFlatmapVuer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MultiFlatmapVuer.vue?vue&type=template&id=45aec25f&scoped=true&\"\nimport script from \"./MultiFlatmapVuer.vue?vue&type=script&lang=js&\"\nexport * from \"./MultiFlatmapVuer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MultiFlatmapVuer.vue?vue&type=style&index=0&id=45aec25f&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"45aec25f\",\n null\n \n)\n\nexport default component.exports","// The Vue build version to load with the `import` command\r\n// (runtime-only or standalone) has been set in webpack.base.conf with an alias.\r\nimport FlatmapVuer from \"./FlatmapVuer.vue\";\r\nimport MultiFlatmapVuer from \"./MultiFlatmapVuer.vue\";\r\n \r\nexport {\r\n FlatmapVuer,\r\n MultiFlatmapVuer\r\n};\r\n","import './setPublicPath'\nexport * from '~entry'\n","module.exports = require(\"core-js/modules/es.string.includes.js\");","module.exports = require(\"element-ui/lib/theme-chalk/row.css\");","module.exports = require(\"element-ui/lib/radio-group\");"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack://flatmapvuer/webpack/universalModuleDefinition","webpack://flatmapvuer/webpack/bootstrap","webpack://flatmapvuer/external \"element-ui/lib/checkbox-group\"","webpack://flatmapvuer/external \"core-js/modules/es.string.split.js\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/checkbox-group.css\"","webpack://flatmapvuer/external \"element-ui/lib/select\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/select.css\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/radio-group.css\"","webpack://flatmapvuer/external \"core-js/modules/web.dom-collections.for-each.js\"","webpack://flatmapvuer/external \"core-js/modules/web.dom-collections.iterator.js\"","webpack://flatmapvuer/external \"element-ui/lib/container\"","webpack://flatmapvuer/external \"core-js/modules/es.string.search.js\"","webpack://flatmapvuer/external \"element-ui/lib/main\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/link.css\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/button.css\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/radio.css\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/loading.css\"","webpack://flatmapvuer/external \"element-ui/lib/header\"","webpack://flatmapvuer/external \"core-js/modules/es.symbol.iterator.js\"","webpack://flatmapvuer/external \"core-js/modules/es.regexp.to-string.js\"","webpack://flatmapvuer/./src/components/PubmedViewer.vue?d298","webpack://flatmapvuer/./src/components/FlatmapVuer.vue?c3cc","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/carousel.css\"","webpack://flatmapvuer/external \"@abi-software/svg-sprite\"","webpack://flatmapvuer/external \"core-js/modules/es.array.from.js\"","webpack://flatmapvuer/external \"core-js/modules/es.array.map.js\"","webpack://flatmapvuer/external \"core-js/modules/es.symbol.description.js\"","webpack://flatmapvuer/external \"@abi-software/flatmap-viewer\"","webpack://flatmapvuer/external \"core-js/modules/es.array.iterator.js\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/header.css\"","webpack://flatmapvuer/external \"element-ui/lib/radio\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/checkbox.css\"","webpack://flatmapvuer/external \"element-ui/lib/button\"","webpack://flatmapvuer/external \"core-js/modules/es.string.replace.js\"","webpack://flatmapvuer/external \"element-ui/lib/locale/lang/en\"","webpack://flatmapvuer/external \"element-ui/lib/row\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/col.css\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/main.css\"","webpack://flatmapvuer/external \"element-ui/lib/link\"","webpack://flatmapvuer/external \"element-ui/lib/locale\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/option.css\"","webpack://flatmapvuer/external \"core-js/modules/es.set.js\"","webpack://flatmapvuer/external \"core-js/modules/es.array.includes.js\"","webpack://flatmapvuer/external \"vue\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/icon.css\"","webpack://flatmapvuer/external \"element-ui/lib/popover\"","webpack://flatmapvuer/external \"core-js/modules/es.object.to-string.js\"","webpack://flatmapvuer/./src/components/MultiFlatmapVuer.vue?c957","webpack://flatmapvuer/./src/components/MultiFlatmapVuer.vue?42e6","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/base.css\"","webpack://flatmapvuer/external \"core-js/modules/es.symbol.js\"","webpack://flatmapvuer/external \"@soda/get-current-script\"","webpack://flatmapvuer/external \"core-js/modules/es.string.iterator.js\"","webpack://flatmapvuer/external \"element-ui/lib/carousel\"","webpack://flatmapvuer/external \"element-ui/lib/col\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/popover.css\"","webpack://flatmapvuer/external \"element-ui/lib/loading\"","webpack://flatmapvuer/external \"css-element-queries/src/ResizeSensor\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/container.css\"","webpack://flatmapvuer/external \"element-ui/lib/icon\"","webpack://flatmapvuer/external \"element-ui/lib/checkbox\"","webpack://flatmapvuer/external \"core-js/modules/web.url.js\"","webpack://flatmapvuer/./src/components/Tooltip.vue?c9a1","webpack://flatmapvuer/./src/components/FlatmapVuer.vue?11bf","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/carousel-item.css\"","webpack://flatmapvuer/external \"element-ui/lib/option\"","webpack://flatmapvuer/external \"element-ui/lib/carousel-item\"","webpack://flatmapvuer/./src/components/Tooltip.vue?d570","webpack://flatmapvuer/external \"core-js/modules/es.regexp.exec.js\"","webpack://flatmapvuer/external \"core-js/modules/es.function.name.js\"","webpack://flatmapvuer/external \"core-js/modules/es.array.slice.js\"","webpack://flatmapvuer/external \"core-js/modules/es.object.keys.js\"","webpack://flatmapvuer/external \"core-js/modules/es.promise.js\"","webpack://flatmapvuer/./src/components/PubmedViewer.vue?a745","webpack://flatmapvuer/external \"core-js/modules/es.number.constructor.js\"","webpack://flatmapvuer/./node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js","webpack://flatmapvuer/./src/components/FlatmapVuer.vue?11e3","webpack://flatmapvuer/./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack://flatmapvuer/./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack://flatmapvuer/./node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js","webpack://flatmapvuer/./src/components/Tooltip.vue?637e","webpack://flatmapvuer/./src/components/PubmedViewer.vue?7d03","webpack://flatmapvuer/./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","webpack://flatmapvuer/./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","webpack://flatmapvuer/./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","webpack://flatmapvuer/./node_modules/@babel/runtime/helpers/esm/slicedToArray.js","webpack://flatmapvuer/src/components/PubmedViewer.vue","webpack://flatmapvuer/./src/components/PubmedViewer.vue?8f41","webpack://flatmapvuer/./node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack://flatmapvuer/./src/components/PubmedViewer.vue","webpack://flatmapvuer/src/components/Tooltip.vue","webpack://flatmapvuer/./src/components/Tooltip.vue?0f87","webpack://flatmapvuer/./src/components/Tooltip.vue","webpack://flatmapvuer/./src/icons/flatmap-marker.js","webpack://flatmapvuer/src/components/FlatmapVuer.vue","webpack://flatmapvuer/./src/components/FlatmapVuer.vue?f442","webpack://flatmapvuer/./src/components/FlatmapVuer.vue","webpack://flatmapvuer/./src/components/MultiFlatmapVuer.vue?6b30","webpack://flatmapvuer/src/components/MultiFlatmapVuer.vue","webpack://flatmapvuer/./src/components/MultiFlatmapVuer.vue?6257","webpack://flatmapvuer/./src/components/MultiFlatmapVuer.vue","webpack://flatmapvuer/./src/components/index.js","webpack://flatmapvuer/./node_modules/@vue/cli-service/lib/commands/build/entry-lib-no-default.js","webpack://flatmapvuer/external \"core-js/modules/es.string.includes.js\"","webpack://flatmapvuer/external \"element-ui/lib/theme-chalk/row.css\"","webpack://flatmapvuer/external \"element-ui/lib/radio-group\""],"names":["_arrayLikeToArray","arr","len","length","i","arr2","Array","_unsupportedIterableToArray","o","minLen","arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","from","test","_createForOfIteratorHelper","allowArrayLike","it","Symbol","iterator","isArray","unsupportedIterableToArray","F","s","done","value","e","_e","f","TypeError","normalCompletion","didErr","err","step","next","_e2","_arrayWithHoles","_iterableToArrayLimit","_i","_arr","_n","_d","_s","push","_nonIterableRest","_slicedToArray","arrayWithHoles","iterableToArrayLimit","nonIterableRest"],"mappings":"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fA;AAgBA,aAhBA,qBAgBA,kBAhBA,EAgBA;AACA;AACA;AACA,KAnBA;AAoBA;AAAA;;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AACA,sBADA;AAEA;AACA;AADA,SAFA;AAKA;AALA,SAOA,IAPA,CAOA;AAAA;AAAA,OAPA,EAQA,IARA,CAQA;AACA;AACA;AACA;AACA;;AACA;AACA;AAAA;AAAA;AAAA;;AACA;AAAA;AAAA;AAAA;AAAA;AAEA,WAJA;AAKA,SAPA;;AAQA;AAAA;AAAA;AACA,OApBA,EAqBA,KArBA,CAqBA;AACA;AACA,OAvBA;AAwBA,KAjDA;AAkDA;AACA;AACA;AACA;AACA;AACA;AAvDA;AAjCA,G;;ACtCsU,CAAgB,wHAAG,EAAC,C;;;;;ACA1V;;AAEA;AACA;AACA;;AAEe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;ACjGuG;AACvC;AACL;AACsC;;;AAGjG;AAC0F;AAC1F,gBAAgB,kBAAU;AAC1B,EAAE,+CAAM;AACR,EAAE,4DAAM;AACR,EAAE,qEAAe;AACjB;AACA;AACA;AACA;;AAEA;;AAEe,kE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACmBf;AACA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;;AAEA;AACA;AAAA;AAAA;AACA,CAFA;;AAIA;AACA;AAAA;AAAA,GADA;AAEA,iBAFA;AAGA;AACA;AACA,mBADA;AAEA;AAFA,KADA;AAKA;AACA,kBADA;AAEA;AAFA,KALA;;AASA;AACA;AACA;AACA;AACA,kBADA;AAEA;AAFA;AAZA,GAHA;AAoBA;AACA;AACA,8BADA;AAEA,yBAFA;AAGA;AAHA;AAKA,GA1BA;AA2BA;AACA;AACA;AACA,KAHA;AAIA;AACA;AACA,KANA;AAOA;AACA;AACA,KATA;AAUA;AACA;AACA,KAZA;AAaA;AACA;AACA;AAfA;AA3BA,G;;AC9DiU,CAAgB,8GAAG,EAAC,C;;;;;ACAnP;AACvC;AACL;AACsC;;;AAG5F;AAC0F;AAC1F,IAAI,iBAAS,GAAG,kBAAU;AAC1B,EAAE,0CAAM;AACR,EAAE,uDAAM;AACR,EAAE,gEAAe;AACjB;AACA;AACA;AACA;;AAEA;;AAEe,6DAAS,Q;;;;;ACnBT,2hEAAf,E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACkOA;AACA;AACA;AACA;AAUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;;AAEA;AACA;AACA;AACA,GAFA;AAGA,CAJA;;AAMA;AACA,qBADA;AAEA;AACA,yCADA;AAEA,uDAFA;AAGA;AAHA,GAFA;AAOA;AACA;AACA;AACA,GAVA;AAWA;AACA;AACA;;AACA;AACA;AACA;AACA,KANA;AAOA;AACA;AACA,KATA;;AAUA;AACA;AACA;AACA;AACA;;AACA;AACA;AAAA;AAAA;AAAA;AACA;AACA,KAlBA;;AAmBA;AACA;AACA;AACA;AACA;;AACA;AACA;AAAA;AAAA;AAAA;AACA;AACA,KA3BA;;AA4BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA,KAvCA;;AAwCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAhDA;;AAiDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAzDA;AA0DA;AACA;AACA;AACA;AACA,KA9DA;AA+DA;AACA;AACA;AACA,6BACA,uDADA;AAEA,KApEA;AAqEA,wBArEA,gCAqEA,GArEA,EAqEA;AACA;AAAA;AAAA;AACA;;AACA;AACA;AACA;AACA,KA3EA;AA4EA;AACA;AACA,KA9EA;AA+EA;AAAA;;AACA;AACA;AACA;AACA;AACA;;AAHA,4CADA,IACA;AADA,gBACA;AAAA;;AAIA;AACA,iCADA;AAEA,8BAFA;AAGA,8BAHA;AAIA,wBAJA;AAKA,yBALA;AAMA,0BANA;AAOA;AAPA,YAJA,CAaA;;AACA,8CACA;;AACA;AACA,SAjBA,MAiBA;AACA;AACA;AACA,OArBA;AAsBA,KAtGA;AAuGA;AACA;AACA,UACA,6BACA,0CAFA,EAGA;AACA,8BACA,gDADA,EAEA,sBAFA,EAGA;AAAA;AAAA,SAHA;AAKA;AACA;AACA,KApHA;AAqHA;AACA;AACA;AACA;AACA,6EACA,OADA;AAEA;;AACA;AACA,yEACA,OADA;AAEA,OAHA;AAIA,KAhIA;AAiIA;AACA;AACA,KAnIA;AAoIA;AACA;AACA;AACA,wBADA;AAEA,6BAFA;AAGA,wBAHA;AAIA,+BAJA;AAKA;AALA;AAQA;AACA,kCAXA,CAaA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCADA;AAEA,oCAFA;AAGA,2CAHA;AAIA,iCAJA;AAKA;AALA;AAOA;AACA,OA9BA,CA+BA;;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BADA;AAEA,gCAFA;AAGA,qBAHA;AAIA;AAJA;AAMA;;AAEA;AACA;AACA,OAFA,MAEA;AACA;AACA;AACA,KAvLA;AAwLA;AACA;AACA;;AACA;AACA;AACA;AACA,SAFA,MAEA;AACA;AAAA;AAAA;AACA;;AACA;AACA;AACA,KAnMA;AAoMA;AACA;AACA;AACA;AACA,KAxMA;AAyMA;AACA;AACA;AACA;AACA;AACA,SAFA;AAGA;AACA,OANA,MAMA;AACA;AACA;AACA;AACA,SAFA;AAGA;AACA;AACA,KAvNA;AAwNA;AAAA;;AACA;AACA;AACA;AACA,SAFA,EAEA,GAFA;AAGA;AACA,KA9NA;AA+NA;AACA;AACA;AACA;AACA;AACA,KApOA;AAqOA;AACA;AACA;AACA;AACA;AACA,uBADA;AAEA;AAFA;AAIA;AACA,KA9OA;AA+OA;AACA,eACA,gBADA,CACA,8BADA,EAEA,OAFA,CAEA;AACA;AACA,OAJA;AAKA,KArPA;AAsPA;AACA;;AACA;AACA;;AADA,mDAEA,oBAFA;AAAA;;AAAA;AAEA;AAAA;AACA;AACA;AAJA;AAAA;AAAA;AAAA;AAAA;;AAKA;AACA;AACA,KA/PA;AAgQA;AACA;AACA;AACA,2BADA;AAEA;AAFA;AAIA;AACA;;AACA;AACA,KAzQA;AA0QA;AACA;AACA;AACA,yCACA;AACA;AACA;AACA,SALA,MAKA;AACA;AACA;AACA;AACA,KArRA;AAsRA;AAAA;;AACA;AACA;AACA;;AACA;AACA;AAAA;AAAA;AACA;;AACA;AACA;AACA,+CACA,KADA,EAEA,kBAFA,EAGA,oBAHA,EAIA;AACA;AACA;AACA;AACA,uCAJA;AAKA,kCALA;AAMA,6BANA;AAOA,qCAPA;AAQA,iCARA;AASA;AATA,SAJA;AAgBA;AACA;AACA,2CACA,oBADA,EAEA,wBAFA;;AAIA;;AACA;;AACA;;AACA;;AACA;AACA,uCACA,gDADA,KAEA,6BACA;AACA,SAfA;AAgBA,OAxCA,MAwCA;AACA;AACA;AACA,KAlUA;AAmUA;AACA,uBACA;AACA,KAtUA;AAuUA;AACA;AACA,KAzUA;;AA0UA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAFA,MAEA;AACA;AACA,sEACA,6CADA,KAEA;AACA;AACA;AACA;AAxVA,GAXA;AAqWA;AACA,iBADA;AAEA;AACA,mBADA;AAEA;AAFA,KAF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","file":"flatmapvuer.umd.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"flatmapvuer\"] = factory();\n\telse\n\t\troot[\"flatmapvuer\"] = factory();\n})((typeof self !== 'undefined' ? self : this), function() {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"fae3\");\n","module.exports = require(\"element-ui/lib/checkbox-group\");","module.exports = require(\"core-js/modules/es.string.split.js\");","module.exports = require(\"element-ui/lib/theme-chalk/checkbox-group.css\");","module.exports = require(\"element-ui/lib/select\");","module.exports = require(\"element-ui/lib/theme-chalk/select.css\");","module.exports = require(\"element-ui/lib/theme-chalk/radio-group.css\");","module.exports = require(\"core-js/modules/web.dom-collections.for-each.js\");","module.exports = require(\"core-js/modules/web.dom-collections.iterator.js\");","module.exports = require(\"element-ui/lib/container\");","module.exports = require(\"core-js/modules/es.string.search.js\");","module.exports = require(\"element-ui/lib/main\");","module.exports = require(\"element-ui/lib/theme-chalk/link.css\");","module.exports = require(\"element-ui/lib/theme-chalk/button.css\");","module.exports = require(\"element-ui/lib/theme-chalk/radio.css\");","module.exports = require(\"element-ui/lib/theme-chalk/loading.css\");","module.exports = require(\"element-ui/lib/header\");","module.exports = require(\"core-js/modules/es.symbol.iterator.js\");","module.exports = require(\"core-js/modules/es.regexp.to-string.js\");","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PubmedViewer.vue?vue&type=style&index=0&id=06d0e387&scoped=true&lang=scss&\"","// extracted by mini-css-extract-plugin","module.exports = require(\"element-ui/lib/theme-chalk/carousel.css\");","module.exports = require(\"@abi-software/svg-sprite\");","module.exports = require(\"core-js/modules/es.array.from.js\");","module.exports = require(\"core-js/modules/es.array.map.js\");","module.exports = require(\"core-js/modules/es.symbol.description.js\");","module.exports = require(\"@abi-software/flatmap-viewer\");","module.exports = require(\"core-js/modules/es.array.iterator.js\");","module.exports = require(\"element-ui/lib/theme-chalk/header.css\");","module.exports = require(\"element-ui/lib/radio\");","module.exports = require(\"element-ui/lib/theme-chalk/checkbox.css\");","module.exports = require(\"element-ui/lib/button\");","module.exports = require(\"core-js/modules/es.string.replace.js\");","module.exports = require(\"element-ui/lib/locale/lang/en\");","module.exports = require(\"element-ui/lib/row\");","module.exports = require(\"element-ui/lib/theme-chalk/col.css\");","module.exports = require(\"element-ui/lib/theme-chalk/main.css\");","module.exports = require(\"element-ui/lib/link\");","module.exports = require(\"element-ui/lib/locale\");","module.exports = require(\"element-ui/lib/theme-chalk/option.css\");","module.exports = require(\"core-js/modules/es.set.js\");","module.exports = require(\"core-js/modules/es.array.includes.js\");","module.exports = require(\"vue\");","module.exports = require(\"element-ui/lib/theme-chalk/icon.css\");","module.exports = require(\"element-ui/lib/popover\");","module.exports = require(\"core-js/modules/es.object.to-string.js\");","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MultiFlatmapVuer.vue?vue&type=style&index=0&id=01b30450&scoped=true&lang=scss&\"","// extracted by mini-css-extract-plugin","module.exports = require(\"element-ui/lib/theme-chalk/base.css\");","module.exports = require(\"core-js/modules/es.symbol.js\");","module.exports = require(\"@soda/get-current-script\");","module.exports = require(\"core-js/modules/es.string.iterator.js\");","module.exports = require(\"element-ui/lib/carousel\");","module.exports = require(\"element-ui/lib/col\");","module.exports = require(\"element-ui/lib/theme-chalk/popover.css\");","module.exports = require(\"element-ui/lib/loading\");","module.exports = require(\"css-element-queries/src/ResizeSensor\");","module.exports = require(\"element-ui/lib/theme-chalk/container.css\");","module.exports = require(\"element-ui/lib/icon\");","module.exports = require(\"element-ui/lib/checkbox\");","module.exports = require(\"core-js/modules/web.url.js\");","// extracted by mini-css-extract-plugin","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FlatmapVuer.vue?vue&type=style&index=0&id=5fb00c0b&scoped=true&lang=scss&\"","module.exports = require(\"element-ui/lib/theme-chalk/carousel-item.css\");","module.exports = require(\"element-ui/lib/option\");","module.exports = require(\"element-ui/lib/carousel-item\");","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tooltip.vue?vue&type=style&index=0&id=4802b201&scoped=true&lang=scss&\"","module.exports = require(\"core-js/modules/es.regexp.exec.js\");","module.exports = require(\"core-js/modules/es.function.name.js\");","module.exports = require(\"core-js/modules/es.array.slice.js\");","module.exports = require(\"core-js/modules/es.object.keys.js\");","module.exports = require(\"core-js/modules/es.promise.js\");","// extracted by mini-css-extract-plugin","module.exports = require(\"core-js/modules/es.number.constructor.js\");","// This file is imported into lib/wc client bundles.\n\nif (typeof window !== 'undefined') {\n var currentScript = window.document.currentScript\n if (process.env.NEED_CURRENTSCRIPT_POLYFILL) {\n var getCurrentScript = require('@soda/get-current-script')\n currentScript = getCurrentScript()\n\n // for backward compatibility, because previously we directly included the polyfill\n if (!('currentScript' in document)) {\n Object.defineProperty(document, 'currentScript', { get: getCurrentScript })\n }\n }\n\n var src = currentScript && currentScript.src.match(/(.+\\/)[^/]+\\.js(\\?.*)?$/)\n if (src) {\n __webpack_public_path__ = src[1] // eslint-disable-line\n }\n}\n\n// Indicate to webpack that this file can be concatenated\nexport default null\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.loading),expression:\"loading\"}],staticClass:\"flatmap-container\",attrs:{\"element-loading-text\":\"Loading...\",\"element-loading-spinner\":\"el-icon-loading\",\"element-loading-background\":\"rgba(0, 0, 0, 0.3)\"}},[_c('map-svg-sprite-color'),_c('div',{staticStyle:{\"height\":\"100%\",\"width\":\"100%\",\"position\":\"relative\",\"overflow-y\":\"none\"}},[_c('div',{ref:\"display\",staticStyle:{\"height\":\"100%\",\"width\":\"100%\"}}),(_vm.displayWarning)?_c('el-popover',{ref:\"warningPopover\",attrs:{\"content\":_vm.warningMessage,\"placement\":\"right\",\"appendToBody\":false,\"trigger\":\"manual\",\"popper-class\":\"warning-popper flatmap-popper right-popper\"},model:{value:(_vm.hoverVisibilities[6].value),callback:function ($$v) {_vm.$set(_vm.hoverVisibilities[6], \"value\", $$v)},expression:\"hoverVisibilities[6].value\"}}):_vm._e(),(_vm.displayWarning)?_c('i',{directives:[{name:\"popover\",rawName:\"v-popover:warningPopover\",arg:\"warningPopover\"}],staticClass:\"el-icon-warning warning-icon\",on:{\"mouseover\":function($event){return _vm.showToolitip(6)},\"mouseout\":function($event){return _vm.hideToolitip(6)}}},[_c('span',{staticClass:\"warning-text\"},[_vm._v(\"Beta\")])]):_vm._e(),_c('div',{staticClass:\"bottom-right-control\"},[_c('el-popover',{attrs:{\"content\":\"Zoom in\",\"placement\":\"left\",\"appendToBody\":false,\"trigger\":\"manual\",\"popper-class\":\"flatmap-popper left-popper\"},model:{value:(_vm.hoverVisibilities[0].value),callback:function ($$v) {_vm.$set(_vm.hoverVisibilities[0], \"value\", $$v)},expression:\"hoverVisibilities[0].value\"}},[_c('map-svg-icon',{staticClass:\"icon-button zoomIn\",attrs:{\"slot\":\"reference\",\"icon\":\"zoomIn\"},nativeOn:{\"click\":function($event){return _vm.zoomIn()},\"mouseover\":function($event){return _vm.showToolitip(0)},\"mouseout\":function($event){return _vm.hideToolitip(0)}},slot:\"reference\"})],1),_c('el-popover',{attrs:{\"content\":\"Zoom out\",\"placement\":\"top-end\",\"appendToBody\":false,\"trigger\":\"manual\",\"popper-class\":\"flatmap-popper popper-zoomout\"},model:{value:(_vm.hoverVisibilities[1].value),callback:function ($$v) {_vm.$set(_vm.hoverVisibilities[1], \"value\", $$v)},expression:\"hoverVisibilities[1].value\"}},[_c('map-svg-icon',{staticClass:\"icon-button zoomOut\",attrs:{\"slot\":\"reference\",\"icon\":\"zoomOut\"},nativeOn:{\"click\":function($event){return _vm.zoomOut()},\"mouseover\":function($event){return _vm.showToolitip(1)},\"mouseout\":function($event){return _vm.hideToolitip(1)}},slot:\"reference\"})],1),_c('el-popover',{attrs:{\"content\":\"Reset\",\"placement\":\"top\",\"appendToBody\":false,\"trigger\":\"manual\",\"popper-class\":\"flatmap-popper\"},model:{value:(_vm.hoverVisibilities[2].value),callback:function ($$v) {_vm.$set(_vm.hoverVisibilities[2], \"value\", $$v)},expression:\"hoverVisibilities[2].value\"}},[_c('div',[_vm._v(\" Fit to \"),_c('br'),_vm._v(\" window \")]),_c('map-svg-icon',{staticClass:\"icon-button fitWindow\",attrs:{\"slot\":\"reference\",\"icon\":\"fitWindow\"},nativeOn:{\"click\":function($event){return _vm.resetView()},\"mouseover\":function($event){return _vm.showToolitip(2)},\"mouseout\":function($event){return _vm.hideToolitip(2)}},slot:\"reference\"})],1)],1),_c('el-popover',{ref:\"checkBoxPopover\",attrs:{\"content\":\"Change pathway visibility\",\"placement\":\"right\",\"appendToBody\":false,\"trigger\":\"manual\",\"popper-class\":\"flatmap-popper right-popper\"},model:{value:(_vm.hoverVisibilities[4].value),callback:function ($$v) {_vm.$set(_vm.hoverVisibilities[4], \"value\", $$v)},expression:\"hoverVisibilities[4].value\"}}),_c('div',{staticClass:\"pathway-location\",class:{ open: _vm.drawerOpen, close: !_vm.drawerOpen }},[(_vm.pathways.length > 0 && _vm.pathControls)?_c('div',{directives:[{name:\"popover\",rawName:\"v-popover:checkBoxPopover\",arg:\"checkBoxPopover\"}],staticClass:\"pathway-container\"},[_c('el-popover',{ref:\"markerPopover\",attrs:{\"content\":\"Find these markers for data\",\"placement\":\"right\",\"appendToBody\":false,\"trigger\":\"manual\",\"popper-class\":\"flatmap-popper popper-bump-right right-popper\"},model:{value:(_vm.hoverVisibilities[5].value),callback:function ($$v) {_vm.$set(_vm.hoverVisibilities[5], \"value\", $$v)},expression:\"hoverVisibilities[5].value\"}}),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.hoverVisibilities[5].value),expression:\"hoverVisibilities[5].value\"},{name:\"popover\",rawName:\"v-popover:markerPopover\",arg:\"markerPopover\"}],staticClass:\"flatmap-marker-help\",domProps:{\"innerHTML\":_vm._s(_vm.flatmapMarker)}}),_c('el-row',[_c('el-col',{attrs:{\"span\":12}},[_c('div',{staticClass:\"pathways-display-text\"},[_vm._v(\"Pathways\")])]),_c('el-col',{attrs:{\"span\":12}},[_c('el-checkbox',{staticClass:\"all-checkbox\",attrs:{\"indeterminate\":_vm.isIndeterminate},on:{\"change\":_vm.handleCheckAllChange},model:{value:(_vm.checkAll),callback:function ($$v) {_vm.checkAll=$$v},expression:\"checkAll\"}},[_vm._v(\"Display all\")])],1)],1),_c('el-checkbox-group',{staticClass:\"checkbox-group\",attrs:{\"size\":\"small\"},on:{\"change\":_vm.handleCheckedItemsChange},model:{value:(_vm.checkedItems),callback:function ($$v) {_vm.checkedItems=$$v},expression:\"checkedItems\"}},[_c('div',{staticClass:\"checkbox-group-inner\"},_vm._l((_vm.pathways),function(item){return _c('el-row',{key:item.type,attrs:{\"label\":item.type}},[_c('div',{staticClass:\"checkbox-container\"},[_c('el-checkbox',{staticClass:\"my-checkbox\",attrs:{\"label\":item.type,\"checked\":true},on:{\"change\":function($event){return _vm.visibilityToggle()}}},[_c('div',{staticClass:\"path-visual\",class:item.type}),_vm._v(\" \"+_vm._s(item.label)+\" \")])],1)])}),1)])],1):_vm._e(),_c('div',{staticClass:\"drawer-button\",class:{ open: _vm.drawerOpen, close: !_vm.drawerOpen },on:{\"click\":_vm.toggleDrawer}},[_c('i',{staticClass:\"el-icon-arrow-left\"})])]),_c('el-popover',{ref:\"backgroundPopover\",attrs:{\"placement\":\"top-start\",\"width\":\"175\",\"appendToBody\":false,\"trigger\":\"click\",\"popper-class\":\"background-popper\"}},[_c('el-row',{staticClass:\"backgroundText\"},[_vm._v(\"Organs display\")]),_c('el-row',{staticClass:\"backgroundControl\"},[_c('el-radio-group',{staticClass:\"flatmap-radio\",on:{\"change\":_vm.setColour},model:{value:(_vm.colourRadio),callback:function ($$v) {_vm.colourRadio=$$v},expression:\"colourRadio\"}},[_c('el-radio',{attrs:{\"label\":true}},[_vm._v(\"Colour\")]),_c('el-radio',{attrs:{\"label\":false}},[_vm._v(\"Greyscale\")])],1)],1),_c('el-row',{staticClass:\"backgroundSpacer\"}),_c('el-row',{staticClass:\"backgroundText\"},[_vm._v(\"Outlines display\")]),_c('el-row',{staticClass:\"backgroundControl\"},[_c('el-radio-group',{staticClass:\"flatmap-radio\",on:{\"change\":_vm.setOutlines},model:{value:(_vm.outlinesRadio),callback:function ($$v) {_vm.outlinesRadio=$$v},expression:\"outlinesRadio\"}},[_c('el-radio',{attrs:{\"label\":true}},[_vm._v(\"Show\")]),_c('el-radio',{attrs:{\"label\":false}},[_vm._v(\"Hide\")])],1)],1),_c('el-row',{staticClass:\"backgroundSpacer\"}),_c('el-row',{staticClass:\"backgroundText\"},[_vm._v(\"Change background\")]),_c('el-row',{staticClass:\"backgroundControl\"},_vm._l((_vm.availableBackground),function(item){return _c('div',{key:item,class:['backgroundChoice', item, item == _vm.currentBackground ? 'active' :''],on:{\"click\":function($event){return _vm.backgroundChangeCallback(item)}}})}),0)],1),_c('el-popover',{attrs:{\"content\":\"Change background color\",\"placement\":\"right\",\"appendToBody\":false,\"trigger\":\"manual\",\"popper-class\":\"flatmap-popper right-popper\"},model:{value:(_vm.hoverVisibilities[3].value),callback:function ($$v) {_vm.$set(_vm.hoverVisibilities[3], \"value\", $$v)},expression:\"hoverVisibilities[3].value\"}},[_c('map-svg-icon',{directives:[{name:\"popover\",rawName:\"v-popover:backgroundPopover\",arg:\"backgroundPopover\"}],staticClass:\"icon-button background-colour\",class:{ open: _vm.drawerOpen, close: !_vm.drawerOpen },attrs:{\"slot\":\"reference\",\"icon\":\"changeBckgd\"},nativeOn:{\"mouseover\":function($event){return _vm.showToolitip(3)},\"mouseout\":function($event){return _vm.hideToolitip(3)}},slot:\"reference\"})],1),_c('Tooltip',{ref:\"tooltip\",staticClass:\"tooltip\",attrs:{\"content\":_vm.tooltipContent,\"flatmapAPI\":_vm.flatmapAPI},on:{\"resource-selected\":_vm.resourceSelected}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","import unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nexport default function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n\n if (!it) {\n if (Array.isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n\n var F = function F() {};\n\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e) {\n throw _e;\n },\n f: F\n };\n }\n\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e2) {\n didErr = true;\n err = _e2;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n}","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"tooltip-container\"},[(_vm.content)?_c('el-main',{staticClass:\"main\"},[(_vm.content.title)?_c('div',{staticClass:\"block\"},[_c('span',{staticClass:\"title\"},[_vm._v(_vm._s(_vm.titleCase(_vm.content.title)))])]):_c('div',{staticClass:\"block\"},[_c('span',{staticClass:\"title\"},[_vm._v(_vm._s(_vm.content.featureId))])]),(_vm.content.featureId)?_c('pubmed-viewer',{staticClass:\"block\",attrs:{\"flatmapAPI\":_vm.flatmapAPI,\"featureId\":_vm.content.featureId},on:{\"pubmedSearchUrl\":_vm.pubmedSearchUrlUpdate}}):_vm._e(),(_vm.content.components)?_c('div',{staticClass:\"block\"},[_c('div',{staticClass:\"attribute-title\"},[_vm._v(\"Components\")]),_c('span',{staticClass:\"attribute-content\"},[_vm._v(_vm._s(_vm.content.components))])]):_vm._e(),(_vm.content.start)?_c('div',{staticClass:\"block\"},[_c('div',{staticClass:\"attribute-title\"},[_vm._v(\"Origin\")]),_c('span',{staticClass:\"attribute-content\"},[_vm._v(_vm._s(_vm.content.start))])]):_vm._e(),(_vm.content.distribution)?_c('div',{staticClass:\"block\"},[_c('div',{staticClass:\"attribute-title\"},[_vm._v(\"Distribution\")]),_c('span',{staticClass:\"attribute-content\"},[_vm._v(_vm._s(_vm.content.distribution))])]):_vm._e(),_vm._l((_vm.content.actions),function(action){return _c('el-button',{key:action.title,staticClass:\"button\",attrs:{\"round\":\"\"},on:{\"click\":function($event){return _vm.resourceSelected(action)}}},[(action.title === 'Search for dataset' || action.title === 'View Dataset' )?_c('i',{staticClass:\"el-icon-coin\"}):_vm._e(),_vm._v(\" \"+_vm._s(action.title)+\" \")])}),(_vm.pubmedSearchUrl)?_c('el-button',{staticClass:\"button\",attrs:{\"icon\":\"el-icon-notebook-2\"},on:{\"click\":function($event){return _vm.openUrl(_vm.pubmedSearchUrl)}}},[_vm._v(\" Open publications in pubmed \")]):_vm._e()],2):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"pubmed-container\"},[_c('div',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.loading.response),expression:\"loading.response\"}],staticClass:\"block\"},[_c('div',{staticClass:\"attribute-title\"},[_vm._v(\"Pubmed Resources\")]),_c('br'),_c('el-carousel',{attrs:{\"autoplay\":false,\"indicator-position\":\"outside\",\"height\":\"250px\",\"width\":\"200px\"}},_vm._l((_vm.pubmeds),function(pub,i){return _c('el-carousel-item',{key:i},[_c('div',{staticClass:\"attribute-content\"},[_c('div',{domProps:{\"innerHTML\":_vm._s(pub.html)}}),_c('el-link',{staticClass:\"el-link\",attrs:{\"href\":pub.url,\"underline\":false,\"target\":\"_blank\"}},[_vm._v(_vm._s(pub.url))])],1)])}),1)],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n\n var _s, _e;\n\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","<template>\n <div class=\"pubmed-container\">\n <div v-loading=\"loading.response\" class=\"block\">\n <div class=\"attribute-title\">Pubmed Resources</div>\n <br/>\n <el-carousel \n :autoplay=\"false\" \n indicator-position=\"outside\"\n height=\"250px\" width=\"200px\"\n >\n <el-carousel-item v-for=\"(pub, i) in pubmeds\" :key=\"i\">\n <div class=\"attribute-content\">\n <div v-html=\"pub.html\"/>\n <el-link :href=\"pub.url\" :underline=\"false\" class=\"el-link\" target=\"_blank\">{{pub.url}}</el-link>\n </div>\n </el-carousel-item>\n </el-carousel>\n </div>\n </div>\n</template>\n\n\n<script>\n/* eslint-disable no-alert, no-console */\nimport Vue from \"vue\";\nimport {\n Link,\n Carousel,\n CarouselItem\n} from \"element-ui\";\nimport lang from \"element-ui/lib/locale/lang/en\";\nimport locale from \"element-ui/lib/locale\";\nlocale.use(lang);\nVue.use(Link);\nVue.use(Carousel);\nVue.use(CarouselItem);\n\n\nexport default {\n name: \"Tooltip\",\n props: { \n featureId: {\n type: String,\n default: ''\n },\n /**\n * Specify the endpoint of the flatmap server.\n */\n flatmapAPI: {\n type: String,\n default: \"https://mapcore-demo.org/flatmaps/\"\n }\n },\n watch: {\n 'featureId': function (val){\n console.log('feature id watch triggered', val)\n this.flatmapQuery(val)\n }\n },\n computed: {\n },\n data: function() {\n return {\n pubmeds: [],\n pubmedIds: [],\n loading: {response: true, publications: true}\n };\n },\n mounted: function() {\n this.flatmapQuery(this.featureId)\n },\n methods: {\n stripPMIDPrefix: function (pubmedId){\n return pubmedId.split(':')[1]\n },\n titleFromPubmed: function (pubmedId){\n return new Promise((resolve) => {\n fetch(`https://api.ncbi.nlm.nih.gov/lit/ctxp/v1/pubmed/?format=citation&contenttype=json&id=${pubmedId}`)\n .then(response => response.json())\n .then(data => {\n resolve(data.apa.format)\n })\n .catch((error) => {\n console.error('Error:', error);\n });\n })\n },\n splitLink(bibliographyString){\n let split = bibliographyString.split('https')\n return [split[0], 'https' + split[1]]\n },\n flatmapQuery: function(identifier){\n this.pubmeds = []\n this.loading.response = true\n let endpoint = this.flatmapAPI + 'knowledge/query/';\n const data = { sql: 'select publication from publications where entity=?', \"params\": [identifier]};\n fetch(endpoint, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(data),\n })\n .then(response => response.json())\n .then(data => {\n this.responseData = data\n this.loading.response = false\n data.values.forEach(identifier => {\n let ids = this.stripPMIDPrefix(identifier[0])\n this.titleFromPubmed(ids).then( bib=>{\n let [html, link] = this.splitLink(bib)\n this.pubmeds.push({identifier: identifier[0] , html: html, url: link})\n \n })\n });\n this.$emit('pubmedSearchUrl', this.pubmedSearchUrl(data.values.map(id=>this.stripPMIDPrefix(id[0]))))\n })\n .catch((error) => {\n console.error('Error:', error);\n });\n },\n pubmedSearchUrl: function(ids) {\n let url = 'https://pubmed.ncbi.nlm.nih.gov/?'\n let params = new URLSearchParams()\n params.append('term', ids)\n return url + params.toString()\n }\n }\n};\n</script>\n\n<style scoped lang=\"scss\">\n@import \"~element-ui/packages/theme-chalk/src/link\";\n@import \"~element-ui/packages/theme-chalk/src/carousel\";\n@import \"~element-ui/packages/theme-chalk/src/carousel-item\";\n\n.attribute-title{\n font-size: 16px;\n font-weight: 600;\n /* font-weight: bold; */\n text-transform: uppercase;\n}\n\n.attribute-content{\n font-size: 14px;\n font-weight: 400;\n}\n\n.el-link {\n color: $app-primary-color;\n text-decoration: none;\n word-wrap: break-word;\n &:hover, &:focus{\n color: $app-primary-color;\n text-decoration: underline;\n }\n}\n\n::v-deep .el-carousel__button {\n background-color: $app-primary-color; \n}\n\n.button {\n margin-left: 0px !important;\n margin-top: 0px !important;\n font-size: 14px !important;\n background-color: $app-primary-color;\n color: #fff;\n &:hover{\n color: #fff !important;\n background: #ac76c5 !important;\n border: 1px solid #ac76c5 !important;\n }\n &+.button {\n margin-top: 10px !important;\n background-color: $app-primary-color;\n color: #fff; \n }\n}\n\n</style>","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PubmedViewer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PubmedViewer.vue?vue&type=script&lang=js&\"","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nexport default function normalizeComponent (\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier, /* server only */\n shadowMode /* vue-cli only */\n) {\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () {\n injectStyles.call(\n this,\n (options.functional ? this.parent : this).$root.$options.shadowRoot\n )\n }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functional component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n","import { render, staticRenderFns } from \"./PubmedViewer.vue?vue&type=template&id=06d0e387&scoped=true&\"\nimport script from \"./PubmedViewer.vue?vue&type=script&lang=js&\"\nexport * from \"./PubmedViewer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./PubmedViewer.vue?vue&type=style&index=0&id=06d0e387&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"06d0e387\",\n null\n \n)\n\nexport default component.exports","<template>\n <div class=\"tooltip-container\">\n <el-main v-if=\"content\" class=\"main\">\n <div class=\"block\" v-if=\"content.title\">\n <span class=\"title\">{{titleCase(content.title)}}</span>\n </div>\n <div class=\"block\" v-else>\n <span class=\"title\">{{content.featureId}}</span>\n </div>\n \n\n <pubmed-viewer v-if=\"content.featureId\" class=\"block\" :flatmapAPI=flatmapAPI :featureId=\"content.featureId\" @pubmedSearchUrl=\"pubmedSearchUrlUpdate\"/>\n <div v-if=\"content.components\" class=\"block\">\n <div class=\"attribute-title\">Components</div>\n <span class=\"attribute-content\">{{content.components}}</span>\n </div>\n <div v-if=\"content.start\" class=\"block\">\n <div class=\"attribute-title\">Origin</div>\n <span class=\"attribute-content\">{{content.start}}</span>\n </div>\n <div v-if=\"content.distribution\" class=\"block\">\n <div class=\"attribute-title\">Distribution</div>\n <span class=\"attribute-content\">{{content.distribution}}</span>\n </div>\n <el-button v-for=\"action in content.actions\" round :key=\"action.title\"\n class=\"button\" @click=\"resourceSelected(action)\">\n <i v-if=\"action.title === 'Search for dataset' || action.title === 'View Dataset' \" class=\"el-icon-coin\"></i>\n {{action.title}}\n </el-button>\n <el-button v-if=\"pubmedSearchUrl\" class=\"button\" icon=\"el-icon-notebook-2\" @click=\"openUrl(pubmedSearchUrl)\">\n Open publications in pubmed\n </el-button>\n </el-main>\n </div>\n</template>\n\n\n<script>\n/* eslint-disable no-alert, no-console */\nimport Vue from \"vue\";\nimport {\n Button,\n Container,\n Header,\n Icon,\n Main\n} from \"element-ui\";\nimport lang from \"element-ui/lib/locale/lang/en\";\nimport locale from \"element-ui/lib/locale\";\nlocale.use(lang);\nVue.use(Button);\nVue.use(Container);\nVue.use(Header);\nVue.use(Icon);\nVue.use(Main);\n\nimport PubmedViewer from './PubmedViewer.vue'\n\nconst titleCase = (str) => {\n return str.replace(/\\w\\S*/g, (t) => { return t.charAt(0).toUpperCase() + t.substr(1).toLowerCase() });\n}\n\nexport default {\n components: { PubmedViewer },\n name: \"Tooltip\",\n props: { \n visible: {\n type: Boolean,\n default: false\n },\n content: {\n type: Object,\n default: undefined\n },\n /**\n * Specify the endpoint of the flatmap server.\n */\n flatmapAPI: {\n type: String,\n default: \"https://mapcore-demo.org/flatmaps/\"\n }\n },\n data: function() {\n return {\n activeSpecies: undefined,\n appendToBody: false,\n pubmedSearchUrl: ''\n };\n },\n methods: {\n resourceSelected: function(action) {\n this.$emit(\"resource-selected\", action); \n },\n titleCase: function(title){\n return titleCase(title)\n },\n onClose: function() {\n this.$emit(\"onClose\");\n },\n openUrl: function(url){\n window.open(url, '_blank')\n },\n pubmedSearchUrlUpdate: function (val){\n this.pubmedSearchUrl = val\n }\n }\n};\n</script>\n\n<style scoped lang=\"scss\">\n@import \"~element-ui/packages/theme-chalk/src/button\";\n@import \"~element-ui/packages/theme-chalk/src/container\";\n@import \"~element-ui/packages/theme-chalk/src/header\";\n@import \"~element-ui/packages/theme-chalk/src/main\";\n\n.tooltip-container {\n text-align:justify;\n border-radius: 4px;\n box-shadow: 0 1px 2px rgba(0,0,0,.1);\n pointer-events: auto;\n background: #fff;\n border: 1px solid $app-primary-color;\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n.display {\n width: 44px;\n word-break: normal;\n}\n\n.title {\n text-align: left;\n width: 16em;\n line-height: 1.5em !important;\n font-size: 1em;\n font-family: Helvetica;\n font-weight: 500;\n /* font-weight: bold; */\n padding-bottom: 8px;\n}\n\n.block {\n margin-bottom: 1.5em;\n}\n\n.pub {\n width: 16rem;\n}\n\n.icon {\n right: 0px;\n position: absolute;\n top: 10px;\n}\n\n.icon:hover {\n cursor: pointer;\n}\n\n.main {\n font-size: 14px;\n text-align: left;\n line-height: 1.5em;\n font-family: Helvetica;\n font-weight: 400;\n /* outline: thin red solid; */\n padding: 1em !important;\n overflow: hidden;\n min-width: 16rem;\n}\n\n.attribute-title{\n font-size: 16px;\n font-weight: 600;\n /* font-weight: bold; */\n text-transform: uppercase;\n}\n\n.attribute-content{\n font-size: 14px;\n font-weight: 400;\n}\n\n.popover-container {\n height: 100%;\n width: 100%;\n}\n\n.main {\n .el-button.is-round{\n border-radius: 4px;\n padding: 9px 20px 10px 20px;\n display: flex;\n height: 36px;\n }\n}\n\n.button {\n margin-left: 0px !important;\n margin-top: 0px !important;\n font-size: 14px !important;\n background-color: $app-primary-color;\n color: #fff;\n &+.button {\n margin-top: 10px !important;\n }\n &:hover {\n color: #fff !important;\n background: #ac76c5 !important;\n border: 1px solid #ac76c5 !important;\n }\n}\n\n.tooltip-container{\n &::after, &::before {\n content: '';\n display: block;\n position: absolute;\n width: 0;\n height: 0;\n border-style: solid;\n flex-shrink: 0;\n }\n}\n\n.mapboxgl-popup-anchor-bottom {\n .tooltip-container {\n &::after, &::before {\n top: 100%;\n border-width: 12px;\n }\n &::after {\n margin-top:-1px;\n border-color: rgb(255, 255, 255) transparent transparent transparent ;\n }\n &::before {\n margin: 0 auto;\n border-color: $app-primary-color transparent transparent transparent ;\n }\n }\n}\n\n.mapboxgl-popup-anchor-top {\n .tooltip-container {\n &::after, &::before {\n top: -24px;\n border-width: 12px;\n }\n &::after {\n margin-top: 1px;\n border-color: transparent transparent rgb(255, 255, 255) transparent ;\n }\n &::before {\n margin: 0 auto;\n border-color: transparent transparent $app-primary-color transparent ;\n }\n }\n}\n\n\n/* Fix for chrome bug where under triangle pops up above one on top of it */\n.selector:not(*:root), .tooltip-container::after{\n top: 99.4%;\n}\n</style>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tooltip.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Tooltip.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Tooltip.vue?vue&type=template&id=4802b201&scoped=true&\"\nimport script from \"./Tooltip.vue?vue&type=script&lang=js&\"\nexport * from \"./Tooltip.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Tooltip.vue?vue&type=style&index=0&id=4802b201&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4802b201\",\n null\n \n)\n\nexport default component.exports","export default '<div class=\"flatmap-marker\"><svg display=\"block\" height=\"41px\" width=\"27px\" viewBox=\"0 0 27 41\"><g fill-rule=\"nonzero\"><g transform=\"translate(3.0, 29.0)\" fill=\"#000000\"><ellipse opacity=\"0.04\" cx=\"10.5\" cy=\"5.80029008\" rx=\"10.5\" ry=\"5.25002273\"></ellipse><ellipse opacity=\"0.04\" cx=\"10.5\" cy=\"5.80029008\" rx=\"10.5\" ry=\"5.25002273\"></ellipse><ellipse opacity=\"0.04\" cx=\"10.5\" cy=\"5.80029008\" rx=\"9.5\" ry=\"4.77275007\"></ellipse><ellipse opacity=\"0.04\" cx=\"10.5\" cy=\"5.80029008\" rx=\"8.5\" ry=\"4.29549936\"></ellipse><ellipse opacity=\"0.04\" cx=\"10.5\" cy=\"5.80029008\" rx=\"7.5\" ry=\"3.81822308\"></ellipse><ellipse opacity=\"0.04\" cx=\"10.5\" cy=\"5.80029008\" rx=\"6.5\" ry=\"3.34094679\"></ellipse><ellipse opacity=\"0.04\" cx=\"10.5\" cy=\"5.80029008\" rx=\"5.5\" ry=\"2.86367051\"></ellipse><ellipse opacity=\"0.04\" cx=\"10.5\" cy=\"5.80029008\" rx=\"4.5\" ry=\"2.38636864\"></ellipse></g><g fill=\"#005974\"><path d=\"M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z\"></path></g><g opacity=\"0.25\" fill=\"#000000\"><path d=\"M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z\"></path></g><g transform=\"translate(6.0, 7.0)\" fill=\"#FFFFFF\"></g><g transform=\"translate(8.0, 8.0)\"><circle fill=\"#000000\" opacity=\"0.25\" cx=\"5.5\" cy=\"5.5\" r=\"5.4999962\"></circle><circle fill=\"#FFFFFF\" cx=\"5.5\" cy=\"5.5\" r=\"5.4999962\"></circle></g></g></svg></div>'","<template>\n <div\n class=\"flatmap-container\"\n v-loading=\"loading\"\n element-loading-text=\"Loading...\"\n element-loading-spinner=\"el-icon-loading\"\n element-loading-background=\"rgba(0, 0, 0, 0.3)\"\n >\n <map-svg-sprite-color />\n <div style=\"height:100%;width:100%;position:relative;overflow-y:none\">\n <div style=\"height:100%;width:100%;\" ref=\"display\"></div>\n <el-popover\n :content=\"warningMessage\"\n placement=\"right\"\n v-if=\"displayWarning\"\n :appendToBody=\"false\"\n trigger=\"manual\"\n popper-class=\"warning-popper flatmap-popper right-popper\"\n v-model=\"hoverVisibilities[6].value\"\n ref=\"warningPopover\"\n ></el-popover>\n <i\n class=\"el-icon-warning warning-icon\"\n v-if=\"displayWarning\"\n @mouseover=\"showToolitip(6)\"\n @mouseout=\"hideToolitip(6)\"\n v-popover:warningPopover\n >\n <span class=\"warning-text\">Beta</span>\n </i>\n <div class=\"bottom-right-control\">\n <el-popover\n content=\"Zoom in\"\n placement=\"left\"\n :appendToBody=\"false\"\n trigger=\"manual\"\n popper-class=\"flatmap-popper left-popper\"\n v-model=\"hoverVisibilities[0].value\"\n >\n <map-svg-icon\n icon=\"zoomIn\"\n class=\"icon-button zoomIn\"\n slot=\"reference\"\n @click.native=\"zoomIn()\"\n @mouseover.native=\"showToolitip(0)\"\n @mouseout.native=\"hideToolitip(0)\"\n />\n </el-popover>\n <el-popover\n content=\"Zoom out\"\n placement=\"top-end\"\n :appendToBody=\"false\"\n trigger=\"manual\"\n popper-class=\"flatmap-popper popper-zoomout\"\n v-model=\"hoverVisibilities[1].value\"\n >\n <map-svg-icon\n icon=\"zoomOut\"\n class=\"icon-button zoomOut\"\n slot=\"reference\"\n @click.native=\"zoomOut()\"\n @mouseover.native=\"showToolitip(1)\"\n @mouseout.native=\"hideToolitip(1)\"\n />\n </el-popover>\n <el-popover\n content=\"Reset\"\n placement=\"top\"\n :appendToBody=\"false\"\n trigger=\"manual\"\n popper-class=\"flatmap-popper\"\n v-model=\"hoverVisibilities[2].value\"\n >\n <div>\n Fit to\n <br>\n window\n </div>\n <map-svg-icon\n slot=\"reference\"\n icon=\"fitWindow\"\n class=\"icon-button fitWindow\"\n @click.native=\"resetView()\"\n @mouseover.native=\"showToolitip(2)\"\n @mouseout.native=\"hideToolitip(2)\"\n />\n </el-popover>\n </div>\n <el-popover\n content=\"Change pathway visibility\"\n placement=\"right\"\n :appendToBody=\"false\"\n trigger=\"manual\"\n popper-class=\"flatmap-popper right-popper\"\n v-model=\"hoverVisibilities[4].value\"\n ref=\"checkBoxPopover\"\n />\n <div class=\"pathway-location\" :class=\"{ open: drawerOpen, close: !drawerOpen }\">\n <div\n class=\"pathway-container\"\n v-if=\"pathways.length > 0 && pathControls\"\n v-popover:checkBoxPopover\n >\n <el-popover\n content=\"Find these markers for data\"\n placement=\"right\"\n :appendToBody=\"false\"\n trigger=\"manual\"\n popper-class=\"flatmap-popper popper-bump-right right-popper\"\n v-model=\"hoverVisibilities[5].value\"\n ref=\"markerPopover\"\n ></el-popover>\n <div\n v-show=\"hoverVisibilities[5].value\"\n class=\"flatmap-marker-help\"\n v-html=\"flatmapMarker\"\n v-popover:markerPopover\n ></div>\n <el-row>\n <el-col :span=\"12\">\n <div class=\"pathways-display-text\">Pathways</div>\n </el-col>\n <el-col :span=\"12\">\n <el-checkbox\n class=\"all-checkbox\"\n :indeterminate=\"isIndeterminate\"\n v-model=\"checkAll\"\n @change=\"handleCheckAllChange\"\n >Display all</el-checkbox>\n </el-col>\n </el-row>\n <el-checkbox-group\n v-model=\"checkedItems\"\n size=\"small\"\n class=\"checkbox-group\"\n @change=\"handleCheckedItemsChange\"\n >\n <div class=\"checkbox-group-inner\">\n <el-row v-for=\"item in pathways\" :key=\"item.type\" :label=\"item.type\">\n <div class=\"checkbox-container\">\n <el-checkbox\n class=\"my-checkbox\"\n :label=\"item.type\"\n @change=\"visibilityToggle()\"\n :checked=\"true\"\n >\n <div class=\"path-visual\" :class=\"item.type\"></div>\n {{item.label}}\n </el-checkbox>\n </div>\n </el-row>\n </div>\n </el-checkbox-group>\n </div>\n <div\n @click=\"toggleDrawer\"\n class=\"drawer-button\"\n :class=\"{ open: drawerOpen, close: !drawerOpen }\"\n >\n <i class=\"el-icon-arrow-left\"></i>\n </div>\n </div>\n <el-popover\n ref=\"backgroundPopover\"\n placement=\"top-start\"\n width=\"175\"\n :appendToBody=\"false\"\n trigger=\"click\"\n popper-class=\"background-popper\"\n >\n <el-row class=\"backgroundText\">Organs display</el-row>\n <el-row class=\"backgroundControl\">\n <el-radio-group v-model=\"colourRadio\" class=\"flatmap-radio\" @change=\"setColour\">\n <el-radio :label=\"true\">Colour</el-radio>\n <el-radio :label=\"false\">Greyscale</el-radio>\n </el-radio-group>\n </el-row>\n <el-row class=\"backgroundSpacer\"></el-row>\n <el-row class=\"backgroundText\">Outlines display</el-row>\n <el-row class=\"backgroundControl\">\n <el-radio-group v-model=\"outlinesRadio\" class=\"flatmap-radio\" @change=\"setOutlines\">\n <el-radio :label=\"true\">Show</el-radio>\n <el-radio :label=\"false\">Hide</el-radio>\n </el-radio-group>\n </el-row>\n <el-row class=\"backgroundSpacer\"></el-row>\n <el-row class=\"backgroundText\">Change background</el-row>\n <el-row class=\"backgroundControl\">\n <div\n v-for=\"item in availableBackground\"\n :key=\"item\"\n :class=\"['backgroundChoice', item, item == currentBackground ? 'active' :'']\"\n @click=\"backgroundChangeCallback(item)\"\n />\n </el-row>\n </el-popover>\n <el-popover\n content=\"Change background color\"\n placement=\"right\"\n v-model=\"hoverVisibilities[3].value\"\n :appendToBody=\"false\"\n trigger=\"manual\"\n popper-class=\"flatmap-popper right-popper\"\n >\n <map-svg-icon\n v-popover:backgroundPopover\n icon=\"changeBckgd\"\n class=\"icon-button background-colour\"\n :class=\"{ open: drawerOpen, close: !drawerOpen }\"\n slot=\"reference\"\n @mouseover.native=\"showToolitip(3)\"\n @mouseout.native=\"hideToolitip(3)\"\n />\n </el-popover>\n <Tooltip\n ref=\"tooltip\"\n class=\"tooltip\"\n :content=\"tooltipContent\"\n :flatmapAPI=\"flatmapAPI\"\n @resource-selected=\"resourceSelected\"\n />\n </div>\n </div>\n</template>\n\n<script>\n/* eslint-disable no-alert, no-console */\nimport Vue from \"vue\";\nimport Tooltip from \"./Tooltip\";\nimport { MapSvgIcon, MapSvgSpriteColor } from \"@abi-software/svg-sprite\";\nimport {\n Checkbox,\n CheckboxGroup,\n Col,\n Loading,\n Radio,\n RadioGroup,\n Row\n} from \"element-ui\";\nimport lang from \"element-ui/lib/locale/lang/en\";\nimport locale from \"element-ui/lib/locale\";\nimport flatmapMarker from \"../icons/flatmap-marker\";\nlocale.use(lang);\nVue.use(Checkbox);\nVue.use(CheckboxGroup);\nVue.use(Col);\nVue.use(Loading.directive);\nVue.use(Radio);\nVue.use(RadioGroup);\nVue.use(Row);\nconst ResizeSensor = require(\"css-element-queries/src/ResizeSensor\");\n\nconst mapResize = map => {\n return () => {\n if (map) map.resize();\n };\n};\n\nexport default {\n name: \"FlatmapVuer\",\n components: {\n MapSvgIcon,\n MapSvgSpriteColor,\n Tooltip\n },\n beforeCreate: function() {\n this.mapManager = undefined;\n this.mapImp = undefined;\n },\n methods: {\n backgroundChangeCallback: function(colour) {\n this.currentBackground = colour;\n if (this.mapImp) {\n this.mapImp.setBackgroundColour(this.currentBackground, 1);\n }\n },\n toggleDrawer: function() {\n this.drawerOpen = !this.drawerOpen;\n },\n /**\n * Function to toggle colour/greyscale of organs.\n */\n setColour: function(flag) {\n this.colourRadio = flag;\n if (this.mapImp) {\n this.mapImp.setColour({ colour: flag, outline: this.outlinesRadio });\n }\n },\n /**\n * Function to toggle outlines f organs.\n */\n setOutlines: function(flag) {\n this.outlineRadio = flag;\n if (this.mapImp) {\n this.mapImp.setColour({ colour: this.colourRadio, outline: flag });\n }\n },\n /**\n * Function to toggle paths to default.\n * Also called when the associated button is pressed.\n */\n resetView: function() {\n if (this.mapImp) {\n this.mapImp.resetMap();\n this.checkedItems = this.mapImp.pathTypes().map(item => item.type);\n this.isIndeterminate = false;\n this.checkAll = true;\n }\n },\n /**\n * Function to zoom in.\n * Also called when the associated button is pressed.\n */\n zoomIn: function() {\n if (this.mapImp) {\n this.mapImp.zoomIn();\n }\n },\n /**\n * Function to zoom out.\n * Also called when the associated button is pressed.\n */\n zoomOut: function() {\n if (this.mapImp) {\n this.mapImp.zoomOut();\n }\n },\n visibilityToggle: function() {\n if (this.mapImp) {\n this.mapImp.showPaths(this.checkedItems);\n }\n },\n handleCheckedItemsChange: function(value) {\n let checkedCount = value.length;\n this.checkAll = checkedCount === this.pathways.length;\n this.isIndeterminate =\n checkedCount > 0 && checkedCount < this.pathways.length;\n },\n handleCheckAllChange(val) {\n this.checkedItems = val ? this.pathways.map(a => a.type) : [];\n this.isIndeterminate = false;\n if (this.mapImp) {\n this.mapImp.showPaths(this.checkedItems);\n }\n },\n enablePanZoomEvents: function(flag) {\n this.mapImp.enablePanZoomEvents(flag);\n },\n eventCallback: function() {\n return (eventType, data, ...args) => {\n if (eventType !== \"pan-zoom\") {\n const label = data.label;\n const resource = [data.models];\n const taxonomy = this.entry;\n const payload = {\n dataset: data.dataset,\n taxonomy: taxonomy,\n resource: resource,\n label: label,\n feature: data,\n userData: args,\n eventType: eventType\n };\n // Disable the nueron pop up for now.\n if (data && data.type !== \"marker\")\n this.checkAndCreatePopups(data);\n this.$emit(\"resource-selected\", payload);\n } else {\n this.$emit(\"pan-zoom-callback\", data);\n }\n };\n },\n // checkNeuronClicked shows a neuron path pop up if a path was recently clicked\n checkAndCreatePopups: function(data) {\n if (\n data.eventType == \"click\" &&\n this.createTooltipFromNeuronCuration(data)\n ) {\n this.mapImp.showPopup(\n this.mapImp.modelFeatureIds(data.resource[0])[0],\n this.$refs.tooltip.$el,\n { className: \"flatmap-tooltip-dialog\" }\n );\n this.popUpCssHack();\n }\n },\n popUpCssHack: function() {\n // Below is a hack to remove flatmap tooltips while popup is open\n let ftooltip = document.querySelector(\".flatmap-tooltip-popup\");\n if (ftooltip) ftooltip.style.display = \"none\";\n document.querySelector(\".mapboxgl-popup-close-button\").style.display =\n \"block\";\n this.$refs.tooltip.$el.style.display = \"flex\";\n document.querySelector(\".mapboxgl-popup-close-button\").onclick = () => {\n document.querySelector(\".flatmap-tooltip-popup\").style.display =\n \"block\";\n };\n },\n resourceSelected: function(action) {\n this.$emit(\"resource-selected\", action);\n },\n createTooltipFromNeuronCuration: function(data) {\n const feature = data.resource[0];\n let content = {\n title: undefined,\n components: undefined,\n start: undefined,\n distribution: undefined,\n actions: []\n };\n\n let foundAnnotations = false;\n this.tooltipVisible = false;\n\n // neural data check\n if (feature) {\n if (feature.includes(\"ilxtr:neuron\")) {\n foundAnnotations = true;\n this.tooltipVisible = true;\n this.tooltipContent = content;\n this.tooltipContent.uberon = feature;\n this.tooltipContent.title = data.label;\n this.tooltipContent.featureId = feature;\n this.tooltipContent.actions.push({\n title: \"Search for dataset\",\n label: \"Neuron Datasets\",\n resource: feature.split(\":\")[1],\n type: \"Neuron Search\",\n nervePath: true\n });\n }\n }\n // annotated with datset check\n if (data.dataset) {\n foundAnnotations = true;\n this.tooltipVisible = true;\n this.tooltipContent = content;\n this.tooltipContent.uberon = feature;\n this.tooltipContent.title = data.label;\n this.tooltipContent.actions.push({\n title: \"View dataset\",\n resource: data.dataset,\n type: \"URL\",\n nervePath: false\n });\n }\n\n if (foundAnnotations) {\n return true;\n } else {\n return false;\n }\n },\n // Keeping this as an API\n showPopup: function(featureId, node, options) {\n let myOptions = options;\n if (this.mapImp) {\n if (myOptions) {\n if (!myOptions.className) myOptions.className = \"flatmapvuer-popover\";\n } else {\n myOptions = { className: \"flatmapvuer-popover\" };\n }\n this.mapImp.showPopup(featureId, node, myOptions);\n }\n },\n showMarkerPopup: function(featureId, node, options) {\n if (this.mapImp) {\n this.mapImp.showMarkerPopup(featureId, node, options);\n }\n },\n setHelpMode: function(helpMode) {\n if (helpMode) {\n this.inHelp = true;\n this.hoverVisibilities.forEach(item => {\n item.value = true;\n });\n this.openFlatmapHelpPopup();\n } else {\n this.inHelp = false;\n this.hoverVisibilities.forEach(item => {\n item.value = false;\n });\n this.closeFlatmapHelpPopup();\n }\n },\n showToolitip: function(tooltipNumber) {\n if (!this.inHelp) {\n this.tooltipWait = setTimeout(() => {\n this.hoverVisibilities[tooltipNumber].value = true;\n }, 500);\n }\n },\n hideToolitip: function(tooltipNumber) {\n if (!this.inHelp) {\n this.hoverVisibilities[tooltipNumber].value = false;\n clearTimeout(this.tooltipWait);\n }\n },\n openFlatmapHelpPopup: function() {\n if (this.mapImp) {\n let heartId = this.mapImp.featureIdsForModel(\"UBERON:0000948\")[0];\n const elm = \"Click for more information\";\n this.mapImp.showPopup(heartId, elm, {\n anchor: \"top\",\n className: \"flatmap-popup-popper\"\n });\n }\n },\n closeFlatmapHelpPopup: function() {\n this.$el\n .querySelectorAll(\".mapboxgl-popup-close-button\")\n .forEach(item => {\n item.click();\n });\n },\n getLabels: function() {\n let labels = [];\n if (this.mapImp) {\n let annotations = this.mapImp.annotations;\n for (let value of annotations.values()) {\n if (value.label) labels.push(value.label);\n }\n return Array.from(new Set(labels));\n }\n },\n getState: function() {\n if (this.mapImp) {\n let state = {\n entry: this.entry,\n viewport: this.mapImp.getState()\n };\n return state;\n }\n return undefined;\n },\n setState: function(state) {\n if (state) {\n if (this.mapImp && state.entry) {\n if (this.entry == state.entry)\n if (state.viewport) {\n this.mapImp.setState(state.viewport);\n }\n } else {\n this.createFlatmap(state);\n }\n }\n },\n createFlatmap: function(state) {\n if (!this.mapImp && !this.loading) {\n this.loading = true;\n let minimap = false;\n if (this.displayMinimap) {\n minimap = { position: \"top-right\" };\n }\n let entry = this.entry;\n if (state && state.entry) entry = state.entry;\n let promise1 = this.mapManager.loadMap(\n entry,\n this.$refs.display,\n this.eventCallback(),\n {\n //fullscreenControl: false,\n //annotatable: false,\n //debug: true,\n featureInfo: this.featureInfo,\n \"min-zoom\": this.minZoom,\n pathControls: false,\n searchable: this.searchable,\n tooltips: this.tooltips,\n minimap: minimap\n }\n );\n promise1.then(returnedObject => {\n this.mapImp = returnedObject;\n this.sensor = new ResizeSensor(\n this.$refs.display,\n mapResize(this.mapImp)\n );\n this.mapImp.setBackgroundOpacity(1);\n this.backgroundChangeCallback(this.currentBackground);\n this.pathways = this.mapImp.pathTypes();\n this.$emit(\"ready\", this);\n this.loading = false;\n if (this._viewportToBeSet)\n this.mapImp.setState(this._viewportToBeSet);\n else if (state && state.viewport)\n this.mapImp.setState(state.viewport);\n });\n } else if (state) {\n if (this.entry == state.entry) this._viewportToBeSet = state.viewport;\n }\n },\n showMinimap: function(flag) {\n if (this.mapImp)\n this.mapImp.showMinimap(flag);\n },\n showPathwaysDrawer: function(flag) {\n this.drawerOpen = flag;\n },\n /**\n * Function to display features with annotation matching the provided term.\n */\n searchAndShowResult: function(term) {\n if (this.mapImp) {\n if (term === undefined || term === \"\") {\n this.mapImp.clearSearchResults();\n } else {\n let searchResults = this.mapImp.search(term);\n if (searchResults && searchResults.__featureIds.length > 0)\n this.mapImp.showSearchResults(searchResults);\n else this.mapImp.clearSearchResults();\n }\n }\n }\n },\n props: {\n entry: String,\n featureInfo: {\n type: Boolean,\n default: false\n },\n minZoom: {\n type: Number,\n default: 4\n },\n pathControls: {\n type: Boolean,\n default: true\n },\n searchable: {\n type: Boolean,\n default: false\n },\n tooltips: {\n type: Boolean,\n default: true\n },\n helpMode: {\n type: Boolean,\n default: false\n },\n renderAtMounted: {\n type: Boolean,\n default: true\n },\n displayWarning: {\n type: Boolean,\n default: true\n },\n displayMinimap: {\n type: Boolean,\n default: false\n },\n warningMessage: {\n type: String,\n default: \"Beta feature - This map is based on the connectivity of a rat. New connectivity and species specificity will be added as the SPARC program progress.\"\n },\n /**\n * State containing state of the flatmap.\n */\n state: {\n type: Object,\n default: undefined\n },\n /**\n * Specify the endpoint of the flatmap server.\n */\n flatmapAPI: {\n type: String,\n default: \"https://mapcore-demo.org/flatmaps/\"\n }\n },\n data: function() {\n return {\n checkedItems: [],\n pathways: [],\n isIndeterminate: false,\n checkAll: true,\n hoverVisibilities: [\n { value: false },\n { value: false },\n { value: false },\n { value: false },\n { value: false },\n { value: false },\n { value: false }\n ],\n inHelp: false,\n currentBackground: \"white\",\n availableBackground: [\"white\", \"lightskyblue\", \"black\"],\n loading: false,\n flatmapMarker: flatmapMarker,\n drawerOpen: true,\n tooltipContent: {},\n colourRadio: true,\n outlinesRadio: true\n };\n },\n watch: {\n entry: function() {\n if (!this.state) this.createFlatmap();\n },\n helpMode: function(val) {\n this.setHelpMode(val);\n },\n state: {\n handler: function(state) {\n this.setState(state);\n },\n immediate: true,\n deep: true\n }\n },\n mounted: function() {\n const flatmap = require(\"@abi-software/flatmap-viewer\");\n this.mapManager = new flatmap.MapManager(this.flatmapAPI);\n if (this.renderAtMounted) this.createFlatmap();\n }\n};\n</script>\n\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\n<style scoped lang=\"scss\">\n@import \"~element-ui/packages/theme-chalk/src/button\";\n@import \"~element-ui/packages/theme-chalk/src/checkbox\";\n@import \"~element-ui/packages/theme-chalk/src/checkbox-group\";\n@import \"~element-ui/packages/theme-chalk/src/loading\";\n@import \"~element-ui/packages/theme-chalk/src/row\";\n\n.warning-icon {\n position: absolute;\n top: 90px;\n left: 37px;\n text-align: left;\n font-size: 25px;\n color: $warning;\n\n &:hover {\n cursor: pointer;\n }\n}\n\n.warning-text {\n font-size: 15px;\n vertical-align: 5px;\n}\n\n.path-visual {\n margin: 3px 0;\n height: 3px;\n width: 25px;\n margin-right: 5px;\n display: inline-block;\n &.cns {\n background: #9b1fc1;\n }\n &.lcn {\n background: #f19e38;\n }\n &.para-pre {\n background: #3f8f4a;\n }\n &.para-post {\n background: repeating-linear-gradient(\n 90deg,\n #3f8f4a,\n #3f8f4a 6px,\n transparent 0,\n transparent 9px\n );\n }\n &.sensory {\n background: #2a62f6;\n }\n &.somatic {\n background: #98561d;\n }\n &.symp-pre {\n background: #ea3423;\n }\n &.symp-post {\n background: repeating-linear-gradient(\n 90deg,\n #ea3423,\n #ea3423 6px,\n transparent 0,\n transparent 9px\n );\n }\n}\n\n.flatmap-container {\n height: 100%;\n width: 100%;\n}\n\n.pathway-location {\n position: absolute;\n bottom: 0px;\n transition: all 1s ease;\n &.open {\n left: 0px;\n }\n &.close {\n left: -298px;\n }\n}\n\n.pathway-container {\n float: left;\n padding-left: 16px;\n padding-right: 18px;\n max-height: calc(100% - 184px);\n text-align: left;\n overflow: auto;\n border: 1px solid rgb(220, 223, 230);\n padding-top: 7px;\n padding-bottom: 16px;\n background: #ffffff;\n}\n\n.pathways-display-text {\n width: 59px;\n height: 20px;\n color: rgb(48, 49, 51);\n font-size: 14px;\n font-weight: normal;\n line-height: 20px;\n margin-left: 8px;\n}\n\n.all-checkbox {\n float: right;\n}\n\n.checkbox-container {\n display: flex;\n cursor: pointer;\n}\n\n.checkbox-group {\n width: 260px;\n border: 1px solid rgb(144, 147, 153);\n border-radius: 4px;\n background: #ffffff;\n}\n\n.my-checkbox {\n background-color: #fff;\n width: 100%;\n}\n\n.checkbox-group-inner {\n padding: 18px;\n}\n\n.flatmap-marker-help {\n display: inline-block;\n}\n\n::v-deep .popper-bump-right {\n left: 30px;\n}\n\n::v-deep .el-checkbox__label {\n padding-left: 5px;\n color: $app-primary-color;\n font-size: 12px;\n font-weight: 500;\n letter-spacing: 0px;\n line-height: 14px;\n}\n\n::v-deep .el-checkbox__input {\n &.is-indeterminate,\n &.is-checked {\n .el-checkbox__inner {\n background-color: $app-primary-color;\n border-color: $app-primary-color;\n }\n }\n}\n\n::v-deep .el-checkbox__label {\n color: $app-primary-color !important;\n}\n\n.el-dropdown-link {\n cursor: pointer;\n color: #409eff;\n}\n.el-icon-arrow-down {\n font-size: 12px;\n}\n.demonstration {\n display: block;\n color: #8492a6;\n font-size: 14px;\n margin-bottom: 20px;\n}\n\n.tooltip {\n display: none;\n}\n\n::v-deep .mapboxgl-popup {\n max-width: 300px !important;\n}\n\n::v-deep .flatmap-tooltip-popup {\n &.mapboxgl-popup-anchor-bottom {\n .mapboxgl-popup-content {\n margin-bottom: 12px;\n &::after,\n &::before {\n top: 100%;\n border-width: 12px;\n }\n /* this border color controlls the color of the triangle (what looks like the fill of the triangle) */\n &::after {\n margin-top: -1px;\n border-color: rgb(255, 255, 255) transparent transparent transparent;\n }\n /* this border color controlls the outside, thin border */\n &::before {\n margin: 0 auto;\n border-color: $app-primary-color transparent transparent transparent;\n }\n }\n }\n &.mapboxgl-popup-anchor-top {\n .mapboxgl-popup-content {\n margin-top: 18px;\n &::after,\n &::before {\n top: calc(-100% + 6px);\n border-width: 12px;\n }\n /* this border color controlls the color of the triangle (what looks like the fill of the triangle) */\n &::after {\n margin-top: 1px;\n border-color: transparent transparent rgb(255, 255, 255) transparent;\n }\n &::before {\n margin: 0 auto;\n border-color: transparent transparent $app-primary-color transparent;\n }\n }\n }\n .mapboxgl-popup-content {\n border-radius: 4px;\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);\n pointer-events: none;\n display: none;\n background: #fff;\n border: 1px solid $app-primary-color;\n padding-left: 6px;\n padding-right: 6px;\n display: flex;\n justify-content: center;\n align-items: center;\n &::after,\n &::before {\n content: \"\";\n display: block;\n position: absolute;\n width: 0;\n height: 0;\n border-style: solid;\n flex-shrink: 0;\n }\n }\n .mapboxgl-popup-tip {\n display: none;\n }\n}\n\n::v-deep .mapboxgl-popup {\n &.flatmap-marker-popup {\n box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);\n pointer-events: auto;\n background: #fff;\n }\n}\n\n/* Fix for chrome bug where under triangle pops up above one on top of it */\n.selector:not(*:root),\n::v-deep.flatmap-tooltip-popup {\n .mapboxgl-popup-content::after {\n top: 99.9%;\n }\n}\n\n::v-deep .flatmap-tooltip-dialog {\n .mapboxgl-popup-tip {\n display: none;\n }\n}\n\n::v-deep .flatmap-marker-popup {\n .mapboxgl-popup-content {\n padding: 0px;\n }\n}\n\n::v-deep .flatmapvuer-popover {\n .mapboxgl-popup-close-button {\n position: absolute;\n right: 0.5em;\n top: 0;\n border: 0;\n border-radius: 0 3px 0 0;\n cursor: pointer;\n background-color: transparent;\n font-size: 2.5em;\n color: grey;\n top: 0.95em;\n }\n}\n\n.zoomOut {\n padding-left: 8px;\n}\n\n.fitWindow {\n padding-left: 8px;\n}\n\n.background-colour {\n bottom: 16px;\n position: absolute;\n transition: all 1s ease;\n}\n.background-colour.open {\n left: 322px;\n}\n.background-colour.close {\n left: 24px;\n}\n\n::v-deep .background-popper {\n padding: 5px 12px;\n background-color: #ffffff;\n border: 1px solid $app-primary-color;\n box-shadow: 0px 2px 12px 0px rgba(0, 0, 0, 0.06);\n height: 200px;\n width: 175px;\n min-width: 175px;\n &.el-popper[x-placement^=\"top\"] {\n .popper__arrow {\n border-top-color: $app-primary-color !important;\n &::after {\n border-top-color: #fff !important;\n }\n }\n }\n}\n\n.backgroundText {\n color: rgb(48, 49, 51);\n font-size: 14px;\n font-weight: normal;\n line-height: 20px;\n}\n\n.backgroundControl {\n display: flex;\n margin-top: 16px;\n}\n\n.backgroundChoice {\n width: 20px;\n height: 20px;\n border: 1px solid rgb(144, 147, 153);\n margin-left: 20px;\n &.active {\n border: 2px solid $app-primary-color;\n }\n &:hover {\n cursor: pointer;\n }\n &.white {\n background-color: white;\n margin-left: 10px;\n }\n &.black {\n background-color: black;\n }\n &.lightskyblue {\n background-color: white;\n }\n}\n\n.togglePaths {\n top: 201px;\n right: 20px;\n position: absolute;\n}\n\n.icon-button {\n height: 24px !important;\n width: 24px !important;\n color: $app-primary-color;\n &:hover {\n cursor: pointer;\n }\n}\n\n::v-deep .flatmap-popper {\n padding: 6px 4px;\n font-size: 12px;\n color: rgb(48, 49, 51);\n background-color: #f3ecf6;\n border: 1px solid $app-primary-color;\n white-space: nowrap;\n min-width: unset;\n &.warning-popper {\n min-width: 150px;\n max-width: 400px;\n word-break: keep-all;\n white-space: unset;\n }\n &.left-popper {\n .popper__arrow {\n border-left-color: $app-primary-color !important;\n &::after {\n border-left-color: #f3ecf6 !important;\n }\n }\n }\n &.right-popper {\n .popper__arrow {\n border-right-color: $app-primary-color !important;\n &:after {\n border-right-color: #f3ecf6 !important;\n }\n }\n }\n &.el-popper[x-placement^=\"top\"] {\n .popper__arrow {\n border-top-color: $app-primary-color !important;\n &:after {\n border-top-color: #f3ecf6 !important;\n }\n }\n }\n}\n\n::v-deep .el-loading-spinner {\n i,\n .el-loading-text {\n color: $app-primary-color;\n }\n}\n\n::v-deep .flatmap-popup-popper {\n .mapboxgl-popup-tip {\n border-bottom-color: $app-primary-color;\n }\n .mapboxgl-popup-content {\n padding: 6px 4px;\n font-size: 12px;\n color: rgb(48, 49, 51);\n background-color: #f3ecf6;\n border: 1px solid $app-primary-color;\n white-space: nowrap;\n min-width: unset;\n .mapboxgl-popup-close-button {\n display: none;\n }\n }\n}\n\n::v-deep .flatmap-popper {\n \n}\n\n::v-deep .popper-zoomout {\n padding-right: 13px !important;\n left: -21px !important;\n}\n\n::v-deep .popper-zoomout {\n .popper__arrow {\n left: 53px !important;\n }\n}\n\n::v-deep .mapboxgl-popup-content {\n padding: 0px;\n}\n\n.bottom-right-control {\n position: absolute;\n right: 16px;\n bottom: 16px;\n}\n\n::v-deep .my-drawer {\n background: rgba(0, 0, 0, 0);\n box-shadow: none;\n}\n\n.drawer {\n ::v-deep .el-drawer:focus {\n outline: none;\n }\n}\n\n.open-drawer,\n.drawer-button {\n z-index: 8;\n width: 20px;\n height: 40px;\n border: solid 1px #e4e7ed;\n text-align: center;\n vertical-align: middle;\n cursor: pointer;\n pointer-events: auto;\n}\n\n.open-drawer {\n position: absolute;\n left: 0px;\n background-color: #f7faff;\n box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.06);\n}\n\n.drawer-button {\n float: left;\n margin-top: calc(50% - 36px);\n border-left: 0;\n background-color: #ffffff;\n i {\n margin-top: 12px;\n color: $app-primary-color;\n transition-delay: 0.9s;\n }\n &.open {\n i {\n transform: rotate(0deg) scaleY(2.5);\n }\n }\n &.close {\n i {\n transform: rotate(180deg) scaleY(2.5);\n }\n }\n}\n\n::v-deep .mapboxgl-canvas-container {\n canvas {\n outline: none;\n }\n}\n\n.backgroundSpacer {\n border-bottom: 1px solid #e4e7ed;\n margin-bottom: 10px;\n}\n\n.flatmap-radio {\n ::v-deep label {\n margin-right: 20px;\n &:last-child {\n margin-right: 0px;\n }\n }\n .el-radio__input {\n &.is-checked {\n & + .el-radio__label {\n color: $app-primary-color;\n }\n .el-radio__inner {\n border-color: $app-primary-color;\n background: $app-primary-color;\n }\n }\n }\n}\n</style>\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FlatmapVuer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FlatmapVuer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FlatmapVuer.vue?vue&type=template&id=5fb00c0b&scoped=true&\"\nimport script from \"./FlatmapVuer.vue?vue&type=script&lang=js&\"\nexport * from \"./FlatmapVuer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FlatmapVuer.vue?vue&type=style&index=0&id=5fb00c0b&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5fb00c0b\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"multi-container\"},[_c('div',{staticStyle:{\"position\":\"absolute\",\"z-index\":\"10\"}},[_c('div',{staticClass:\"species-display-text\"},[_vm._v(\" Species \")]),_c('el-popover',{ref:\"selectPopover\",attrs:{\"content\":\"Select a species\",\"placement\":\"right\",\"appendToBody\":false,\"trigger\":\"manual\",\"popper-class\":\"flatmap-popper right-popper\"},model:{value:(_vm.helpMode),callback:function ($$v) {_vm.helpMode=$$v},expression:\"helpMode\"}}),_c('el-select',{directives:[{name:\"popover\",rawName:\"v-popover:selectPopover\",arg:\"selectPopover\"}],staticClass:\"select-box\",attrs:{\"id\":\"flatmap-select\",\"popper-append-to-body\":_vm.appendToBody,\"placeholder\":\"Select\",\"popper-class\":\"flatmap_dropdown\"},on:{\"change\":_vm.flatmapChanged},model:{value:(_vm.activeSpecies),callback:function ($$v) {_vm.activeSpecies=$$v},expression:\"activeSpecies\"}},_vm._l((_vm.speciesList),function(item,key){return _c('el-option',{key:key,attrs:{\"label\":key,\"value\":key}},[_c('el-row',[_c('el-col',{attrs:{\"span\":8}},[_c('i',{class:item.iconClass})]),_c('el-col',{attrs:{\"span\":12}},[_vm._v(_vm._s(key))])],1)],1)}),1)],1),_vm._l((_vm.speciesList),function(item,key){return _c('FlatmapVuer',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.activeSpecies==key),expression:\"activeSpecies==key\"}],key:key,ref:key,refInFor:true,staticStyle:{\"height\":\"100%\"},attrs:{\"showLayer\":_vm.showLayer,\"entry\":item.taxo,\"displayWarning\":item.displayWarning,\"warningMessage\":_vm.warningMessage,\"featureInfo\":_vm.featureInfo,\"minZoom\":_vm.minZoom,\"pathControls\":_vm.pathControls,\"searchable\":_vm.searchable,\"helpMode\":_vm.helpMode,\"renderAtMounted\":_vm.renderAtMounted,\"displayMinimap\":_vm.displayMinimap,\"flatmapAPI\":_vm.flatmapAPI},on:{\"resource-selected\":_vm.FlatmapSelected,\"ready\":_vm.FlatmapReady,\"pan-zoom-callback\":_vm.panZoomCallback}})})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"multi-container\">\n <div style=\"position:absolute;z-index:10;\">\n <div class=\"species-display-text\">\n Species\n </div>\n <el-popover content=\"Select a species\" placement=\"right\" \n :appendToBody=false trigger=\"manual\" popper-class=\"flatmap-popper right-popper\" v-model=\"helpMode\" ref=\"selectPopover\">\n </el-popover>\n <el-select\n id=\"flatmap-select\"\n :popper-append-to-body=\"appendToBody\"\n v-model=\"activeSpecies\"\n placeholder=\"Select\"\n class=\"select-box\"\n popper-class=\"flatmap_dropdown\"\n @change=\"flatmapChanged\"\n v-popover:selectPopover\n >\n <el-option v-for=\"(item, key) in speciesList\" :key=\"key\" :label=\"key\" :value=\"key\">\n <el-row>\n <el-col :span=\"8\"><i :class=\"item.iconClass\"></i></el-col>\n <el-col :span=\"12\">{{ key }}</el-col>\n </el-row>\n </el-option>\n </el-select>\n </div>\n <FlatmapVuer\n v-for=\"(item, key) in speciesList\"\n :key=\"key\"\n :showLayer=\"showLayer\"\n v-show=\"activeSpecies==key\"\n :entry=\"item.taxo\"\n :displayWarning=\"item.displayWarning\"\n :warningMessage=\"warningMessage\"\n :ref=\"key\"\n @resource-selected=\"FlatmapSelected\"\n @ready=\"FlatmapReady\"\n @pan-zoom-callback=\"panZoomCallback\"\n :featureInfo=\"featureInfo\"\n :minZoom=\"minZoom\"\n :pathControls=\"pathControls\"\n :searchable=\"searchable\"\n :helpMode=\"helpMode\"\n :renderAtMounted=\"renderAtMounted\"\n :displayMinimap=\"displayMinimap\"\n style=\"height:100%\"\n :flatmapAPI=\"flatmapAPI\"\n />\n </div>\n</template>\n\n\n<script>\n/* eslint-disable no-alert, no-console */\nimport Vue from \"vue\";\nimport FlatmapVuer from \"./FlatmapVuer.vue\";\nimport { Col, Option, Select, Row, Popover } from \"element-ui\"; \nimport lang from \"element-ui/lib/locale/lang/en\";\nimport locale from \"element-ui/lib/locale\";\nlocale.use(lang);\nVue.use(Col);\nVue.use(Row);\nVue.use(Option);\nVue.use(Select);\nVue.use(Popover)\n\n\nexport default {\n name: \"MultiFlatmapVuer\",\n components: {\n FlatmapVuer\n },\n mounted: function() {\n this.initialise();\n },\n methods: {\n initialise: function() {\n return new Promise(resolve => {\n fetch(this.flatmapAPI)\n .then(response => response.json())\n .then(data => {\n this.speciesLis= {};\n Object.keys(this.availableSpecies).forEach(key => {\n for (let i = 0; i < data.length; i++) {\n if (data[i].describes == this.availableSpecies[key].taxo) {\n this.speciesList[key] = this.availableSpecies[key];\n break;\n }\n }\n });\n if (!this.state) {\n if (this.initial && this.speciesList[this.initial] !== undefined) {\n this.activeSpecies = this.initial;\n } else {\n this.activeSpecies = Object.keys(this.speciesList)[0];\n }\n Vue.nextTick(() => {\n if (this.$refs[this.activeSpecies])\n this.$refs[this.activeSpecies][0].createFlatmap();\n });\n }\n resolve();\n });\n })\n },\n FlatmapSelected: function(resource) {\n this.$emit(\"resource-selected\", resource);\n },\n FlatmapReady: function(component) {\n this.$emit(\"ready\", component);\n },\n getCoordinatesOfLastClick: function() {\n const flatmap = this.$refs[this.activeSpecies];\n if (flatmap && flatmap[0]) {\n return flatmap[0].getCoordinatesOfLastClick();\n }\n return undefined;\n },\n getCurrentFlatmap: function() {\n return this.$refs[this.activeSpecies][0];\n },\n panZoomCallback: function(payload) {\n this.$emit(\"pan-zoom-callback\", payload);\n },\n showPopup: function(featureId, node, options) {\n let map = this.getCurrentFlatmap();\n map.showPopup(featureId, node, options);\n },\n showMarkerPopup: function(featureId, node, options) {\n let map = this.getCurrentFlatmap();\n map.showMarkerPopup(featureId, node, options);\n },\n flatmapChanged: function(species){\n if (this.activeSpecies != species) \n this.activeSpecies = species;\n this.$refs[this.activeSpecies][0].createFlatmap();\n this.$emit('flatmapChanged', this.activeSpecies);\n },\n /**\n * Function used for getting the current states of the scene. This exported states \n * can be imported using the importStates method.\n * \n * @public\n */\n getState: function() {\n let state = {\n species: this.activeSpecies,\n state: undefined,\n };\n let map = this.getCurrentFlatmap();\n state.state = map.getState();\n return state;\n },\n /**\n * Function used for importing the states of the scene. This exported states \n * can be imported using the read states method.\n * \n * @public\n */\n setState: function(state) {\n if (state) {\n this.initialise().then(() => {\n if (state.species && state.species !== this.activeSpecies) {\n this.activeSpecies = state.species;\n if (state.state) {\n //Wait for next tick when the refs are ready for rendering\n this.$nextTick(() => {\n this.$refs[this.activeSpecies][0].createFlatmap(state.state);\n this.$emit('flatmapChanged', this.activeSpecies);\n })\n }\n } else if (state.state) {\n let map = this.getCurrentFlatmap();\n map.setState(state.state);\n }\n })\n }\n },\n resourceSelected: function(action) {\n this.$emit(\"resource-selected\", action);\n },\n },\n props: {\n showLayer: {\n type: Boolean,\n default: false\n },\n featureInfo: {\n type: Boolean,\n default: false\n },\n pathControls: {\n type: Boolean,\n default: true\n },\n searchable: {\n type: Boolean,\n default: false\n },\n /**\n * Initial species for the flatmap.\n * This value will be ignored if a valid state object is provided.\n */\n initial: {\n type: String,\n default: \"\"\n },\n minZoom: {\n type: Number,\n default: 4\n },\n renderAtMounted: {\n type: Boolean,\n default: false\n },\n helpMode: {\n type: Boolean,\n default: false\n },\n displayMinimap: {\n type: Boolean,\n default: false\n },\n warningMessage: {\n type: String,\n default: \"Beta feature - This map is based on the connectivity of a rat. New connectivity and species specificity will be added as the SPARC program progress.\"\n },\n availableSpecies: {},\n /**\n * State containing state of the flatmap.\n */\n state: {\n type: Object,\n default: undefined,\n },\n /**\n * Specify the endpoint of the flatmap server.\n */\n flatmapAPI: {\n type: String,\n default: \"https://mapcore-demo.org/flatmaps/\"\n },\n },\n data: function() {\n return {\n activeSpecies: undefined,\n appendToBody: false,\n speciesList: {}\n };\n },\n watch: {\n state: {\n handler: function(state) {\n this.setState(state);\n },\n immediate: true,\n deep: true,\n }\n }\n};\n</script>\n\n<style scoped lang=\"scss\">\n@import \"~element-ui/packages/theme-chalk/src/select\";\n@import \"~element-ui/packages/theme-chalk/src/option\";\n\n.multi-container {\n height: 100%;\n width: 100%;\n}\n\n.species-display-text {\n width: 47px;\n height: 20px;\n color: rgb(48, 49, 51);\n font-size: 14px;\n font-weight: normal;\n line-height: 20px;\n left:24px;\n top:16px;\n position: absolute;\n}\n\n.select-box {\n width: 120px;\n border-radius: 4px;\n border: 1px solid rgb(144, 147, 153);\n background-color: var(--white);\n font-weight: 500;\n color:rgb(48, 49, 51);;\n left: 16px;\n top: 44px;\n position: absolute;\n ::v-deep .el-input__inner {\n color: rgb(48, 49, 51);\n padding-top: 0.25em;\n .is-focus {\n border: 1px solid $app-primary-color;\n }\n }\n}\n\n.flatmap_dropdown {\n .el-select-dropdown__item {\n white-space: nowrap;\n text-align: left;\n &.selected {\n color: $app-primary-color;\n font-weight: normal;\n }\n }\n}\n\n::v-deep .flatmap-popper {\n padding: 6px 4px;\n font-size:12px;\n color: rgb(48, 49, 51);\n background-color: #f3ecf6;\n border: 1px solid $app-primary-color;\n white-space: nowrap;\n min-width: unset;\n &.right-popper {\n .popper__arrow {\n border-right-color: $app-primary-color !important;\n &:after {\n border-right-color: #f3ecf6 !important;\n }\n }\n }\n}\n\n::v-deep .flatmap-marker-popup{\n background-color: #f0f0f000 !important;\n box-shadow: none !important;\n}\n\n</style>\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MultiFlatmapVuer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MultiFlatmapVuer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MultiFlatmapVuer.vue?vue&type=template&id=01b30450&scoped=true&\"\nimport script from \"./MultiFlatmapVuer.vue?vue&type=script&lang=js&\"\nexport * from \"./MultiFlatmapVuer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MultiFlatmapVuer.vue?vue&type=style&index=0&id=01b30450&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"01b30450\",\n null\n \n)\n\nexport default component.exports","// The Vue build version to load with the `import` command\n// (runtime-only or standalone) has been set in webpack.base.conf with an alias.\nimport FlatmapVuer from \"./FlatmapVuer.vue\";\nimport MultiFlatmapVuer from \"./MultiFlatmapVuer.vue\";\n \nexport {\n FlatmapVuer,\n MultiFlatmapVuer\n};\n","import './setPublicPath'\nexport * from '~entry'\n","module.exports = require(\"core-js/modules/es.string.includes.js\");","module.exports = require(\"element-ui/lib/theme-chalk/row.css\");","module.exports = require(\"element-ui/lib/radio-group\");"],"sourceRoot":""}