define([ 'base/js/namespace', 'jquery' ], function( Jupyter, $ ) { var mod_name = "mickaSearch"; var log_prefix = '[' + mod_name + '] '; var cfg = { 'window_display': false, 'csw_url': 'https://hub.lesprojekt.cz/micka/micka2/csw/', 'proxy_url': '' }; var read_config = function () { var config = IPython.notebook.config; for (var key in cfg) { if (config.data.mickaSearch.hasOwnProperty(key)) cfg[key] = config.data.mickaSearch[key]; } }; var fetch_metatada = function (search_params) { return fetch(`${cfg.proxy_url}${cfg.csw_url}${search_params}`); }; var initialize = function () { read_config(); var handler = function () { mdata = fetch_metatada('?request=GetRecords&query=&format=application/json&MaxRecords=9999&StartPosition=&sortby=title%3AA&language=eng&outputSchema=http://www.w3.org/2005/Atom'); mdata.then(response => response.json()) .then(arrayOfMetadata => { console.log(arrayOfMetadata); alert(arrayOfMetadata.records[0].id); }) .catch(error => { console.log(error); }); }; var action = { icon: 'fa-search', // a font-awesome class used on buttons, etc help : 'Micka Search', help_index : 'zz', label: 'Micka', handler : handler }; var prefix = 'micka_search'; var action_name = 'micka-search'; var full_action_name = Jupyter.actions.register(action, action_name, prefix); Jupyter.toolbar.add_buttons_group([full_action_name]); console.log(log_prefix + 'button added'); } var load_ipython_extension = function() { return IPython.notebook.config.loaded.then(initialize); }; return { load_ipython_extension: load_ipython_extension }; });