{"version":3,"sources":["tree/base.js","tree/client/connection.js","tree/client/session.js","tree/core/bokeh_events.js","tree/core/build_views.js","tree/core/dom.js","tree/core/dom_view.js","tree/core/enums.js","tree/core/has_props.js","tree/core/hittest.js","tree/core/layout/alignments.js","tree/core/layout/layout_canvas.js","tree/core/layout/side_panel.js","tree/core/layout/solver.js","tree/core/logging.js","tree/core/properties.js","tree/core/property_mixins.js","tree/core/selection_manager.js","tree/core/settings.js","tree/core/signaling.js","tree/core/ui_events.js","tree/core/util/array.js","tree/core/util/arrayable.js","tree/core/util/assert.js","tree/core/util/bbox.js","tree/core/util/callback.js","tree/core/util/canvas.js","tree/core/util/color.js","tree/core/util/compat.js","tree/core/util/data_structures.js","tree/core/util/eq.js","tree/core/util/math.js","tree/core/util/object.js","tree/core/util/projections.js","tree/core/util/refs.js","tree/core/util/selection.js","tree/core/util/serialization.js","tree/core/util/spatial.js","tree/core/util/string.js","tree/core/util/svg_colors.js","tree/core/util/templating.js","tree/core/util/text.js","tree/core/util/throttle.js","tree/core/util/typed_array.js","tree/core/util/types.js","tree/core/util/wheel.js","tree/core/util/zoom.js","tree/core/vectorization.js","tree/core/view.js","tree/core/visuals.js","tree/document.js","tree/embed.js","tree/main.js","tree/model.js","tree/models/annotations/annotation.js","tree/models/annotations/arrow.js","tree/models/annotations/arrow_head.js","tree/models/annotations/band.js","tree/models/annotations/box_annotation.js","tree/models/annotations/color_bar.js","tree/models/annotations/index.js","tree/models/annotations/label.js","tree/models/annotations/label_set.js","tree/models/annotations/legend.js","tree/models/annotations/legend_item.js","tree/models/annotations/poly_annotation.js","tree/models/annotations/span.js","tree/models/annotations/text_annotation.js","tree/models/annotations/title.js","tree/models/annotations/toolbar_panel.js","tree/models/annotations/tooltip.js","tree/models/annotations/whisker.js","tree/models/axes/axis.js","tree/models/axes/categorical_axis.js","tree/models/axes/continuous_axis.js","tree/models/axes/datetime_axis.js","tree/models/axes/index.js","tree/models/axes/linear_axis.js","tree/models/axes/log_axis.js","tree/models/axes/mercator_axis.js","tree/models/callbacks/callback.js","tree/models/callbacks/customjs.js","tree/models/callbacks/index.js","tree/models/callbacks/open_url.js","tree/models/canvas/canvas.js","tree/models/canvas/cartesian_frame.js","tree/models/canvas/index.js","tree/models/expressions/expression.js","tree/models/expressions/index.js","tree/models/expressions/stack.js","tree/models/filters/boolean_filter.js","tree/models/filters/customjs_filter.js","tree/models/filters/filter.js","tree/models/filters/group_filter.js","tree/models/filters/index.js","tree/models/filters/index_filter.js","tree/models/formatters/basic_tick_formatter.js","tree/models/formatters/categorical_tick_formatter.js","tree/models/formatters/datetime_tick_formatter.js","tree/models/formatters/func_tick_formatter.js","tree/models/formatters/index.js","tree/models/formatters/log_tick_formatter.js","tree/models/formatters/mercator_tick_formatter.js","tree/models/formatters/numeral_tick_formatter.js","tree/models/formatters/printf_tick_formatter.js","tree/models/formatters/tick_formatter.js","tree/models/glyphs/annular_wedge.js","tree/models/glyphs/annulus.js","tree/models/glyphs/arc.js","tree/models/glyphs/bezier.js","tree/models/glyphs/box.js","tree/models/glyphs/circle.js","tree/models/glyphs/ellipse.js","tree/models/glyphs/glyph.js","tree/models/glyphs/hbar.js","tree/models/glyphs/hex_tile.js","tree/models/glyphs/image.js","tree/models/glyphs/image_rgba.js","tree/models/glyphs/image_url.js","tree/models/glyphs/index.js","tree/models/glyphs/line.js","tree/models/glyphs/multi_line.js","tree/models/glyphs/oval.js","tree/models/glyphs/patch.js","tree/models/glyphs/patches.js","tree/models/glyphs/quad.js","tree/models/glyphs/quadratic.js","tree/models/glyphs/ray.js","tree/models/glyphs/rect.js","tree/models/glyphs/segment.js","tree/models/glyphs/step.js","tree/models/glyphs/text.js","tree/models/glyphs/utils.js","tree/models/glyphs/vbar.js","tree/models/glyphs/wedge.js","tree/models/glyphs/xy_glyph.js","tree/models/graphs/graph_hit_test_policy.js","tree/models/graphs/index.js","tree/models/graphs/layout_provider.js","tree/models/graphs/static_layout_provider.js","tree/models/grids/grid.js","tree/models/grids/index.js","tree/models/index.js","tree/models/layouts/box.js","tree/models/layouts/column.js","tree/models/layouts/index.js","tree/models/layouts/layout_dom.js","tree/models/layouts/row.js","tree/models/layouts/spacer.js","tree/models/layouts/widget_box.js","tree/models/mappers/categorical_color_mapper.js","tree/models/mappers/color_mapper.js","tree/models/mappers/continuous_color_mapper.js","tree/models/mappers/index.js","tree/models/mappers/linear_color_mapper.js","tree/models/mappers/log_color_mapper.js","tree/models/markers/index.js","tree/models/markers/marker.js","tree/models/plots/gmap_plot.js","tree/models/plots/gmap_plot_canvas.js","tree/models/plots/index.js","tree/models/plots/plot.js","tree/models/plots/plot_canvas.js","tree/models/ranges/data_range.js","tree/models/ranges/data_range1d.js","tree/models/ranges/factor_range.js","tree/models/ranges/index.js","tree/models/ranges/range.js","tree/models/ranges/range1d.js","tree/models/renderers/glyph_renderer.js","tree/models/renderers/graph_renderer.js","tree/models/renderers/guide_renderer.js","tree/models/renderers/index.js","tree/models/renderers/renderer.js","tree/models/scales/categorical_scale.js","tree/models/scales/index.js","tree/models/scales/linear_scale.js","tree/models/scales/log_scale.js","tree/models/scales/scale.js","tree/models/selections/index.js","tree/models/selections/interaction_policy.js","tree/models/selections/selection.js","tree/models/sources/ajax_data_source.js","tree/models/sources/cds_view.js","tree/models/sources/column_data_source.js","tree/models/sources/columnar_data_source.js","tree/models/sources/data_source.js","tree/models/sources/geojson_data_source.js","tree/models/sources/index.js","tree/models/sources/remote_data_source.js","tree/models/tickers/adaptive_ticker.js","tree/models/tickers/basic_ticker.js","tree/models/tickers/categorical_ticker.js","tree/models/tickers/composite_ticker.js","tree/models/tickers/continuous_ticker.js","tree/models/tickers/datetime_ticker.js","tree/models/tickers/days_ticker.js","tree/models/tickers/fixed_ticker.js","tree/models/tickers/index.js","tree/models/tickers/log_ticker.js","tree/models/tickers/mercator_ticker.js","tree/models/tickers/months_ticker.js","tree/models/tickers/single_interval_ticker.js","tree/models/tickers/ticker.js","tree/models/tickers/util.js","tree/models/tickers/years_ticker.js","tree/models/tiles/bbox_tile_source.js","tree/models/tiles/image_pool.js","tree/models/tiles/index.js","tree/models/tiles/mercator_tile_source.js","tree/models/tiles/quadkey_tile_source.js","tree/models/tiles/tile_renderer.js","tree/models/tiles/tile_source.js","tree/models/tiles/tile_utils.js","tree/models/tiles/tms_tile_source.js","tree/models/tiles/wmts_tile_source.js","tree/models/tools/actions/action_tool.js","tree/models/tools/actions/help_tool.js","tree/models/tools/actions/redo_tool.js","tree/models/tools/actions/reset_tool.js","tree/models/tools/actions/save_tool.js","tree/models/tools/actions/undo_tool.js","tree/models/tools/actions/zoom_in_tool.js","tree/models/tools/actions/zoom_out_tool.js","tree/models/tools/button_tool.js","tree/models/tools/edit/box_edit_tool.js","tree/models/tools/edit/edit_tool.js","tree/models/tools/edit/point_draw_tool.js","tree/models/tools/edit/poly_draw_tool.js","tree/models/tools/edit/poly_edit_tool.js","tree/models/tools/gestures/box_select_tool.js","tree/models/tools/gestures/box_zoom_tool.js","tree/models/tools/gestures/gesture_tool.js","tree/models/tools/gestures/lasso_select_tool.js","tree/models/tools/gestures/pan_tool.js","tree/models/tools/gestures/poly_select_tool.js","tree/models/tools/gestures/select_tool.js","tree/models/tools/gestures/tap_tool.js","tree/models/tools/gestures/wheel_pan_tool.js","tree/models/tools/gestures/wheel_zoom_tool.js","tree/models/tools/index.js","tree/models/tools/inspectors/crosshair_tool.js","tree/models/tools/inspectors/customjs_hover.js","tree/models/tools/inspectors/hover_tool.js","tree/models/tools/inspectors/inspect_tool.js","tree/models/tools/on_off_button.js","tree/models/tools/tool.js","tree/models/tools/tool_proxy.js","tree/models/tools/toolbar.js","tree/models/tools/toolbar_base.js","tree/models/tools/toolbar_box.js","tree/models/tools/util.js","tree/models/transforms/customjs_transform.js","tree/models/transforms/dodge.js","tree/models/transforms/index.js","tree/models/transforms/interpolator.js","tree/models/transforms/jitter.js","tree/models/transforms/linear_interpolator.js","tree/models/transforms/step_interpolator.js","tree/models/transforms/transform.js","tree/polyfill.js","tree/protocol/index.js","tree/protocol/message.js","tree/protocol/receiver.js","tree/safely.js","tree/version.js","../../node_modules/canvas2svg/canvas2svg.js","../../node_modules/d/auto-bind.js","../../node_modules/d/index.js","../../node_modules/es5-ext/array/#/clear.js","../../node_modules/es5-ext/array/#/e-index-of.js","../../node_modules/es5-ext/array/from/index.js","../../node_modules/es5-ext/array/from/is-implemented.js","../../node_modules/es5-ext/array/from/shim.js","../../node_modules/es5-ext/function/is-arguments.js","../../node_modules/es5-ext/function/is-function.js","../../node_modules/es5-ext/function/noop.js","../../node_modules/es5-ext/global.js","../../node_modules/es5-ext/math/sign/index.js","../../node_modules/es5-ext/math/sign/is-implemented.js","../../node_modules/es5-ext/math/sign/shim.js","../../node_modules/es5-ext/number/is-nan/index.js","../../node_modules/es5-ext/number/is-nan/is-implemented.js","../../node_modules/es5-ext/number/is-nan/shim.js","../../node_modules/es5-ext/number/to-integer.js","../../node_modules/es5-ext/number/to-pos-integer.js","../../node_modules/es5-ext/object/_iterate.js","../../node_modules/es5-ext/object/assign/index.js","../../node_modules/es5-ext/object/assign/is-implemented.js","../../node_modules/es5-ext/object/assign/shim.js","../../node_modules/es5-ext/object/copy.js","../../node_modules/es5-ext/object/create.js","../../node_modules/es5-ext/object/for-each.js","../../node_modules/es5-ext/object/is-callable.js","../../node_modules/es5-ext/object/is-object.js","../../node_modules/es5-ext/object/is-value.js","../../node_modules/es5-ext/object/keys/index.js","../../node_modules/es5-ext/object/keys/is-implemented.js","../../node_modules/es5-ext/object/keys/shim.js","../../node_modules/es5-ext/object/map.js","../../node_modules/es5-ext/object/normalize-options.js","../../node_modules/es5-ext/object/set-prototype-of/index.js","../../node_modules/es5-ext/object/set-prototype-of/is-implemented.js","../../node_modules/es5-ext/object/set-prototype-of/shim.js","../../node_modules/es5-ext/object/valid-callable.js","../../node_modules/es5-ext/object/valid-object.js","../../node_modules/es5-ext/object/valid-value.js","../../node_modules/es5-ext/string/#/contains/index.js","../../node_modules/es5-ext/string/#/contains/is-implemented.js","../../node_modules/es5-ext/string/#/contains/shim.js","../../node_modules/es5-ext/string/is-string.js","../../node_modules/es5-ext/string/random-uniq.js","../../node_modules/es6-iterator/array.js","../../node_modules/es6-iterator/for-of.js","../../node_modules/es6-iterator/get.js","../../node_modules/es6-iterator/index.js","../../node_modules/es6-iterator/is-iterable.js","../../node_modules/es6-iterator/string.js","../../node_modules/es6-iterator/valid-iterable.js","../../node_modules/es6-promise/dist/es6-promise.js","../../node_modules/es6-set/implement.js","../../node_modules/es6-set/is-implemented.js","../../node_modules/es6-set/is-native-implemented.js","../../node_modules/es6-set/lib/iterator.js","../../node_modules/es6-set/polyfill.js","../../node_modules/es6-symbol/index.js","../../node_modules/es6-symbol/is-implemented.js","../../node_modules/es6-symbol/is-symbol.js","../../node_modules/es6-symbol/polyfill.js","../../node_modules/es6-symbol/validate-symbol.js","../../node_modules/es6-weak-map/implement.js","../../node_modules/es6-weak-map/is-implemented.js","../../node_modules/es6-weak-map/is-native-implemented.js","../../node_modules/es6-weak-map/polyfill.js","../../node_modules/event-emitter/index.js","../../node_modules/flatbush/flatbush.js","../../node_modules/hammerjs/hammer.js","../../node_modules/kiwi/build/constraint.js","../../node_modules/kiwi/build/expression.js","../../node_modules/kiwi/build/index.js","../../node_modules/kiwi/build/maptype.js","../../node_modules/kiwi/build/solver.js","../../node_modules/kiwi/build/strength.js","../../node_modules/kiwi/build/tsu/algorithm.js","../../node_modules/kiwi/build/tsu/array_base.js","../../node_modules/kiwi/build/tsu/associative_array.js","../../node_modules/kiwi/build/tsu/index.js","../../node_modules/kiwi/build/tsu/iterator.js","../../node_modules/kiwi/build/tsu/pair.js","../../node_modules/kiwi/build/variable.js","../../node_modules/numbro/numbro.js","../../node_modules/proj4/lib/Proj.js","../../node_modules/proj4/lib/adjust_axis.js","../../node_modules/proj4/lib/common/adjust_lon.js","../../node_modules/proj4/lib/common/msfnz.js","../../node_modules/proj4/lib/common/phi2z.js","../../node_modules/proj4/lib/common/sign.js","../../node_modules/proj4/lib/common/toPoint.js","../../node_modules/proj4/lib/common/tsfnz.js","../../node_modules/proj4/lib/constants/Datum.js","../../node_modules/proj4/lib/constants/Ellipsoid.js","../../node_modules/proj4/lib/constants/PrimeMeridian.js","../../node_modules/proj4/lib/constants/units.js","../../node_modules/proj4/lib/core.js","../../node_modules/proj4/lib/datum.js","../../node_modules/proj4/lib/datumUtils.js","../../node_modules/proj4/lib/datum_transform.js","../../node_modules/proj4/lib/defs.js","../../node_modules/proj4/lib/deriveConstants.js","../../node_modules/proj4/lib/extend.js","../../node_modules/proj4/lib/global.js","../../node_modules/proj4/lib/parseCode.js","../../node_modules/proj4/lib/projString.js","../../node_modules/proj4/lib/projections.js","../../node_modules/proj4/lib/projections/longlat.js","../../node_modules/proj4/lib/projections/merc.js","../../node_modules/proj4/lib/transform.js","../../node_modules/proj4/lib/wkt.js","../../node_modules/sprintf-js/src/sprintf.js","../../node_modules/timezone/index.js","../../node_modules/tslib/tslib.js"],"names":["require","module","exports","models","object_1","overrides","_all_models","clone","Models","name","model","Error","register","unregister","register_models","force","errorFn","name_1","hasOwnProperty","console","warn","registered_names","Object","keys","index","es6_promise_1","logging_1","document_1","message_1","receiver_1","session_1","DEFAULT_SERVER_WEBSOCKET_URL","DEFAULT_SESSION_ID","_connection_count","ClientConnection","url","id","args_string","_on_have_session_hook","_on_closed_permanently_hook","this","_number","socket","session","closed_permanently","_current_handler","_pending_ack","_pending_replies","_receiver","Receiver","logger","debug","prototype","connect","_this","Promise","reject","versioned_url","length","WebSocket","resolve","binaryType","onopen","_on_open","onmessage","event","_on_message","onclose","_on_close","onerror","_on_error","error","close","_connection_closed","_schedule_reconnect","milliseconds","setTimeout","info","send","message","send_with_reply","promise","msgid","then","msgtype","content","_pull_doc_json","Message","create","reply","_repull_session_doc","doc_json","document_2","Document","from_json","patch","_compute_patch_since_json","events","patch_message","ClientSession","document","replace_with_json","catch","trace","_awaiting_ack_handler","consume","data","e","_close_bad_protocol","toString","msg","problem","code","reason","pop_pending","reqid","promise_funcs_1","promise_funcs","detail","_steady_state_handler","handle","pull_session","session_id","_","_connection","_document_listener","_document_changed","on_change","event_manager","_handle_patch","_handle_ok","_handle_error","send_event","JSON","stringify","remove_on_change","request_server_info","force_roundtrip","setter_id","ModelChangedEvent","attr","serializable_attributes","create_json_patch","apply_json_patch","buffers","register_event_class","event_name","event_cls","event_classes","tslib_1","register_with_event","_i","arguments","applicable_models","concat","BokehEvent","options","model_id","_options","set_model_id","is_applicable_to","obj","some","event_class","type","toJSON","event_values","_customize_event","_model","ButtonClick","_super","apply","__extends","__decorate","UIEvent","LODStart","LODEnd","SelectionGeometry","call","geometry","final","Reset","PointEvent","sx","sy","x","y","from_event","plot","xscale","plot_canvas","frame","xscales","yscale","yscales","invert","Pan","delta_x","delta_y","deltaX","deltaY","direction","Pinch","scale","MouseWheel","delta","MouseMove","MouseEnter","MouseLeave","Tap","DoubleTap","Press","PanStart","PanEnd","PinchStart","PinchEnd","array_1","build_views","view_storage","cls","default_view","to_remove_1","difference","map","remove","created_views","_a","new_models_1","filter","view_cls","view_options","extend","connect_signals","view","push","_b","created_views_1","remove_views","matches","el","selector","p","Element","f","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","types_1","_createElement","tag","attrs","append","child","HTMLElement","element","appendChild","isString","createTextNode","children","createElement","value","isBoolean","isArray","classList","add","isObject","prop","style","key","dataset","setAttribute","_c","children_1","_d","child_1","_child","div","span","link","a","i","pre","button","label","input","select","option","optgroup","textarea","canvas","ul","ol","li","nbsp","removeElement","parent","parentNode","removeChild","replaceWith","replacement","replaceChild","prepend","nodes","first","firstChild","nodes_1","node","insertBefore","empty","show","display","hide","position","top","offsetTop","left","offsetLeft","offset","rect","getBoundingClientRect","window","pageYOffset","documentElement","clientTop","pageXOffset","clientLeft","parentElement","margin","getComputedStyle","parseFloat","marginTop","bottom","marginBottom","marginLeft","right","marginRight","padding","paddingTop","paddingBottom","paddingLeft","paddingRight","Keys","view_1","DOM","DOMView","initialize","_has_finished","css_classes","defineProperty","get","enumerable","configurable","layout","render","renderTo","replace","has_finished","body","is_root","_solver","solver","tagName","class","View","AngleUnits","Dimension","Dimensions","Direction","FontStyle","LatLon","LineCap","LineJoin","Location","LegendClickPolicy","LegendLocation","Anchor","Orientation","OutputBackend","RenderLevel","RenderMode","Side","Place","SpatialUnits","StartEnd","VerticalAlign","TextAlign","TextBaseline","TickLabelOrientation","TooltipAttachment","Distribution","StepMode","SizingMode","PaddingUnits","SliderCallbackPolicy","RoundingFunction","UpdateMode","HTTPMethod","Logo","signaling_1","property_mixins","refs_1","string_1","eq_1","HasProps","_subtype","undefined","destroyed","Signal0","change","transformchange","attributes","properties","_set_after_defaults","_pending","_changing","props","default_value","setv","uniqueId","silent","deferred","__deferred__","finalize","initClass","mixins","define","Any","_fix_default","_attr","isFunction","copy","_loop_1","name_2","this_1","getv","set","internal","refined_prop","_object","name_3","mixin","names","override","name_4","name_5","update","spec","transform","emit","disconnect_signals","Signal","disconnectReceiver","destroy","constructor","_setv","check_eq","changes","changing","current","val","isEqual","no_change","prop_name","defaults","isEmpty","old","_tell_document_about_change","ref","create_ref","set_subtype","subtype","attribute_is_serializable","name_6","_value_to_json","_key","_optional_parent_object","ref_array","v","ref_obj","subkey","attributes_as_json","include_defaults","value_to_json","serializable","_json_record_references","doc","result","recurse","is_ref","get_model_by_id","_value_record_references","v_1","elem","k","immediate","_immediate_references","immediate_1","buffer","ArrayBuffer","v_2","values","references","_doc_attached","attach_document","detach_document","new_","new_refs","old_refs","need_invalidate","new_id","old_id","_invalidate_all_models","_notify_change","materialize_dataspecs","source","name_7","dataspec","optional","array","field","_shapes","Distance","max","Signalable","sqr","dist_2_pts","p0","p1","dist_to_segment_squared","w","l2","t","q","selection_1","point_in_poly","px","py","inside","x1","y1","x2","y2","create_empty_hit_test_result","Selection","create_hit_test_result_from_hits","hits","indices","sortBy","validate_bbox_coords","x0","y0","minX","minY","maxX","maxY","dist_to_segment","Math","sqrt","check_2_segments_intersect","l0_x0","l0_y0","l0_x1","l0_y1","l1_x0","l1_y0","l1_x1","l1_y1","den","hit","b","num1","num2","solver_1","vstack","container","constraints","EQ","head","_bottom","tail","_top","pairwise","prev","next","_left","_right","hstack","children_2","has_props_1","bbox_1","LayoutCanvas","Variable","_width","_height","_hcenter","_vcenter","get_editables","get_constraints","GE","get_layoutable_children","BBox","width","height","hcenter","vcenter","compute","v_compute","xx","_xx","Float64Array","yy","_yy","isSizeable","layout_canvas_1","pi2","PI","ALPHABETIC","CENTER","_angle_lookup","above","parallel","normal","horizontal","vertical","below","_baseline_lookup","justified","_align_lookup","_align_lookup_negative","_align_lookup_positive","isSizeableView","_view_sizes","WeakMap","_view_constraints","update_panel_constraints","s","size","get_size","constraint","has_constraint","remove_constraint","panel","_size","add_constraint","SidePanel","side","String","_dim","_normals","apply_label_text_heuristics","ctx","orient","baseline","align","textBaseline","textAlign","get_label_angle_heuristic","_constrainer","op","terms","kiwi_1","Constraint","Expression","bind","_weak_constrainer","Strength","weak","Operator","Eq","LE","Le","Ge","WEAK_EQ","WEAK_LE","WEAK_GE","Solver","clear","num_constraints","num_editables","numConstraints","numEditVariables","getConstraints","update_variables","updateVariables","hasConstraint","addConstraint","removeConstraint","add_edit_variable","variable","strength","addEditVariable","remove_edit_variable","removeEditVariable","suggest_value","suggestValue","_loggers","LogLevel","level","Logger","INFO","_name","set_level","log_levels","logger_1","TypeError","get_level","_log_level","log_level","logger_name","log_level_1","OFF","method_name","log","_method_factory","_args","TRACE","DEBUG","WARN","ERROR","FATAL","fatal","off","set_log_level","levels","join","valueToString","isSpec","expr","simple_prop","pred","class_1","validate","Property","enum_prop","enum_values","class_2","includes","units_prop","valid_units","default_units","class_3","init","units","Number","enums","svg_colors_1","color_1","arrayable_1","_init","_value","do_spec_transform","ret","get_column","length_1","get_length","repeat","attr_value","_x","Array","Bool","Boolean","Color","is_svg_color","toLowerCase","substring","valid_rgb","Instance","isNumber","Int","Percent","Font","Uint8Array","Angle","AngleSpec","ColorSpec","DistanceSpec","FontSizeSpec","NumberSpec","StringSpec","_gen_mixin","prefix","_line_mixin","line_color","line_width","line_alpha","line_join","line_cap","line_dash","line_dash_offset","line","_fill_mixin","fill_color","fill_alpha","fill","_text_mixin","text_font","text_font_size","text_font_style","text_color","text_alpha","text_align","text_baseline","text_line_height","text","configs","configs_1","config","split","kind","glyph_renderer_1","graph_renderer_1","SelectionManager","inspectors","renderer_views","glyph_renderer_views","graph_renderer_views","renderer_views_1","r","GlyphRendererView","GraphRendererView","did_hit","graph_renderer_views_1","hit_test_result","selection_policy","hit_test","do_selection","inspect","renderer_view","is_empty","inspection","get_or_create_inspector","inspected","inspection_policy","do_inspection","rview","selected","rmodel","Settings","_dev","dev","settings","findConnection","conns","signal","slot","context","find","conn","scheduleCleanup","connections","dirtySet","callback_1","defer","cleanupDirtySet","forEach","removeBy","connection","sender","receiversForSender","has","receivers","receiver","sendersForReceiver","senders","disconnect","args","receivers_1","disconnectBetween","senders_1","disconnectSender","receivers_2","senders_2","disconnectAll","receivers_3","senders_3","Base","_Signalable","Set","Hammer","dom_1","wheel_1","bokeh_events_1","is_mobile","navigator","maxTouchPoints","UIEvents","plot_view","toolbar","hit_area","pan_start","pan","pan_end","pinch_start","pinch","pinch_end","rotate_start","rotate","rotate_end","tap","doubletap","press","move_enter","move","move_exit","scroll","keydown","keyup","hammer","_configure_hammerjs","recognizeWith","requireFailure","dropRequireFailure","on","_doubletap","_tap","_press","DIRECTION_ALL","_pan_start","_pan","_pan_end","enable","_pinch_start","_pinch","_pinch_end","_rotate_start","_rotate","_rotate_end","addEventListener","_mouse_move","_mouse_enter","_mouse_exit","_mouse_wheel","_key_down","_key_up","register_tool","tool_view","et","event_type","_register_tool","shared","conditionally","fn","arg","unconditionally","_move_enter","_move","_move_exit","_scroll","_keydown","_keyup","_hit_test_renderers","views","get_renderer_views","reversed","bbox","contains","_hit_test_frame","_trigger","srcEvent","gestures","base_type","active_gesture","active","trigger","active_inspectors","cursor","set_cursor","inspector","target","on_hit","base","preventDefault","stopPropagation","_trigger_bokeh_event","trigger_event","_get_sxy","TouchEvent","is_touch","touches","changedTouches","pageX","pageY","_gesture_event","__assign","shiftKey","_tap_event","_move_event","_scroll_event","getDeltaY","_key_event","keyCode","ev","arrays","indexOf","range","start","stop","step","assert_1","assert","ceil","abs","findIndexFactory","dir","predicate","uniq","array_3","math_1","min","minBy","maxBy","sum","slice","last","nth","zip","As","Bs","n","ABs","unzip","linspace","num","transpose","rows","cols","transposed","j","cumsum","reduce","argmin","argmax","all","item","any","array_2","findIndex","findLastIndex","findLast","sortedIndex","low","high","mid","floor","tmp","sort","uniqBy","seen","array_4","computed","union","intersection","array_5","arrays_1","other","rest","splice","shuffle","shuffled","rand","randomIn","items","len","items_1","insert","Infinity","resultComputed","length_2","length_3","length_4","AssertionError","condition","positive_x","MIN_VALUE","positive_y","box","end","h_range","v_range","clip","that","delay","func","wait","_defer","requestAnimationFrame","setImmediate","throttle","timeout","previous","later","leading","Date","now","remaining","clearTimeout","trailing","once","memo","done","fixup_ctx","setLineDash","dash","mozDash","webkitLineDash","getLineDash","fixup_line_dash","setLineDashOffset","lineDashOffset","mozDashOffset","webkitLineDashOffset","getLineDashOffset","fixup_line_dash_offset","setImageSmoothingEnabled","imageSmoothingEnabled","mozImageSmoothingEnabled","oImageSmoothingEnabled","webkitImageSmoothingEnabled","msImageSmoothingEnabled","getImageSmoothingEnabled","fixup_image_smoothing","measureText","html5MeasureText","textMetrics","ascent","fixup_measure_text","ellipse","radiusX","radiusY","rotation","_startAngle","_endAngle","anticlockwise","translate","rx","ry","moveTo","bezierCurveTo","fixup_ellipse","get_scale_ratio","hidpi","backend","devicePixelRatio_1","devicePixelRatio","backingStoreRatio","webkitBackingStorePixelRatio","mozBackingStorePixelRatio","msBackingStorePixelRatio","oBackingStorePixelRatio","backingStorePixelRatio","_component2hex","h","color2hex","color","svg_colors","rgb","hex","color2rgba","alpha","rgba","match","parseInt","params","RegExp","test","contents","is_ie","userAgent","is_little_endian","buf","buf8","buf32","Uint32Array","little_endian","MultiDict","_dict","_existing","add_value","existing","remove_value","new_array","get_one","duplicate_error","_compact","newArray","missing","from","to","str","intersect","newSet","diff","eq","aStack","bStack","className","areArrays","aCtor","bCtor","pop","angle_norm","angle","angle_dist","lhs","rhs","random","angle_between","norm_mid","d","cond","atan2","rnorm","mu","sigma","r1","r2","E","rn","clamp","dest","sources","sources_1","object","merge","obj1","obj2","keys_1","arr1","arr2","project_xy","merc_x_s","merc_y_s","wgs84_mercator","forward","merc_x","merc_y","proj4","Projection","mercator","wgs84","mercator_bounds","lon","lat","latlon_bounds","clip_mercator","dimension","in_bounds","project_xsys","xs","ys","merc_xs_s","merc_ys_s","get_indices","data_source","glyph","swap16","byteOffset","swap32","swap64","process_buffer","need_swap","order","BYTE_ORDER","shape","bytes","buffers_1","header","parse","__buffer__","arr","ARRAY_TYPES","dtype","BYTES_PER_ELEMENT","process_array","decode_base64","arrayBufferToBase64","chars","fromCharCode","btoa","base64ToArrayBuffer","base64","binary_string","atob","charCodeAt","__ndarray__","encode_base64","b64","Int8Array","Uint16Array","Int16Array","Int32Array","Float32Array","arrayName","DTYPES","compat_1","uint8","int8","uint16","int16","uint32","int32","float32","float64","decode_column_data","new_data","new_shapes","shapes","encode_column_data","new_v","isTypedArray","FlatBush","SpatialIndex","points","points_1","finish","search","uuid4","substr","settings_1","startsWith","searchString","counter","escape","ch","unescape","entity","use_strict","indianred","lightcoral","salmon","darksalmon","lightsalmon","crimson","red","firebrick","darkred","pink","lightpink","hotpink","deeppink","mediumvioletred","palevioletred","coral","tomato","orangered","darkorange","orange","gold","yellow","lightyellow","lemonchiffon","lightgoldenrodyellow","papayawhip","moccasin","peachpuff","palegoldenrod","khaki","darkkhaki","lavender","thistle","plum","violet","orchid","fuchsia","magenta","mediumorchid","mediumpurple","blueviolet","darkviolet","darkorchid","darkmagenta","purple","indigo","slateblue","darkslateblue","mediumslateblue","greenyellow","chartreuse","lawngreen","lime","limegreen","palegreen","lightgreen","mediumspringgreen","springgreen","mediumseagreen","seagreen","forestgreen","green","darkgreen","yellowgreen","olivedrab","olive","darkolivegreen","mediumaquamarine","darkseagreen","lightseagreen","darkcyan","teal","aqua","cyan","lightcyan","paleturquoise","aquamarine","turquoise","mediumturquoise","darkturquoise","cadetblue","steelblue","lightsteelblue","powderblue","lightblue","skyblue","lightskyblue","deepskyblue","dodgerblue","cornflowerblue","royalblue","blue","mediumblue","darkblue","navy","midnightblue","cornsilk","blanchedalmond","bisque","navajowhite","wheat","burlywood","tan","rosybrown","sandybrown","goldenrod","darkgoldenrod","peru","chocolate","saddlebrown","sienna","brown","maroon","white","snow","honeydew","mintcream","azure","aliceblue","ghostwhite","whitesmoke","seashell","beige","oldlace","floralwhite","ivory","antiquewhite","linen","lavenderblush","mistyrose","gainsboro","lightgray","lightgrey","silver","darkgray","darkgrey","gray","grey","dimgray","dimgrey","lightslategray","lightslategrey","slategray","slategrey","darkslategray","darkslategrey","black","basic_formatter","_format","_special_vars","format","sprintf_js_1","sprintf","get_formatter","raw_spec","formatters","formatter_1","DEFAULT_FORMATTERS","special_vars","get_value","column","row","dim2","dim1","flat_index","Numbro","tz","numeral","datetime","printf","replace_placeholders","_match","long_name","formatter","cache","get_text_height","font","block","verticalAlign","descent","delay_animation","webkitRequestAnimationFrame","mozRequestAnimationFrame","msRequestAnimationFrame","callback","pending","array0","arrays_2","isInteger","isFinite","isStrictNaN","isArrayOf","isArrayableOf","tp","fontSize","deltaMode","DOM_DELTA_LINE","offsetParent","lineHeight","DOM_DELTA_PAGE","clientHeight","pageHeight","scale_highlow","factor","center","get_info","scales","sxy0","sxy1","r_invert","scale_range","h_axis","v_axis","hfactor","sx0","sx1","xrs","vfactor","sy0","sy1","yrs","isValue","isField","removed","_parent","root","notify_finished","ContextProperties","do_spec","do_attr","doit","warm_cache","cache_select","set_vectorize","all_indices","_set_vectorize","Line","set_value","strokeStyle","globalAlpha","lineWidth","lineJoin","lineCap","color_value","g","Fill","fillStyle","Text","font_value","font_size","font_style","Visuals","set_all_indices","base_1","version_1","serialization_1","data_structures_1","layout_dom_1","column_data_source_1","model_1","EventManager","subscribed_models","_process_event","DocumentChangedEvent","json","value_json","value_refs","new","TitleChangedEvent","title","_references","RootAddedEvent","RootRemovedEvent","documents","DEFAULT_TITLE","_init_timestamp","_title","_roots","_all_models_by_name","_all_models_freeze_count","_callbacks","idle","_idle_roots","_interactive_timestamp","_interactive_plot","LayoutDOM","layoutables","notify_idle","is_idle","_push_all_models_freeze","remove_root","_pop_all_models_freeze","interactive_start","interactive_stop","interactive_duration","destructively_move","dest_doc","roots","roots_1","roots_2","add_root","set_title","_recompute_all_models","new_all_models_set","old_all_models_set","to_detach","to_attach","recomputed","m","_e","Model","_f","_g","_trigger_on_change","get_model_by_name","cb","_references_json","references_json","references_1","_instantiate_object","obj_id","obj_type","obj_attrs","full_attrs","_instantiate_references_json","existing_models","references_json_1","instance","_resolve_refs","old_references","new_references","resolve_ref","results","resolve_array","dict","resolved","resolve_dict","_initialize_references_json","foreach_depth_first","foreach_value","already_started","was_new","to_update","references_json_2","resolved_attrs","_attrs","_event_for_attribute_change","changed_obj","new_value","changed_model","event_1","_events_to_sync_objects","from_obj","to_obj","to_doc","from_keys","to_keys","added","removed_1","added_1","shared_1","old_value","refs","to_json","from_references","from_roots","from_root_ids","root_ids","to_references","to_roots","to_root_ids","update_model_events","to_json_string","root_references","from_json_string","py_version","version","is_dev","versions_string","roots_json","root_ids_1","create_json_patch_string","json_events","events_1","event_2","events_json","events_json_1","event_json","events_json_2","patched_id","patched_obj","model_type","column_source_id","column_source","ColumnDataSource","rollover","stream","patches","root_id","root_obj","_handle_notebook_comms","comm_msg","_init_comms","Jupyter","notebook","kernel","comm_manager","register_target","comm","on_msg","kernels","registerCommTarget","onMsg","_create_view","_get_element","element_id","elementid","getElementById","script","bokehLogLevel","bokehDocId","bokehModelId","bokehSessionId","docid","modelid","sessionid","fill_render_item_from_script_tag","BOKEH_ROOT","add_model_standalone","add_document_standalone","use_for_title","render_model","unrender_model","_get_session","websocket_url","_sessions","subsessions","connection_1","add_document_from_session","location","add_model_from_session","_get_ws_url","app_path","absolute_url","protocol","loc","href","pathname","host","inject_css","rel","inject_raw_css","css","embed_items_notebook","docs_json","render_items","render_items_1","notebook_comms_target","embed_items","docs","render_items_2","_embed_items","embed","safely_1","safely","tags","js_property_callbacks","js_event_callbacks","subscribed_events","base_evt","callbacks","evt","execute","callbacks_1","_update_event_callbacks","select_one","side_panel_1","proj","renderer_1","AnnotationView","_get_size","visible","round","set_data","plot_model","use_map","_y","_xs","_ys","RendererView","Annotation","add_panel","set_panel","Renderer","annotation_1","arrow_head_1","ArrowView","request_render","streaming","patching","visuals","_map_data","sx_start","sy_start","start_units","x_range_name","_x_start","y_range_name","_y_start","xview","yview","sx_end","sy_end","end_units","_x_end","_y_end","canvas_view","save","_arrow_head","beginPath","closePath","_arrow_body","restore","action","_end","lineTo","stroke","Arrow","x_start","y_start","x_end","y_end","OpenHead","visuals_1","ArrowHead","NormalHead","_normal","VeeHead","_vee","TeeHead","_ctx","BandView","_lower_sx","dim","limit_scale","base_scale","limit_view","base_view","lower","_lower","_upper_sx","upper","_upper","_base_sx","_base","_lower_sy","_upper_sy","Band","BoxAnnotationView","canvas_overlays","render_mode","data_update","_calc_dim","dim_units","frame_extrema","screen","sleft","left_units","sright","right_units","top_units","sbottom","bottom_units","draw","_css_box","_canvas_box","sw","sh","borderWidth","borderColor","backgroundColor","opacity","ld","borderStyle","BoxAnnotation","basic_ticker_1","basic_tick_formatter_1","linear_color_mapper_1","linear_scale_1","log_scale_1","range1d_1","text_util","ColorBarView","_set_canvas_image","ticker","color_mapper","compute_legend_dimensions","palette","orientation","image_ctx","getContext","image_data","getImageData","cmap","LinearColorMapper","rgba_mapper","putImageData","image","legend_height","legend_width","image_dimensions","_computed_image_dimensions","image_height","image_width","label_extent","_get_label_extent","title_extent","_title_extent","tick_extent","_tick_extent","compute_legend_location","legend_dimensions","legend_margin","ranges","hr","vr","vx","vy","_draw_bbox","image_offset","_get_image_offset","_draw_image","tick_info","_draw_major_ticks","_draw_minor_ticks","_draw_major_labels","_draw_title","background_fill","fillRect","border_line","strokeRect","scale_alpha","drawImage","bar_line","major_tick_line","nx","ny","x_offset","y_offset","coords","major","tin","major_tick_in","tout","major_tick_out","minor_tick_line","minor","minor_tick_in","minor_tick_out","major_label_text","standoff","label_standoff","x_standoff","y_standoff","formatted_labels","labels","fillText","title_text","title_standoff","major_labels","ctx_1","ColorBar","BasicTicker","BasicTickFormatter","major_label_overrides","background_fill_color","background_fill_alpha","bar_line_color","border_line_color","major_label_text_align","major_label_text_baseline","major_label_text_font_size","major_tick_line_color","minor_tick_line_color","title_text_font_size","title_text_font_style","title_text_font","frame_height","frame_width","_tick_coordinate_scale","scale_length","source_range","Range1d","target_range","LinearScale","LogScale","_format_major_labels","initial_labels","major_ticks","doFormat","ticks","get_ticks","desired_num_ticks","majors","minors","major_coords","minor_coords","ii","coord","arrow_1","arrow_head_2","arrow_head_3","arrow_head_4","arrow_head_5","band_1","box_annotation_1","color_bar_1","label_1","Label","label_set_1","LabelSet","legend_1","Legend","legend_item_1","LegendItem","poly_annotation_1","PolyAnnotation","span_1","Span","text_annotation_1","TextAnnotation","title_1","Title","toolbar_panel_1","ToolbarPanel","tooltip_1","Tooltip","whisker_1","Whisker","LabelView","is_horizontal","angle_units","x_units","y_units","_canvas_text","_css_text","TextAnnotationView","LabelSetView","_text","_v_canvas_text","_v_css_text","_x_offset","_y_offset","_angle","bbox_dims","_calculate_bounding_box_dimensions","textContent","text_1","LegendView","click_policy","compute_legend_bbox","legend_names","get_legend_names","glyph_height","glyph_width","label_height","label_width","max_label_height","label_text","text_widths","legend_names_1","max_label_width","legend_padding","legend_spacing","spacing","yoffset","xoffset","legend_bbox","get_labels_list_from_label_prop","labels_1","renderers","_h","muted","_draw_legend_box","_draw_legend_items","get_field_from_label_prop","labels_2","draw_legend","inactive_fill","border_line_alpha","border_line_width","inactive_fill_color","inactive_fill_alpha","label_text_font_size","label_text_baseline","columnar_data_source_1","vectorization_1","_check_data_sources_on_renderers","_check_field_label_on_data_source","columns","data_source_validation","field_validation","ColumnarDataSource","PolyAnnotationView","xs_units","ys_units","SpanView","for_hover","computed_location","_draw_span","location_units","_calculate_text_dimensions","TitleView","_get_location","hmargin","vertical_align","build_views_1","ToolbarPanelView","canvas_events","_toolbar_views","overflow","compute_side","attachment","TooltipView","_draw_tips","custom","data_1","sx_1","sy_1","inner_only","tip","offsetWidth","clientWidth","offsetHeight","show_arrow","childNodes","WhiskerView","lower_head","upper_head","guide_renderer_1","factor_range_1","AxisView","extents","tick","tick_label","_tick_label_extents","axis_label","_axis_label_extent","tick_coords","_draw_rule","_draw_axis_label","_render","fixed_location","_tick_label_extent","_extents","axis_line","rule_coords","map_to_screen","sxs","sys","normals","offsets","xoff","yoff","_draw_ticks","compute_labels","major_label_orientation","major_label_standoff","_draw_oriented_labels","_tick_coords","axis_label_standoff","axis_label_text","nxin","nyin","nxout","nyout","_side","dxs","dys","nxd","nyd","_oriented_labels_extent","hscale","c","cos","sin","extent","GuideRendererView","Axis","bounds","axis_line_color","axis_label_text_font_size","axis_label_text_font_style","x_ranges","y_ranges","user_bounds","range_bounds","user_start","user_end","range_start","range_end","computed_bounds","NaN","range_min","range_max","cross_range_1","FactorRange","synthetic","cross_range","GuideRenderer","axis_1","categorical_ticker_1","categorical_tick_formatter_1","CategoricalAxisView","_draw_group_separators","tops","separator_line","alt","ind","factors","pt","tex","_get_factor_info","info_1","group_label_orientation","group_text","mid_labels","mids","subgroup_label_orientation","subgroup_text","CategoricalAxis","CategoricalTicker","CategoricalTickFormatter","separator_line_color","separator_line_width","group_text_font_style","group_text_font_size","group_text_color","subgroup_text_font_style","subgroup_text_font_size","ContinuousAxis","linear_axis_1","datetime_tick_formatter_1","datetime_ticker_1","DatetimeAxisView","LinearAxisView","DatetimeAxis","DatetimeTicker","DatetimeTickFormatter","LinearAxis","categorical_axis_1","continuous_axis_1","datetime_axis_1","log_axis_1","LogAxis","mercator_axis_1","MercatorAxis","log_tick_formatter_1","log_ticker_1","LogAxisView","LogTicker","LogTickFormatter","mercator_tick_formatter_1","mercator_ticker_1","MercatorAxisView","MercatorTicker","MercatorTickFormatter","Callback","CustomJS","Function","cb_obj","cb_data","customjs_1","open_url_1","OpenURL","templating_1","_cb_obj","open","dom_view_1","canvas_1","canvas2svg","CanvasPixelArray","CanvasView","map_el","output_backend","canvas_el","getSvg","overlays_el","events_el","get_ctx","get_canvas_element","prepare_canvas","pixel_ratio","use_hidpi","set_dims","_width_constraint","_height_constraint","Canvas","categorical_scale_1","data_range1d_1","CartesianFrame","extra_x_ranges","extra_y_ranges","x_range","y_range","x_scale","y_scale","_configure_scales","x_name","y_name","_get_ranges","extra_ranges","_get_scales","frame_range","DataRange1d","CategoricalScale","scale_hint","_configure_frame_ranges","_h_target","_v_target","_x_ranges","_y_ranges","_xscales","_yscales","update_scales","cartesian_frame_1","_connected","_result","_v_compute","expression_1","stack_1","Stack","fields","filter_1","BooleanFilter","booleans","compute_indices","Filter","CustomJSFilter","_source","GroupFilter","column_name","group","boolean_filter_1","customjs_filter_1","group_filter_1","index_filter_1","IndexFilter","tick_formatter_1","last_precision","precision","use_scientific","power_limit_high","power_limit_low","pow","_axis","zero_eps","need_sci","ticks_1","tick_abs","scientific_limit_high","scientific_limit_low","toExponential","toFixed","asc","is_ok","TickFormatter","_array","_strftime","microsecond_replacement_string","_us","format_order","strip_leading_zeros","microseconds","seconds","minsec","minutes","hourmin","hours","days","months","years","_update_width_formats","_widths","fmt_strings","sizes","fmt_string","sorted","_width_formats","_get_resolution_str","resolution_secs","span_secs","adjusted_secs","resol","resol_ndx","time_tuple_ndx_for_resol","format_order_1","fmt","tm","hybrid_handled","next_ndx","next_format","ss","isNaN","FuncTickFormatter","_make_func","func_tick_formatter_1","numeral_tick_formatter_1","NumeralTickFormatter","printf_tick_formatter_1","PrintfTickFormatter","axis","small_interval","projections_1","proj_ticks","inverse","language","rounding","_rounding_fn","xy_glyph_1","utils_1","hittest","AnnularWedgeView","inner_radius","sinner_radius","sdist","renderer","_inner_radius","outer_radius","souter_radius","_outer_radius","_start_angle","_end_angle","indices_1","arc","_hit_point","max_outer_radius","candidates","or2","ir2","r_compute","dist","candidates_1","draw_legend_for_index","generic_area_legend","_scenterxy","scenterx","scentery","XYGlyphView","AnnularWedge","start_angle","end_angle","XYGlyph","AnnulusView","clockwise","Annulus","ArcView","radius","sradius","_radius","generic_line_legend","Arc","_cbb","x3","y3","tvalues","b2ac","sqrtb2ac","t1","t2","jlen","mt","spatial_1","glyph_1","BezierView","_index_data","_x0","_x1","_y0","_y1","_cx0","_cy0","_cx1","_cy1","scx0","scy0","scx1","scy1","GlyphView","Bezier","Glyph","BoxView","_index_box","_lrtb","l","_hit_rect","_hit_rect_against_index","_hit_span","Box","CircleView","rd","radius_dimension","max_size","max_radius","_mask_data","candidates_2","ms","_hit_poly","idx","Circle","EllipseView","_set_data","max_w2","max_width","max_h2","max_height","_bounds","Ellipse","line_1","_nohit_warned","gl","webgl_module","Cls","glglyph","set_visuals","set_visuals_changed","log_bounds","bb","positive_x_bbs","positive_x_bbs_1","positive_y_bbs","positive_y_bbs_1","get_anchor_point","anchor","pts","spans","pts_location","dilate","pt0","pt1","halfspan","spt0","spt1","_bbox","_index","indices_to_update","LineView","data_subset","charAt","xr_1","yr_1","_coords","xname","yname","v_synthetic","set_data_changed","index_data","_indices","mask_data","map_data","sxname","syname","coords_1","box_1","HBarView","HBar","HexTileView","_q","aspect_scale","_r","ysize","xsize","_get_unscaled_vertices","svx","svy","rscale","_scale","HexTile","ImageView","_update_image","global_alpha","_dw","_dh","_image_index","dx","dy","image_indices","_image","img","_image_shape","_image_data","max_dw","dw","max_dh","dh","old_smoothing","Image","ImageRGBAView","flat","endj","ImageRGBA","CanvasImage","ImageURLView","_images_rendered","_url","retry_attempts","retry_timeout","retries","src","onload","ws","_w","hs","finished","_render_image","_final_sx_sy","sxi","syi","ImageURL","annular_wedge_1","annulus_1","arc_1","bezier_1","circle_1","ellipse_1","hbar_1","hex_tile_1","image_1","image_rgba_1","image_url_1","multi_line_1","MultiLine","oval_1","Oval","patch_1","Patch","patches_1","Patches","quad_1","Quad","quadratic_1","Quadratic","ray_1","Ray","rect_1","Rect","segment_1","Segment","step_1","Step","vbar_1","VBar","wedge_1","Wedge","drawing","last_index","point","shortest","threshold","add_to_selected_glyphs","get_view","line_indices","get_interpolation_hit","MultiLineView","_xsi","_ysi","multiline_indices","point_i","OvalView","PatchView","indices_2","PatchesView","_build_discontinuous_object","nanned_qs","ds","qs","nan_index","qs_part","denanned","xss","yss","xr","yr","sxss","syss","_get_snap_coord","QuadView","_spt","_qbb","u","bd","QuadraticView","_cx","_cy","scx","scy","quadraticCurveTo","RayView","slength","_length","inf_len","RectView","_map_dist_corner_for_data_side_length","n_1","n_2","ssemi_diag","scenter_x","scenter_y","max_x2_ddist","_ddist","max_y2_ddist","height_in","width_in","side_length","sside_length","spt_corner","spts","v_invert","ddist","SegmentView","threshold2","dist2","v0","v1","StepView","L","mode","xm","TextView","lines","line_height","block_height","lines_1","VBarView","WedgeView","dist_1","hittest_1","GraphHitTestPolicy","_hit_test_nodes","graph_view","node_view","convert_selection_from_subset","_hit_test_edges","edge_view","NodesOnly","graph","node_selection","node_renderer","_select","node_inspection","get_selection_manager","NodesAndLinkedEdges","get_linked_edges","node_source","edge_source","node_indices","edge_indices","linked_edges","edge_indices_1","edge_selection","edge_renderer","linked_edges_selection","selection_manager","edge_inspection","EdgesAndLinkedNodes","get_linked_nodes","edge_indices_2","linked_nodes","__exportStar","LayoutProvider","layout_provider_1","StaticLayoutProvider","graph_layout","get_node_coordinates","get_edge_coordinates","starts","ends","has_paths","endi","in_layout","GridView","_draw_regions","_draw_minor_grids","_draw_grids","band_fill","grid_coords","_x_range_name","_y_range_name","grid_line","_draw_grid_helper","minor_grid_line","i_1","Grid","band_fill_color","band_fill_alpha","grid_line_color","minor_grid_line_color","exclude_ends","cmin","cmax","dim_i","dim_j","grid_1","rebuild_child_views","get_height","child_heights","_horizontal","get_width","child_widths","LayoutDOMView","_child_equal_size_width","_child_equal_size_height","_box_equal_size_top","_box_equal_size_bottom","_box_equal_size_left","_box_equal_size_right","_box_cell_align_top","_box_cell_align_bottom","_box_cell_align_left","_box_cell_align_right","get_constrained_variables","box_equal_size_top","box_equal_size_bottom","box_equal_size_left","box_equal_size_right","box_cell_align_top","box_cell_align_bottom","box_cell_align_left","box_cell_align_right","new_constraints","vars_1","_child_rect","_info","whitespace","after","before","vars","_align_outer_edges_constraints","_align_inner_cell_edges_constraints","_box_equal_size_bounds","_box_cell_align_bounds","_box_whitespace","origin_x","origin_y","_span","whitespace_left","whitespace_right","whitespace_top","whitespace_bottom","_flatten_cell_edge_variables","relevant_edges","_top_bottom_inner_cell_edge_variables","_left_right_inner_cell_edge_variables","add_path","arity","flattened","cell","cell_vars","all_vars","relevant_edges_1","variables","new_key","parsed","path","_find_edge_leaves","leaves","children_3","child_leaves","start_variable","end_variable","start_leaves","end_leaves","collect_vars","edges","leaves_1","leaf","start_edges","end_edges","add_all_equal","edge","_box_insets_from_child_insets","child_variable_prefix","our_variable_prefix","minimum","our_start","our_end","add_constraints","ours","leaves_2","ColumnView","Column","column_1","row_1","Row","spacer_1","Spacer","widget_box_1","WidgetBox","_solver_inited","_idle_notified","child_views","build_child_views","_calc_width_height","measuring","left_1","right_1","top_1","bottom_1","width_1","height_1","top_2","_init_solver","_root_width","_root_height","editables","get_all_editables","editables_1","edit_variable","strong","get_all_constraints","constraints_1","_suggest_dims","resize","_do_layout","partial_layout","full","_layout","child_view","sizing_mode","_render_classes","get_width_height","_dom_left","_dom_top","parent_height","parent_width","ar","get_aspect_ratio","new_width_1","new_height_1","new_width_2","new_height_2","disabled","_width_minus_right","_height_minus_bottom","_whitespace_top","_whitespace_bottom","_whitespace_left","_whitespace_right","dom_top","dom_left","dump_layout","shift","layout_bbox","table","RowView","SpacerView","on_edge_align_top","on_edge_align_bottom","on_edge_align_left","on_edge_align_right","WidgetBoxView","css_width","scrollWidth","child_width","color_mapper_1","CategoricalColorMapper","nan_color","_equals","ColorMapper","_convert_color","_convert_palette","new_palette","_uint32_to_rgba","DataView","setUint32","transform_1","_colors","self","colors","conv","Transform","ContinuousColorMapper","high_color","low_color","categorical_color_mapper_1","continuous_color_mapper_1","log_color_mapper_1","LogColorMapper","max_key","norm_factor","normed_interval","normed_d","log1p","_one_x","_one_cross","_one_diamond","_one_tri","SQ3","_mk_model","_render_one","marker_1","MarkerView","Marker","Asterisk","_fill","CircleCross","CircleX","Cross","Diamond","DiamondCross","Hex","_one_hex","InvertedTriangle","Square","SquareCross","SquareX","Triangle","X","s2","gmap_plot_canvas_1","plot_1","MapOptions","lng","zoom","GMapOptions","map_type","scale_control","styles","GMapPlotView","PlotView","GMapPlot","map_options","api_key","_init_plot_canvas","GMapPlotCanvas","Plot","plot_canvas_1","gmaps_ready","GMapPlotCanvasView","pause","_tiles_loaded","zoom_count","initial_zoom","initial_lat","initial_lng","google","maps","_bokeh_gmaps_callback","load_google_api","unpause","update_range","range_info","setCenter","setOptions","sdx","sdy","panBy","zoom_change","old_map_zoom","getZoom","new_map_zoom","setZoom","_get_projected_bounds","proj_xstart","proj_xend","_set_bokeh_ranges","_build_map","map_types","satellite","MapTypeId","SATELLITE","terrain","TERRAIN","roadmap","ROADMAP","hybrid","HYBRID","mo","LatLng","disableDefaultUI","mapTypeId","scaleControl","Map","addListener","addListenerOnce","_render_finished","_update_options","_update_styles","_update_center","_update_zoom","_update_map_type","_update_scale_control","_get_latlon_bounds","getBounds","top_right","getNorthEast","bottom_left","getSouthWest","xstart","xend","ystart","yend","proj_ystart","proj_yend","fld","getCenter","_map_hook","frame_box","_paint_empty","ow","oh","iw","ih","clearRect","border_fill_color","PlotCanvasView","PlotCanvas","gmap_plot_1","gmap_plot_2","gmap_plot_3","toolbar_1","plot_canvas_view","Toolbar","toolbar_location","toolbar_sticky","plot_width","plot_height","title_location","h_symmetry","v_symmetry","lod_factor","lod_interval","lod_threshold","lod_timeout","min_border","min_border_top","min_border_left","min_border_bottom","min_border_right","inner_width","inner_height","layout_width","layout_height","match_aspect","outline_line_color","reset","plots","layout_renderers","layout_renderers_1","_init_title_panel","_init_toolbar_panel","_plot_canvas","add_layout","tpanel","remove_layout","add_renderers","new_renderers","side_renderers","del","add_glyph","extra_attrs","GlyphRenderer","add_tools","tools","tools_1","tool","overlay","synthetic_renderers","ui_events_1","alignments_1","throttle_1","global_gl","_is_paused","no_render","request_paint","is_paused","throttled_paint","clear_state","reset_range","reset_selection","tool_views","force_paint","state_changed","lod_started","_initial_state_info","selection","dimensions","state","history","init_webgl","ui_event_bus","build_levels","build_tools","update_dataranges","opts","premultipliedAlpha","prepare_webgl","ratio","viewport","clearColor","COLOR_BUFFER_BIT","DEPTH_BUFFER_BIT","SCISSOR_TEST","scissor","BLEND","blendFuncSeparate","SRC_ALPHA","ONE_MINUS_SRC_ALPHA","ONE_MINUS_DST_ALPHA","ONE","blit_webgl","calculate_log_bounds","r_1","bds","log_bds","follow_enabled","has_bounds","bounds_to_use","follow","_j","range_update_timestamp","push_state","new_info","prev_info","can_undo","can_redo","undo","_do_state_change","redo","update_selection","get_selection","_update_ranges_together","range_info_iter","weight","range_info_iter_1","rng","_get_weight_to_constrain_interval","range_info_iter_2","_update_ranges_individually","is_panning","is_scrolling","maintain_focus","hit_bound","range_info_iter_3","is_reversed","new_interval","range_info_iter_4","have_updated_interactively","min_interval","max_interval","max_interval2","old_interval","renderer_models","all_renderers","old_renderers","new_renderer_views","renderers_to_remove","renderers_to_remove_1","new_renderer_views_1","tool_models","new_tool_views","repaint","set_initial_range","good_vals","name_8","update_constraints","paint","_needs_layout","set_data_timestamp","outline_line","_paint_levels","clip_region","global_clip","sortKey","levels_1","needs_clip","_frame_box","cx","cy","cw","fx","fy","fw","fh","border_fill","msToBlob","blob","msSaveBlob","toDataURL","download","dispatchEvent","MouseEvent","svg","getSerializedSvg","svgblob","Blob","downloadLink","innerHTML","URL","createObjectURL","onclick","click","AbovePanel","BelowPanel","LeftPanel","RightPanel","above_panel","below_panel","left_panel","right_panel","collect_panels","_get_constant_constraints","_get_side_constraints","panels","objs","range_1","DataRange","Range","data_range_1","_plot_bounds","range_padding","range_padding_units","flipped","follow_interval","default_span","_initial_start","_initial_end","_initial_range_padding","_initial_range_padding_units","_initial_follow","_initial_follow_interval","_initial_default_span","computed_renderers","rs","renderers_1","_compute_plot_bounds","renderers_2","adjust_bounds_for_aspect","xcenter","ycenter","_compute_min_max","plot_bounds","overall","_compute_range","log_min","log_max","follow_sign","bounds_id","total_bounds","_start","new_range","map_one_level","mapping","map_two_levels","outer_pad","factor_pad","tops_order","factors_1","f0","f1","suboffset","total_subpad","submap","subpad","subtot","tops_order_1","map_three_levels","inner_pad","factors_2","f2","mids_order","_loop_2","submids_order","submids_order_1","tops_order_2","factor_padding","subgroup_padding","group_padding","tops_groups","_lookup","_mapping","inside_padding","half_span","_emit_callback","_set_auto_bounds","cds_view_1","selection_defaults","decimated_defaults","nonselection_defaults","mk_glyph","glyph_attrs","has_fill","has_line","base_glyph","build_glyph_view","selection_glyph","nonselection_glyph","hover_glyph","muted_glyph","decimated_glyph","setup","have_selection_glyphs","t0","decimated","dt","glsupport","dtmap","tmask","dtmask","selected_full_indices","selected_glyph","convert_indices_from_subset","inspected_full_indices","inspected_subset_indices","trender","dtselect","tselect","selected_mask","selected_full_indices_1","selected_subset_indices","nonselected_subset_indices","dtrender","last_dtrender","dttot","get_reference_point","CDSView","graph_hit_test_policy_1","_renderer_views","layout_provider","node_glyph","edge_glyph","GraphRenderer","scale_1","Scale","_compute_state","xprime","xprimes","source_start","source_end","target_start","target_end","inter_factor","inter_offset","exp","_get_safe_factor","orig_start","orig_end","log_val","screen_range","transforms_1","SelectionPolicy","IntersectRenderers","hit_test_result_renderers","hit_test_result_renderers_1","hit_test_result_other","update_through_intersection","UnionRenderers","renderer_views_2","hit_test_result_renderers_2","update_through_union","selected_glyphs","flag","remote_data_source_1","AjaxDataSource","initialized","content_type","http_headers","method","if_modified","interval","clearInterval","get_data","polling_interval","setInterval","_if_modified","xhr","prepare_request","do_load","do_error","XMLHttpRequest","data_url","withCredentials","setRequestHeader","status","responseText","original_data","old_col","new_col","RemoteDataSource","filters","indices_map","inds","indices_map_to_subset","selection_subset","selection_full","indices_1d","convert_selection_to_subset","stream_to_column","col","total_len","typed_array","patch_to_column","patched","patched_range","istart","istop","istep","jstart","jstop","jstep","optional_parent_object","data_source_1","selection_manager_1","interaction_policy_1","get_array","colname","soft","lengths","DataSource","GeoJSONDataSource","geojson","_update_data","geojson_to_column_data","_get_new_list_array","_get_new_nan_array","_add_properties","item_count","property","_add_geometry","orNaN","flatten","acc","coordinates","z","zs","exterior_ring","exterior_rings","polygon","geometries","features","arr_index","items_2","ajax_data_source_1","geojson_data_source_1","continuous_ticker_1","AdaptiveTicker","mantissas","prefix_mantissa","suffix_mantissa","extended_mantissas","base_factor","get_min_interval","get_interval","data_low","data_high","desired_n_ticks","data_range","ideal_interval","get_ideal_interval","interval_exponent","ideal_magnitude","candidate_mantissas","errors","mantissa","best_mantissa","min_val","max_val","get_max_interval","ContinuousTicker","adaptive_ticker_1","ticker_1","_cross_loc","_collect","Ticker","CompositeTicker","tickers","min_intervals","max_intervals","get_best_ticker","best_ticker","ticker_ndxs","intervals","best_index","best_ticker_ndx","get_ticks_no_defaults","cross_loc","num_minor_ticks","_range","start_factor","end_factor","minor_ticks","minor_interval_1","minor_offsets","minor_offsets_1","composite_ticker_1","days_ticker_1","months_ticker_1","years_ticker_1","util_1","ONE_MILLI","ONE_SECOND","ONE_MINUTE","ONE_HOUR","DaysTicker","MonthsTicker","YearsTicker","single_interval_ticker_1","ONE_DAY","_desired_n_ticks","month_dates","start_time","end_time","start_date","last_month_no_later_than","end_date","setUTCMonth","getUTCMonth","dates","date","copy_date","date_range_by_month","day_dates","month_date","days_1","day","day_date","setUTCDate","future_date","getTime","days_of_month","all_ticks","ticks_in_range","SingleIntervalTicker","FixedTicker","_data_low","_data_high","fixed_ticker_1","log_low","log_high","log_interval","interval_1","startlog","endlog","minor_interval_2","minor_offsets_2","ticks_2","minor_offsets_3","proj_low","proj_high","proj_cross_loc","_k","_l","_m","_o","_p","ONE_MONTH","year_dates","last_year_no_later_than","setUTCFullYear","getUTCFullYear","date_range_by_year","year_date","month","_n_desired_ticks","new_date","setUTCHours","setUTCMinutes","setUTCSeconds","setUTCMilliseconds","ONE_YEAR","basic_ticker","start_year","end_year","year","UTC","mercator_tile_source_1","BBoxTileSource","use_latlon","get_image_url","xmax","xmin","ymax","ymin","image_url","string_lookup_replace","extra_url_vars","get_tile_geographic_bounds","get_tile_meter_bounds","MercatorTileSource","ImagePool","images","bbox_tile_source_1","quadkey_tile_source_1","QUADKEYTileSource","tile_renderer_1","TileRenderer","tile_source_1","TileSource","tms_tile_source_1","TMSTileSource","wmts_tile_source_1","WMTSTileSource","tile_utils_1","snap_to_zoom","wrap_around","x_origin_offset","y_origin_offset","initial_resolution","_resolutions","min_zoom","max_zoom","get_resolution","_computed_initial_resolution","tile_size","is_valid_tile","parent_by_tile_xyz","quadkey","tile_xyz_to_quadkey","parent_quadkey","quadkey_to_tile_xyz","get_resolution_by_extent","x_rs","y_rs","get_level_by_extent","resolution","get_closest_level_by_extent","closest","snap_to_zoom_level","desired_res","desired_x_delta","desired_y_delta","x_adjust","y_adjust","tms_to_wmts","wmts_to_tms","pixels_to_meters","res","mx","my","meters_to_pixels","pixels_to_tile","tx","ty","pixels_to_raster","mapSize","meters_to_tile","meters_extent_to_geographic","minLon","minLat","maxLon","maxLat","get_tiles_by_extent","tile_border","txmin","tymin","txmax","tymax","tiles","sort_tiles_from_center","quadKey","tileX","tileY","tileZ","mask","digit","children_by_tile_xyz","child_tile_xyz","x_1","y_1","z_1","get_closest_parent_by_tile_xyz","world_x","calculate_world_x_by_tile_xyz","normalize_xyz","denormalize_xyz","tile_xyz_to_key","tile_count","denormalize_meters","meters_x","meters_y","_level","wx","wy","wz","image_pool_1","TileRendererView","attributionEl","_tiles","get_extent","map_plot","pool","_last_height","_last_width","_add_attribution","attribution","tile_source","map_frame","max-width","background-color","font-size","font-family","overlays","initial_extent","zoom_level","new_extent","_on_tile_load","tile_data","loaded","_on_tile_cache_load","_on_tile_error","_create_tile","cache_only","nz","tile","tile_coords","normalized_coords","cache_key","x_coord","y_coord","_enforce_aspect_ratio","map_initialized","_update","prefetch_timer","_prefetch_tiles","_draw_tile","tile_key","tile_obj","sxmin","symin","sxmax","symax","map_canvas","_set_rect","outline_width","outline_line_width","_render_tiles","tile_keys","tile_keys_1","cz","cbounds","_fetch_tiles","tiles_1","zooming_out","snap_back","need_load","cached","parents","tiles_2","render_parents","pz","parent_key","parent_tile","child_tiles","child_tiles_1","child_key","render_timer","_normalize_case","lookup","result_str","key_to_tile_xyz","tile_extent","center_x","center_y","a_distance","b_distance","geographic_to_meters","xLon","yLat","meters_to_geographic","geographic_extent_to_meters","g_xmin","g_ymin","g_xmax","g_ymax","m_xmin","m_ymin","m_xmax","m_ymax","button_tool_1","ActionToolButtonView","_clicked","do","ButtonToolButtonView","ActionToolView","ButtonToolView","ActionTool","button_view","ButtonTool","action_tool_1","HelpToolView","redirect","HelpTool","tool_name","icon","help_tooltip","RedoToolView","RedoTool","ResetToolView","ResetTool","SaveToolView","SaveTool","UndoToolView","UndoTool","zoom_1","ZoomInToolView","dims","zoom_info","ZoomInTool","_get_dim_tooltip","ZoomOutToolView","ZoomOutTool","tool_1","tooltip","ToolView","Tool","edit_tool_1","BoxEditToolView","_draw_basepoint","_basepoint","_select_event","_mouse_in_frame","Backspace","_delete_selected","Esc","cds","_set_extent","xkey","ykey","wkey","hkey","_pad_empty_columns","_update_box","curpoint","limits","_get_dim_limits","sxlim","sylim","_drag_points","EditToolView","BoxEditTool","default_order","EditTool","gesture_tool_1","_map_drag","bx","by","basepoint","coord_columns","empty_value","renderers_3","sm","GestureToolView","GestureTool","PointDrawToolView","drag","PointDrawTool","PolyDrawToolView","_drawing","_draw","xidx","yidx","_remove","deactivate","PolyDrawTool","PolyEditToolView","vertex_renderer","vertex_selected","point_ds","point_glyph","pxkey","pykey","_selected_renderer","index_1","selected_ds","_remove_vertex","PolyEditTool","select_tool_1","BoxSelectToolView","_compute_limits","base_point","_base_point","origin","select_every_mousemove","_do_select","SelectToolView","DEFAULT_BOX_OVERLAY","BoxSelectTool","SelectTool","BoxZoomToolView","_match_aspect","aspect","hend","hstart","vend","vstart","vw","vh","va","xmod","BoxZoomTool","on_off_button_1","OnOffButtonView","LassoSelectToolView","_active_change","_clear_overlay","Enter","_sx","_sy","DEFAULT_POLY_OVERLAY","LassoSelectTool","PanToolView","last_dx","last_dy","v_axis_only","h_axis_only","pan_info","new_dx","new_dy","sx_low","sx_high","sy_low","sy_high","PanTool","PolySelectToolView","_clear_data","PolySelectTool","compute_renderers","_computed_renderers_by_data_source","renderers_by_source","source_id","r_views","_emit_selection_event","ym","TapToolView","behavior","TapTool","WheelPanToolView","speed","_update_ranges","sy_range","sx_range","WheelPanTool","WheelZoomToolView","zoom_on_axis","WheelZoomTool","help_tool_1","redo_tool_1","reset_tool_1","save_tool_1","undo_tool_1","zoom_in_tool_1","zoom_out_tool_1","box_edit_tool_1","point_draw_tool_1","poly_draw_tool_1","poly_edit_tool_1","box_select_tool_1","box_zoom_tool_1","lasso_select_tool_1","pan_tool_1","poly_select_tool_1","tap_tool_1","wheel_pan_tool_1","wheel_zoom_tool_1","crosshair_tool_1","CrosshairTool","customjs_hover_1","CustomJSHover","hover_tool_1","HoverTool","inspect_tool_1","InspectTool","tool_proxy_1","ToolProxy","toolbar_base_1","ToolbarBase","toolbar_box_1","ProxyToolbar","toolbar_box_2","ToolbarBox","CrosshairToolView","_update_spans","InspectToolView","_make_code","valname","formatname","varsname","_nearest_line_hit","dist1","d1","d2","_line_hit","HoverToolView","ttviews","_computed_renderers","_ttmodels","tooltips","_compute_ttmodels","ttmodels","_clear","_inspect","rid","tt","data_x","data_y","line_policy","_render_tooltips","struct","rendered","point_policy","_1","jj","_s","_t","_u","_v","_z","_0","segment_index","borderSpacing","tooltips_1","el_1","swatch","el_2","toggleable","activate","set_active","ToolbarBaseView","active_drag","active_inspect","active_scroll","active_tap","_init_tools","help","actions","event_types","multi","event_types_1","_activate_gesture","gesture","_tool_button_views","_build_tool_button_views","_proxied_tools","logo","bars","bars_1","bar","currently_active_tool","_merge_tools","new_help_tools","new_help_urls","helptool","make_proxy","proxy","tool_type","ToolbarBoxView","CustomJSTransform","v_func","_make_transform","scalar_transform","vector_transform","Dodge","xs0","_compute","customjs_transform_1","dodge_1","interpolator_1","Interpolator","jitter_1","Jitter","linear_interpolator_1","LinearInterpolator","step_interpolator_1","StepInterpolator","_sorted_dirty","descending","tsx","tsy","column_names","list","_x_sorted","_y_sorted","list_1","bokeh_math","mean","distribution","diffs","mdiff_1","String_proto","count","RangeError","rpt","toStr","isCallable","maxSafeInteger","toLength","number","toInteger","arrayLike","T","mapFn","A","kValue","metadata","assemble","header_json","metadata_json","content_json","assemble_buffer","buf_header","buf_payload","nb","num_buffers","create_header","complete","_partial","_fragments","_buf_header","_current_consumer","_HEADER","fragment","_assume_text","_METADATA","_CONTENT","_check_complete","_BUFFER_HEADER","_BUFFER_PAYLOAD","_assume_binary","border","borderRadius","fontFamily","minWidth","cssFloat","whiteSpace","overflowX","getElementsByTagName","_burst_into_flames","randomString","holder","randomstring","STYLES","CanvasGradient","CanvasPattern","namedEntities","radix","base10","createNamedToNumberedLookup","svgAttr","miterLimit","shadowColor","shadowOffsetX","shadowOffsetY","shadowBlur","lineDash","gradientNode","__root","__ctx","addColorStop","__createElement","exec","pattern","o","defaultOptions","enableMirroring","__document","__canvas","__setDefaultStyles","__stack","__getStyleState","__groupStack","createElementNS","setAttributeNS","__ids","__defs","__currentElement","elementName","resetFill","__applyStyleState","styleState","__applyStyleToCurrentElement","currentElement","currentStyleGroup","__currentElementsToStyle","getAttribute","__closestGroupOrSvg","nodeName","fixNamedEntities","regexp","serialized","XMLSerializer","serializeToString","__addTransform","__applyCurrentDefaultPath","degrees","__currentDefaultPath","__currentPosition","__addPathCommand","command","cp1x","cp1y","cp2x","cp2y","cpx","cpy","normalize","vector","arcTo","unit_vec_p1_p0","unit_vec_p1_p2","theta","acos","unit_vec_p1_origin","len_p1_origin","unit_vec_origin_start_tangent","unit_vec_origin_end_tangent","getAngle","startAngle","endAngle","__clearCanvas","rootGroup","createLinearGradient","grad","gradientUnits","createRadialGradient","r0","__parseFont","fontPart","family","decoration","__fontUnderline","__fontHref","__wrapTextLink","__applyText","textElement","font-style","font-weight","text-decoration","text-anchor","getTextAnchor","dominant-baseline","alphabetic","hanging","middle","getDominantBaseline","strokeText","counterClockwise","endX","endY","startX","startY","sweepFlag","largeArcFlag","xAxisRotation","clipPath","newGroup","defs","svgImage","translateDirective","cloneNode","transformDirective","originTransform","createPattern","repetition","dashArray","drawFocusRing","createImageData","globalCompositeOperation","setTransform","C2S","normalizeOptions","ensureCallable","callable","validValue","desc","dgs","writable","overwriteDefinition","resolveContext","assign","normalizeOpts","dscr","gs","numberIsNaN","toPosInt","objHasOwnProperty","searchElement","fromIndex","iteratorSymbol","iterator","isArguments","Context","getIterator","thisArg","objToString","sign","objPropertyIsEnumerable","propertyIsEnumerable","defVal","compareFn","foo","trzy","aFrom","propertyNames","propertyName","ensure","shim","nullObject","polyProps","getOwnPropertyNames","defineProperties","function","_undefined","targetObj","opts1","process","setPrototypeOf","getPrototypeOf","plainObject","customCreate","objIsPrototypeOf","isPrototypeOf","nullDesc","__proto__","isNullBase","nullPolyfill","tmpObj1","tmpObj2","getOwnPropertyDescriptor","ignore","generated","ArrayIterator","Symbol","Iterator","_resolve","__kind__","__list__","toStringTag","iterable","doBreak","broken","char","StringIterator","autoBind","__context__","__nextIndex__","_onAdd","_onDelete","_onClear","_next","__redo__","_unBind","_createResult","__length__","isIterable","lib$es6$promise$utils$$isFunction","lib$es6$promise$asap$$useSetTimeout","lib$es6$promise$asap$$flush","lib$es6$promise$asap$$len","lib$es6$promise$asap$$queue","lib$es6$promise$asap$$attemptVertx","vertx","lib$es6$promise$asap$$vertxNext","runOnLoop","runOnContext","lib$es6$promise$$internal$$noop","lib$es6$promise$$internal$$handleMaybeThenable","maybeThenable","thenable","_state","lib$es6$promise$$internal$$FULFILLED","lib$es6$promise$$internal$$fulfill","lib$es6$promise$$internal$$REJECTED","lib$es6$promise$$internal$$reject","lib$es6$promise$$internal$$subscribe","lib$es6$promise$$internal$$resolve","lib$es6$promise$$internal$$handleOwnThenable","lib$es6$promise$$internal$$GET_THEN_ERROR","lib$es6$promise$$internal$$getThen","lib$es6$promise$asap$$asap","sealed","fulfillmentHandler","rejectionHandler","lib$es6$promise$$internal$$tryThen","_label","lib$es6$promise$$internal$$handleForeignThenable","lib$es6$promise$utils$$objectOrFunction","lib$es6$promise$$internal$$publishRejection","_onerror","lib$es6$promise$$internal$$publish","lib$es6$promise$$internal$$PENDING","_subscribers","onFulfillment","onRejection","subscribers","settled","lib$es6$promise$$internal$$invokeCallback","lib$es6$promise$$internal$$ErrorObject","succeeded","failed","hasCallback","lib$es6$promise$$internal$$TRY_CATCH_ERROR","lib$es6$promise$$internal$$tryCatch","lib$es6$promise$enumerator$$Enumerator","Constructor","_instanceConstructor","_validateInput","_input","_remaining","_enumerate","_validationError","lib$es6$promise$promise$$Promise","resolver","_id","lib$es6$promise$promise$$counter","lib$es6$promise$promise$$needsResolver","lib$es6$promise$promise$$needsNew","lib$es6$promise$$internal$$initializePromise","lib$es6$promise$asap$$customSchedulerFn","lib$es6$promise$asap$$scheduleFlush","lib$es6$promise$utils$$isArray","lib$es6$promise$asap$$browserWindow","lib$es6$promise$asap$$browserGlobal","lib$es6$promise$asap$$BrowserMutationObserver","MutationObserver","WebKitMutationObserver","lib$es6$promise$asap$$isNode","lib$es6$promise$asap$$isWorker","Uint8ClampedArray","importScripts","MessageChannel","nextTick","iterations","observer","observe","characterData","lib$es6$promise$asap$$useMutationObserver","channel","port1","port2","postMessage","lib$es6$promise$asap$$useMessageChannel","lib$es6$promise$enumerator$$default","_eachEntry","entry","lib$es6$promise$utils$$isMaybeThenable","_settledAt","_willSettleAt","enumerator","lib$es6$promise$promise$all$$default","entries","lib$es6$promise$promise$race$$default","lib$es6$promise$promise$resolve$$default","lib$es6$promise$promise$reject$$default","lib$es6$promise$promise$$default","race","_setScheduler","scheduleFn","_setAsap","asapFn","_asap","lib$es6$promise$polyfill$$default","local","global","P","cast","lib$es6$promise$umd$$ES6Promise","polyfill","delete","SetIterator","toStringTagSymbol","__setData__","SetPoly","getValues","NativeSet","eIndexOf","ee","forOf","isNative","validTypes","symbol","toPrimitive","NativeSymbol","SymbolPolyfill","HiddenSymbol","isNativeSafe","validateSymbol","objPrototype","globalSymbols","generateName","created","ie11BugWorkaround","postfix","description","__description__","__name__","for","keyFor","hasInstance","isConcatSpreadable","species","unscopables","valueOf","isSymbol","weakMap","WeakMapPoly","randomUniq","__weakMapData__","methods","descriptors","descriptor","listener","__ee__","__eeOnceListener__","listeners","candidate","factory","Flatbush","boxes","pivot","temp","swap","numItems","nodeSize","ArrayType","numNodes","_levelBounds","_numAdded","_pos","hilbertValues","pos","B","C","D","i0","i1","hilbert","i$1","pos$1","nodeMinX","nodeMinY","nodeMaxX","nodeMaxY","nodeIndex","i$2","minX$1","minY$1","maxX$1","maxY$1","filterFn","queue","exportName","setTimeoutContext","bindFn","invokeArrayArg","each","deprecate","deprecationMessage","stack","inherit","childP","baseP","boolOrFn","TYPE_FUNCTION","ifUndefined","val1","val2","addEventListeners","types","handler","splitStr","removeEventListeners","removeEventListener","hasParent","inStr","trim","inArray","findByKey","toArray","uniqueArray","prefixed","camelProp","toUpperCase","VENDOR_PREFIXES","getWindowForElement","ownerDocument","defaultView","parentWindow","Input","manager","inputTarget","domHandler","inputHandler","eventType","pointersLen","pointers","changedPointersLen","changedPointers","isFirst","INPUT_START","isFinal","INPUT_END","INPUT_CANCEL","pointersLength","firstInput","simpleCloneInputData","firstMultiple","offsetCenter","timeStamp","deltaTime","distance","getDistance","offsetDelta","prevDelta","prevInput","computeDeltaXY","offsetDirection","getDirection","overallVelocity","getVelocity","overallVelocityX","overallVelocityY","PROPS_CLIENT_XY","getScale","getRotation","maxPointers","velocity","velocityX","velocityY","lastInterval","COMPUTE_INTERVAL","computeIntervalInputData","computeInputData","recognize","clientX","clientY","DIRECTION_NONE","DIRECTION_LEFT","DIRECTION_RIGHT","DIRECTION_UP","DIRECTION_DOWN","p2","PROPS_XY","MouseInput","evEl","MOUSE_ELEMENT_EVENTS","evWin","MOUSE_WINDOW_EVENTS","pressed","PointerEventInput","POINTER_ELEMENT_EVENTS","POINTER_WINDOW_EVENTS","store","pointerEvents","SingleTouchInput","evTarget","SINGLE_TOUCH_TARGET_EVENTS","SINGLE_TOUCH_WINDOW_EVENTS","started","TouchInput","TOUCH_TARGET_EVENTS","targetIds","TouchMouseInput","touch","mouse","primaryTouch","lastTouches","setLastTouch","eventData","identifier","lastTouch","lts","removeLastTouch","DEDUP_TIMEOUT","TouchAction","Recognizer","_uniqueId","STATE_POSSIBLE","simultaneous","requireFail","stateStr","STATE_CANCELLED","STATE_ENDED","STATE_CHANGED","STATE_BEGAN","directionStr","getRecognizerByNameIfManager","otherRecognizer","recognizer","AttrRecognizer","PanRecognizer","pX","pY","PinchRecognizer","PressRecognizer","_timer","RotateRecognizer","SwipeRecognizer","TapRecognizer","pTime","pCenter","recognizers","preset","Manager","handlers","oldCssProps","Type","inputClass","SUPPORT_POINTER_EVENTS","SUPPORT_ONLY_TOUCH","SUPPORT_TOUCH","createInputInstance","touchAction","toggleCssProps","cssProps","TEST_ELEMENT","output","nextKey","INPUT_MOVE","DIRECTION_HORIZONTAL","DIRECTION_VERTICAL","MOUSE_INPUT_MAP","mousedown","mousemove","mouseup","which","pointerType","POINTER_INPUT_MAP","pointerdown","pointermove","pointerup","pointercancel","pointerout","IE10_POINTER_TYPE_ENUM","2","3","4","5","MSPointerEvent","PointerEvent","removePointer","eventTypeNormalized","isTouch","storeIndex","pointerId","SINGLE_TOUCH_INPUT_MAP","touchstart","touchmove","touchend","touchcancel","changed","TOUCH_INPUT_MAP","allTouches","targetTouches","changedTargetTouches","DEDUP_DISTANCE","inputEvent","inputData","isMouse","sourceCapabilities","firesTouchEvents","PREFIXED_TOUCH_ACTION","NATIVE_TOUCH_ACTION","TOUCH_ACTION_AUTO","TOUCH_ACTION_MANIPULATION","TOUCH_ACTION_NONE","TOUCH_ACTION_PAN_X","TOUCH_ACTION_PAN_Y","TOUCH_ACTION_MAP","touchMap","cssSupports","CSS","supports","getTouchActionProps","getTouchAction","hasPanX","hasPanY","cleanTouchActions","preventDefaults","prevented","hasNone","isTapPointer","isTapMovement","isTapTouchTime","preventSrc","STATE_RECOGNIZED","dropRecognizeWith","hasRequireFailures","canRecognizeWith","additionalEvent","tryEmit","canEmit","inputDataClone","attrTest","optionPointers","isRecognized","isValid","directionTest","hasMoved","inOut","time","validPointers","validMovement","validTime","taps","posThreshold","validTouchTime","failTimeout","validInterval","validMultiTap","tapCount","VERSION","domEvents","userSelect","touchSelect","touchCallout","contentZooming","userDrag","tapHighlightColor","stopped","curRecognizer","gestureEvent","createEvent","initEvent","triggerDomEvent","STATE_FAILED","Swipe","Rotate","freeGlobal","strength_1","expression","operator","required","CnId","_operator","_expression","_strength","Compare","tsu_1","variable_1","maptype_1","constant","createMap","setDefault","second","parseArgs","_terms","_constant","pair","terms_1","c_1","__export","compare","AssociativeArray","nearZero","constraint_1","_cnMap","_rowMap","_varMap","_editMap","_infeasibleRows","_objective","_artificial","_idTick","cnPair","_createRow","subject","_chooseSubject","SymbolType","Invalid","allDummies","marker","_addWithArtificialVariable","solveFor","_substitute","_optimize","erase","_removeConstraintEffects","rowPair","leaving","_getMarkerLeavingSymbol","solveForEx","editPair","cn","hasEditVariable","_dualOptimize","rowPair_1","itemAt","coeff","coefficientFor","External","setValue","_getVarSymbol","_makeSymbol","termPair","basicPair","insertRow","insertSymbol","objective","INVALID_SYMBOL","slack","Slack","errplus","errminus","dummy","Dummy","reverseSign","cells","art","success","basicRow","isConstant","entering","_anyPivotableSymbol","removeSymbol","substitute","_getEnteringSymbol","_getLeavingSymbol","infeasible","_getDualEnteringSymbol","MAX_VALUE","found","temp_ratio","dmax","invalid","third","_removeMarkerEffects","_type","_cellMap","theCopy","coefficient","medium","lowerBound","half","begin","iterator_1","binarySearch","binaryFind","asSet","asArray","setIsDisjoint","len1","len2","setIsSubset","setUnion","merged","setIntersection","setDifference","setSymmetricDifference","ArrayBase","takeAt","__iter__","iter","__reversed__","extendStatics","__","pair_1","array_base_1","algorithm_1","_compare","_wrapped","cmp","wrapCompare","comparitor","Pair","currPair","copyArray","thisArray","__next__","ReverseArrayIterator","it","_context","VarId","setName","setContext","zeroes","roundingFunction","optionals","optionalsRegExp","power","beforeDec","afterDec","exponent","toFixedLarge","formatNumbro","originalFormat","spliceIndex","symbolIndex","openParenIndex","plusSignIndex","minusSignIndex","space","decimalSeparator","cultures","currentCulture","currency","spaceSeparated","formatNumber","formatCurrency","formatPercentage","formatTime","sep","totalLength","minimumPrecision","intPrecision","thousands","indexOpenP","indexMinus","minlen","negP","signed","optDec","abbr","abbrK","abbrM","abbrB","abbrT","abbrForce","ord","binarySuffixes","decimalSuffixes","forcedNeg","neg","paren","zeroFormat","LN10","abbreviations","trillion","billion","million","thousand","ordinal","delimiters","decimal","setCulture","chooseCulture","numbro","defaultFormat","currencyFormat","defaultCurrencyFormat","languages","isNumbro","unformat","setLanguage","newLanguage","fallbackLanguage","matchingLanguage","newCulture","fallbackCulture","suffix","matchingCulture","culture","languageData","cultureData","formats","fourDigits","fullWithTwoDecimals","fullWithTwoDecimalsNoCurrency","_decimalSep","_thousandSep","_currSymbol","_valArray","_abbrObj","_thousandRegEx","formatString","srsCode","parseCode","ourProj","projections","projName","datumCode","datumDef","Datum","datum_params","towgs84","ellps","datumName","k0","sphere","deriveConstants","rf","ecc","eccentricity","R_A","datumObj","datum","es","ep2","crs","denorm","xin","yin","zin","out","TWO_PI","eccent","sinphi","cosphi","con","HALF_PI","ts","dphi","eccnth","phi","atan","com","ch1903","ggrs87","nad83","nad27","nadgrids","potsdam","carthage","hermannskogel","ire65","rassadiran","nzgd49","osgb36","s_jtsk","beduaram","gunung_segara","rnb72","MERIT","ellipseName","SGS85","GRS80","IAU76","airy","APL4","NWL9D","mod_airy","andrae","aust_SA","GRS67","bessel","bess_nam","clrk66","clrk80","clrk58","CPM","delmbr","engelis","evrst30","evrst48","evrst56","evrst69","evrstSS","fschr60","fschr60m","fschr68","helmert","hough","intl","kaula","lerch","mprts","new_intl","plessis","krass","SEasia","walbeck","WGS60","WGS66","WGS7","WGS84","greenwich","lisbon","paris","bogota","madrid","rome","bern","jakarta","ferro","brussels","stockholm","athens","oslo","ft","to_meter","transformer","transformedArray","checkProj","oProj","fromProj","toProj","single","PJD_3PARAM","PJD_7PARAM","PJD_WGS84","PJD_NODATUM","SEC_TO_RAD","datum_type","compareDatums","geodeticToGeocentric","Rn","Sin_Lat","Sin2_Lat","Cos_Lat","Longitude","Latitude","Height","geocentricToGeodetic","RR","CT","ST","RX","RK","RN","CPHI0","SPHI0","CPHI","SPHI","SDPHI","Y","Z","genau","geocentricToWgs84","Dx_BF","Dy_BF","Dz_BF","Rx_BF","Ry_BF","Rz_BF","M_BF","geocentricFromWgs84","x_tmp","y_tmp","z_tmp","checkParams","def","parseProj","wkt","EPSG","ESRI","IAU2000","globals","Ellipsoid","a2","b2","destination","GOOGLE","projStr","codeWords","testObj","testDef","word","testWKT","testProj","D2R","PrimeMeridian","defData","paramName","paramVal","paramOutname","paramObj","lat_0","lat0","lat_1","lat1","lat_2","lat2","lat_ts","lon_0","long0","lon_1","long1","lon_2","long2","lonc","longc","x_0","y_0","k_0","r_a","zone","south","utmSouth","from_greenwich","pm","projStore","projs","identity","msfnz","R2D","adjust_lon","FORTPI","tsfnz","phi2z","datum_transform","adjust_axis","toPoint","checkNotWGS","grom_greenwich","mapit","aa","sExpr","convert","auth","every","d2r","lisp","unshift","toMeter","PROJECTION","UNIT","DATUM","SPHEROID","GEOGCS","outName","inName","rename","cleanWKT","parse_tree","argv","pad","pad_character","pad_length","is_positive","tree_length","re","not_type","not_primitive","numeric_arg","toPrecision","sprintf_format","sprintf_cache","_fmt","arg_names","modulo","placeholder","SyntaxError","field_list","replacement_field","field_match","key_access","index_access","sprintf_parse","vsprintf","not_string","not_bool","not_json","definition","actualize","rule","actualized","getUTCDay","clock","posix","wallclock","saved","request","I","abbrev","rules","letter","convertToWallclock","convertToPOSIX","adjust","increment","UNITS","TIME","getUTCDate","weekOfYear","startOfWeek","weekStart","isoWeek","nyy","week","getDate","parts","part","-","%","U","W","V","G","N","H","getUTCHours","M","getUTCMinutes","S","getUTCSeconds","locale","meridiem","R","F","time12","time24","dateTime","vargs","$","argument","adjustments","UNIT_RE","zones","colons","specifier","en_US","__rest","__param","__metadata","__awaiter","__generator","__values","__read","__spread","__await","__asyncGenerator","__asyncDelegator","__asyncValues","__makeTemplateObject","createExporter","__esModule","exporter","getOwnPropertySymbols","decorators","Reflect","decorate","paramIndex","decorator","metadataKey","metadataValue","_arguments","generator","fulfilled","rejected","verb","ops","trys","sent","throw","return","resume","fulfill","settle","asyncIterator","cooked","raw"],"mappings":"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","file":"bokeh.min.js","sourcesContent":["/*base*/\nfunction _(require, module, exports) {\n var models = require(142 /* ./models/index */);\n var object_1 = require(32 /* ./core/util/object */);\n exports.overrides = {};\n var _all_models = object_1.clone(models);\n exports.Models = function (name) {\n var model = exports.overrides[name] || _all_models[name];\n if (model == null) {\n throw new Error('Model \\'' + name + '\\' does not exist. This could be due to a widget\\n or a custom model not being registered before first usage.');\n }\n return model;\n };\n exports.Models.register = function (name, model) {\n exports.overrides[name] = model;\n };\n exports.Models.unregister = function (name) {\n delete exports.overrides[name];\n };\n exports.Models.register_models = function (models, force, errorFn) {\n if (force === void 0) {\n force = false;\n }\n if (models == null)\n return;\n for (var name_1 in models) {\n var model = models[name_1];\n if (force || !_all_models.hasOwnProperty(name_1))\n _all_models[name_1] = model;\n else if (errorFn != null)\n errorFn(name_1);\n else\n console.warn('Model \\'' + name_1 + '\\' was already registered');\n }\n };\n exports.register_models = exports.Models.register_models;\n exports.Models.registered_names = function () {\n return Object.keys(_all_models);\n };\n // \"index\" is a map from the toplevel model IDs rendered by\n // embed.ts, to the view objects for those models. It doesn't\n // contain all views, only those explicitly rendered to an element\n // by embed.ts.\n exports.index = {}; \n}","/*client/connection*/\nfunction _(require, module, exports) {\n var es6_promise_1 = require(319 /* es6-promise */);\n var logging_1 = require(14 /* core/logging */);\n var document_1 = require(50 /* document */);\n var message_1 = require(262 /* protocol/message */);\n var receiver_1 = require(263 /* protocol/receiver */);\n var session_1 = require(2 /* ./session */);\n exports.DEFAULT_SERVER_WEBSOCKET_URL = 'ws://localhost:5006/ws';\n exports.DEFAULT_SESSION_ID = 'default';\n var _connection_count = 0;\n var ClientConnection = function () {\n function ClientConnection(url, id, args_string, _on_have_session_hook, _on_closed_permanently_hook) {\n if (url === void 0) {\n url = exports.DEFAULT_SERVER_WEBSOCKET_URL;\n }\n if (id === void 0) {\n id = exports.DEFAULT_SESSION_ID;\n }\n if (args_string === void 0) {\n args_string = null;\n }\n if (_on_have_session_hook === void 0) {\n _on_have_session_hook = null;\n }\n if (_on_closed_permanently_hook === void 0) {\n _on_closed_permanently_hook = null;\n }\n this.url = url;\n this.id = id;\n this.args_string = args_string;\n this._on_have_session_hook = _on_have_session_hook;\n this._on_closed_permanently_hook = _on_closed_permanently_hook;\n this._number = _connection_count++;\n this.socket = null;\n this.session = null;\n this.closed_permanently = false;\n this._current_handler = null;\n this._pending_ack = null;\n // null or [resolve,reject]\n this._pending_replies = {};\n // map reqid to [resolve,reject]\n this._receiver = new receiver_1.Receiver();\n logging_1.logger.debug('Creating websocket ' + this._number + ' to \\'' + this.url + '\\' session \\'' + this.id + '\\'');\n }\n ClientConnection.prototype.connect = function () {\n var _this = this;\n if (this.closed_permanently)\n return es6_promise_1.Promise.reject(new Error('Cannot connect() a closed ClientConnection'));\n if (this.socket != null)\n return es6_promise_1.Promise.reject(new Error('Already connected'));\n this._pending_replies = {};\n this._current_handler = null;\n try {\n var versioned_url = this.url + '?bokeh-protocol-version=1.0&bokeh-session-id=' + this.id;\n if (this.args_string != null && this.args_string.length > 0)\n versioned_url += '&' + this.args_string;\n this.socket = new WebSocket(versioned_url);\n return new es6_promise_1.Promise(function (resolve, reject) {\n // \"arraybuffer\" gives us binary data we can look at;\n // if we just needed an opaque blob we could use \"blob\"\n _this.socket.binaryType = 'arraybuffer';\n _this.socket.onopen = function () {\n return _this._on_open(resolve, reject);\n };\n _this.socket.onmessage = function (event) {\n return _this._on_message(event);\n };\n _this.socket.onclose = function (event) {\n return _this._on_close(event);\n };\n _this.socket.onerror = function () {\n return _this._on_error(reject);\n };\n });\n } catch (error) {\n logging_1.logger.error('websocket creation failed to url: ' + this.url);\n logging_1.logger.error(' - ' + error);\n return es6_promise_1.Promise.reject(error);\n }\n };\n ClientConnection.prototype.close = function () {\n if (!this.closed_permanently) {\n logging_1.logger.debug('Permanently closing websocket connection ' + this._number);\n this.closed_permanently = true;\n if (this.socket != null)\n this.socket.close(1000, 'close method called on ClientConnection ' + this._number);\n this.session._connection_closed();\n if (this._on_closed_permanently_hook != null) {\n this._on_closed_permanently_hook();\n this._on_closed_permanently_hook = null;\n }\n }\n };\n ClientConnection.prototype._schedule_reconnect = function (milliseconds) {\n var _this = this;\n var retry = function () {\n // TODO commented code below until we fix reconnection to repull\n // the document when required. Otherwise, we get a lot of\n // confusing errors that are causing trouble when debugging.\n /*\n if (this.closed_permanently) {\n */\n if (!_this.closed_permanently)\n logging_1.logger.info('Websocket connection ' + _this._number + ' disconnected, will not attempt to reconnect');\n return; /*\n } else {\n logger.debug(`Attempting to reconnect websocket ${this._number}`)\n this.connect()\n }\n */\n };\n setTimeout(retry, milliseconds);\n };\n ClientConnection.prototype.send = function (message) {\n if (this.socket == null)\n throw new Error('not connected so cannot send ' + message);\n message.send(this.socket);\n };\n ClientConnection.prototype.send_with_reply = function (message) {\n var _this = this;\n var promise = new es6_promise_1.Promise(function (resolve, reject) {\n _this._pending_replies[message.msgid()] = [\n resolve,\n reject\n ];\n _this.send(message);\n });\n return promise.then(function (message) {\n if (message.msgtype() === 'ERROR')\n throw new Error('Error reply ' + message.content['text']);\n else\n return message;\n }, function (error) {\n throw error;\n });\n };\n ClientConnection.prototype._pull_doc_json = function () {\n var message = message_1.Message.create('PULL-DOC-REQ', {});\n var promise = this.send_with_reply(message);\n return promise.then(function (reply) {\n if (!('doc' in reply.content))\n throw new Error('No \\'doc\\' field in PULL-DOC-REPLY');\n return reply.content['doc'];\n }, function (error) {\n throw error;\n });\n };\n ClientConnection.prototype._repull_session_doc = function () {\n var _this = this;\n if (this.session == null)\n logging_1.logger.debug('Pulling session for first time');\n else\n logging_1.logger.debug('Repulling session');\n this._pull_doc_json().then(function (doc_json) {\n if (_this.session == null) {\n if (_this.closed_permanently)\n logging_1.logger.debug('Got new document after connection was already closed');\n else {\n var document_2 = document_1.Document.from_json(doc_json);\n // Constructing models changes some of their attributes, we deal with that\n // here. This happens when models set attributes during construction\n // or initialization.\n var patch = document_1.Document._compute_patch_since_json(doc_json, document_2);\n if (patch.events.length > 0) {\n logging_1.logger.debug('Sending ' + patch.events.length + ' changes from model construction back to server');\n var patch_message = message_1.Message.create('PATCH-DOC', {}, patch);\n _this.send(patch_message);\n }\n _this.session = new session_1.ClientSession(_this, document_2, _this.id);\n logging_1.logger.debug('Created a new session from new pulled doc');\n if (_this._on_have_session_hook != null) {\n _this._on_have_session_hook(_this.session);\n _this._on_have_session_hook = null;\n }\n }\n } else {\n _this.session.document.replace_with_json(doc_json);\n logging_1.logger.debug('Updated existing session with new pulled doc');\n }\n }, function (error) {\n // handling the error here is useless because we wouldn't\n // get errors from the resolve handler above, so see\n // the catch below instead\n throw error;\n }).catch(function (error) {\n if (console.trace != null)\n console.trace(error);\n logging_1.logger.error('Failed to repull session ' + error);\n });\n };\n ClientConnection.prototype._on_open = function (resolve, reject) {\n var _this = this;\n logging_1.logger.info('Websocket connection ' + this._number + ' is now open');\n this._pending_ack = [\n resolve,\n reject\n ];\n this._current_handler = function (message) {\n _this._awaiting_ack_handler(message);\n };\n };\n ClientConnection.prototype._on_message = function (event) {\n if (this._current_handler == null)\n logging_1.logger.error('Got a message with no current handler set');\n try {\n this._receiver.consume(event.data);\n } catch (e) {\n this._close_bad_protocol(e.toString());\n }\n if (this._receiver.message == null)\n return;\n var msg = this._receiver.message;\n var problem = msg.problem();\n if (problem != null)\n this._close_bad_protocol(problem);\n this._current_handler(msg);\n };\n ClientConnection.prototype._on_close = function (event) {\n var _this = this;\n logging_1.logger.info('Lost websocket ' + this._number + ' connection, ' + event.code + ' (' + event.reason + ')');\n this.socket = null;\n if (this._pending_ack != null) {\n this._pending_ack[1](new Error('Lost websocket connection, ' + event.code + ' (' + event.reason + ')'));\n this._pending_ack = null;\n }\n var pop_pending = function () {\n for (var reqid in _this._pending_replies) {\n var promise_funcs_1 = _this._pending_replies[reqid];\n delete _this._pending_replies[reqid];\n return promise_funcs_1;\n }\n return null;\n };\n var promise_funcs = pop_pending();\n while (promise_funcs != null) {\n promise_funcs[1]('Disconnected');\n promise_funcs = pop_pending();\n }\n if (!this.closed_permanently)\n this._schedule_reconnect(2000);\n };\n ClientConnection.prototype._on_error = function (reject) {\n logging_1.logger.debug('Websocket error on socket ' + this._number);\n reject(new Error('Could not open websocket'));\n };\n ClientConnection.prototype._close_bad_protocol = function (detail) {\n logging_1.logger.error('Closing connection: ' + detail);\n if (this.socket != null)\n this.socket.close(1002, detail); // 1002 = protocol error\n };\n ClientConnection.prototype._awaiting_ack_handler = function (message) {\n var _this = this;\n if (message.msgtype() === 'ACK') {\n this._current_handler = function (message) {\n return _this._steady_state_handler(message);\n };\n // Reload any sessions\n // TODO (havocp) there's a race where we might get a PATCH before\n // we send and get a reply to our pulls.\n this._repull_session_doc();\n if (this._pending_ack != null) {\n this._pending_ack[0](this);\n this._pending_ack = null;\n }\n } else\n this._close_bad_protocol('First message was not an ACK');\n };\n ClientConnection.prototype._steady_state_handler = function (message) {\n if (message.reqid() in this._pending_replies) {\n var promise_funcs = this._pending_replies[message.reqid()];\n delete this._pending_replies[message.reqid()];\n promise_funcs[0](message);\n } else\n this.session.handle(message);\n };\n return ClientConnection;\n }();\n exports.ClientConnection = ClientConnection;\n // Returns a promise of a ClientSession\n // The returned promise has a close() method in case you want to close before\n // getting a session; session.close() works too once you have a session.\n function pull_session(url, session_id, args_string) {\n var connection;\n var promise = new es6_promise_1.Promise(function (resolve, reject) {\n connection = new ClientConnection(url, session_id, args_string, function (session) {\n try {\n resolve(session);\n } catch (error) {\n logging_1.logger.error('Promise handler threw an error, closing session ' + error);\n session.close();\n throw error;\n }\n }, function () {\n // we rely on reject() as a no-op if we already resolved\n reject(new Error('Connection was closed before we successfully pulled a session'));\n });\n return connection.connect().then(function (_) {\n return undefined;\n }, function (error) {\n logging_1.logger.error('Failed to connect to Bokeh server ' + error);\n throw error;\n });\n });\n /*\n // add a \"close\" method to the promise... too weird?\n promise.close = () => {\n connection.close()\n }\n */\n return promise;\n }\n exports.pull_session = pull_session; \n}","/*client/session*/\nfunction _(require, module, exports) {\n var logging_1 = require(14 /* core/logging */);\n var document_1 = require(50 /* document */);\n var message_1 = require(262 /* protocol/message */);\n var ClientSession = function () {\n function ClientSession(_connection, document, id) {\n var _this = this;\n this._connection = _connection;\n this.document = document;\n this.id = id;\n this._document_listener = function (event) {\n return _this._document_changed(event);\n };\n this.document.on_change(this._document_listener);\n this.event_manager = this.document.event_manager;\n this.event_manager.session = this;\n }\n ClientSession.prototype.handle = function (message) {\n var msgtype = message.msgtype();\n if (msgtype === 'PATCH-DOC')\n this._handle_patch(message);\n else if (msgtype === 'OK')\n this._handle_ok(message);\n else if (msgtype === 'ERROR')\n this._handle_error(message);\n else\n logging_1.logger.debug('Doing nothing with message ' + message.msgtype());\n };\n ClientSession.prototype.close = function () {\n this._connection.close();\n };\n ClientSession.prototype.send_event = function (event) {\n var message = message_1.Message.create('EVENT', {}, JSON.stringify(event));\n this._connection.send(message);\n };\n /*protected*/\n ClientSession.prototype._connection_closed = function () {\n this.document.remove_on_change(this._document_listener);\n };\n // Sends a request to the server for info about the server, such as its Bokeh\n // version. Returns a promise, the value of the promise is a free-form dictionary\n // of server details.\n ClientSession.prototype.request_server_info = function () {\n var message = message_1.Message.create('SERVER-INFO-REQ', {});\n var promise = this._connection.send_with_reply(message);\n return promise.then(function (reply) {\n return reply.content;\n });\n };\n // Sends some request to the server (no guarantee about which one) and returns\n // a promise which is completed when the server replies. The purpose of this\n // is that if you wait for the promise to be completed, you know the server\n // has processed the request. This is useful when writing tests because once\n // the server has processed this request it should also have processed any\n // events or requests you sent previously, which means you can check for the\n // results of that processing without a race condition. (This assumes the\n // server processes events in sequence, which it mostly has to semantically,\n // since reordering events might change the final state.)\n ClientSession.prototype.force_roundtrip = function () {\n return this.request_server_info().then(function (_) {\n return undefined;\n });\n };\n ClientSession.prototype._document_changed = function (event) {\n // Filter out events that were initiated by the ClientSession itself\n if (event.setter_id === this.id)\n return;\n // Filter out changes to attributes that aren't server-visible\n if (event instanceof document_1.ModelChangedEvent && !(event.attr in event.model.serializable_attributes()))\n return;\n // TODO (havocp) the connection may be closed here, which will\n // cause this send to throw an error - need to deal with it more cleanly.\n var message = message_1.Message.create('PATCH-DOC', {}, this.document.create_json_patch([event]));\n this._connection.send(message);\n };\n ClientSession.prototype._handle_patch = function (message) {\n this.document.apply_json_patch(message.content, message.buffers, this.id);\n };\n ClientSession.prototype._handle_ok = function (message) {\n logging_1.logger.trace('Unhandled OK reply to ' + message.reqid());\n };\n ClientSession.prototype._handle_error = function (message) {\n logging_1.logger.error('Unhandled ERROR reply to ' + message.reqid() + ': ' + message.content['text']);\n };\n return ClientSession;\n }();\n exports.ClientSession = ClientSession; \n}","/*core/bokeh_events*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var logging_1 = require(14 /* ./logging */);\n var object_1 = require(32 /* ./util/object */);\n var event_classes = {};\n function register_event_class(event_name) {\n return function (event_cls) {\n event_cls.prototype.event_name = event_name;\n event_classes[event_name] = event_cls;\n };\n }\n exports.register_event_class = register_event_class;\n function register_with_event(event_cls) {\n var models = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n models[_i - 1] = arguments[_i];\n }\n var applicable_models = event_cls.prototype.applicable_models.concat(models);\n event_cls.prototype.applicable_models = applicable_models;\n }\n exports.register_with_event = register_with_event;\n var BokehEvent = function () {\n function BokehEvent(options) {\n if (options === void 0) {\n options = {};\n }\n this.model_id = null;\n this._options = options;\n if (options.model_id) {\n this.model_id = options.model_id;\n }\n }\n BokehEvent.prototype.set_model_id = function (id) {\n this._options.model_id = id;\n this.model_id = id;\n return this;\n };\n BokehEvent.prototype.is_applicable_to = function (obj) {\n return this.applicable_models.some(function (model) {\n return obj instanceof model;\n });\n };\n BokehEvent.event_class = function (e) {\n // Given an event with a type attribute matching the event_name,\n // return the appropriate BokehEvent class\n if (e.type) {\n return event_classes[e.type];\n } else {\n logging_1.logger.warn('BokehEvent.event_class required events with a string type attribute');\n }\n };\n BokehEvent.prototype.toJSON = function () {\n return {\n event_name: this.event_name,\n event_values: object_1.clone(this._options)\n };\n };\n BokehEvent.prototype._customize_event = function (_model) {\n return this;\n };\n return BokehEvent;\n }();\n exports.BokehEvent = BokehEvent;\n BokehEvent.prototype.applicable_models = [];\n var ButtonClick = function (_super) {\n tslib_1.__extends(ButtonClick, _super);\n function ButtonClick() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n ButtonClick = tslib_1.__decorate([register_event_class('button_click')], ButtonClick);\n return ButtonClick;\n }(BokehEvent);\n exports.ButtonClick = ButtonClick;\n // A UIEvent is an event originating on a PlotCanvas this includes\n // DOM events such as keystrokes as well as hammer events and LOD events.\n var UIEvent = function (_super) {\n tslib_1.__extends(UIEvent, _super);\n function UIEvent() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return UIEvent;\n }(BokehEvent);\n exports.UIEvent = UIEvent;\n var LODStart = function (_super) {\n tslib_1.__extends(LODStart, _super);\n function LODStart() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n LODStart = tslib_1.__decorate([register_event_class('lodstart')], LODStart);\n return LODStart;\n }(UIEvent);\n exports.LODStart = LODStart;\n var LODEnd = function (_super) {\n tslib_1.__extends(LODEnd, _super);\n function LODEnd() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n LODEnd = tslib_1.__decorate([register_event_class('lodend')], LODEnd);\n return LODEnd;\n }(UIEvent);\n exports.LODEnd = LODEnd;\n var SelectionGeometry = function (_super) {\n tslib_1.__extends(SelectionGeometry, _super);\n function SelectionGeometry(options) {\n var _this = _super.call(this, options) || this;\n _this.geometry = options.geometry;\n _this.final = options.final;\n return _this;\n }\n SelectionGeometry = tslib_1.__decorate([register_event_class('selectiongeometry')], SelectionGeometry);\n return SelectionGeometry;\n }(UIEvent);\n exports.SelectionGeometry = SelectionGeometry;\n var Reset = function (_super) {\n tslib_1.__extends(Reset, _super);\n function Reset() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n Reset = tslib_1.__decorate([register_event_class('reset')], Reset);\n return Reset;\n }(UIEvent);\n exports.Reset = Reset;\n var PointEvent = function (_super) {\n tslib_1.__extends(PointEvent, _super);\n function PointEvent(options) {\n var _this = _super.call(this, options) || this;\n _this.sx = options.sx;\n _this.sy = options.sy;\n _this.x = null;\n _this.y = null;\n return _this;\n }\n PointEvent.from_event = function (e, model_id) {\n if (model_id === void 0) {\n model_id = null;\n }\n return new this({\n sx: e.sx,\n sy: e.sy,\n model_id: model_id\n });\n };\n PointEvent.prototype._customize_event = function (plot) {\n var xscale = plot.plot_canvas.frame.xscales['default'];\n var yscale = plot.plot_canvas.frame.yscales['default'];\n this.x = xscale.invert(this.sx);\n this.y = yscale.invert(this.sy);\n this._options['x'] = this.x;\n this._options['y'] = this.y;\n return this;\n };\n return PointEvent;\n }(UIEvent);\n exports.PointEvent = PointEvent;\n var Pan = function (_super) {\n tslib_1.__extends(Pan, _super);\n function Pan(options) {\n if (options === void 0) {\n options = {};\n }\n var _this = _super.call(this, options) || this;\n _this.delta_x = options.delta_x;\n _this.delta_y = options.delta_y;\n return _this;\n }\n Pan.from_event = function (e, model_id) {\n if (model_id === void 0) {\n model_id = null;\n }\n return new this({\n sx: e.sx,\n sy: e.sy,\n delta_x: e.deltaX,\n delta_y: e.deltaY,\n direction: e.direction,\n model_id: model_id\n });\n };\n Pan = tslib_1.__decorate([register_event_class('pan')], Pan);\n return Pan;\n }(PointEvent);\n exports.Pan = Pan;\n var Pinch = function (_super) {\n tslib_1.__extends(Pinch, _super);\n function Pinch(options) {\n if (options === void 0) {\n options = {};\n }\n var _this = _super.call(this, options) || this;\n _this.scale = options.scale;\n return _this;\n }\n Pinch.from_event = function (e, model_id) {\n if (model_id === void 0) {\n model_id = null;\n }\n return new this({\n sx: e.sx,\n sy: e.sy,\n scale: e.scale,\n model_id: model_id\n });\n };\n Pinch = tslib_1.__decorate([register_event_class('pinch')], Pinch);\n return Pinch;\n }(PointEvent);\n exports.Pinch = Pinch;\n var MouseWheel = function (_super) {\n tslib_1.__extends(MouseWheel, _super);\n function MouseWheel(options) {\n if (options === void 0) {\n options = {};\n }\n var _this = _super.call(this, options) || this;\n _this.delta = options.delta;\n return _this;\n }\n MouseWheel.from_event = function (e, model_id) {\n if (model_id === void 0) {\n model_id = null;\n }\n return new this({\n sx: e.sx,\n sy: e.sy,\n delta: e.delta,\n model_id: model_id\n });\n };\n MouseWheel = tslib_1.__decorate([register_event_class('wheel')], MouseWheel);\n return MouseWheel;\n }(PointEvent);\n exports.MouseWheel = MouseWheel;\n var MouseMove = function (_super) {\n tslib_1.__extends(MouseMove, _super);\n function MouseMove() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n MouseMove = tslib_1.__decorate([register_event_class('mousemove')], MouseMove);\n return MouseMove;\n }(PointEvent);\n exports.MouseMove = MouseMove;\n var MouseEnter = function (_super) {\n tslib_1.__extends(MouseEnter, _super);\n function MouseEnter() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n MouseEnter = tslib_1.__decorate([register_event_class('mouseenter')], MouseEnter);\n return MouseEnter;\n }(PointEvent);\n exports.MouseEnter = MouseEnter;\n var MouseLeave = function (_super) {\n tslib_1.__extends(MouseLeave, _super);\n function MouseLeave() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n MouseLeave = tslib_1.__decorate([register_event_class('mouseleave')], MouseLeave);\n return MouseLeave;\n }(PointEvent);\n exports.MouseLeave = MouseLeave;\n var Tap = function (_super) {\n tslib_1.__extends(Tap, _super);\n function Tap() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n Tap = tslib_1.__decorate([register_event_class('tap')], Tap);\n return Tap;\n }(PointEvent);\n exports.Tap = Tap;\n var DoubleTap = function (_super) {\n tslib_1.__extends(DoubleTap, _super);\n function DoubleTap() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n DoubleTap = tslib_1.__decorate([register_event_class('doubletap')], DoubleTap);\n return DoubleTap;\n }(PointEvent);\n exports.DoubleTap = DoubleTap;\n var Press = function (_super) {\n tslib_1.__extends(Press, _super);\n function Press() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n Press = tslib_1.__decorate([register_event_class('press')], Press);\n return Press;\n }(PointEvent);\n exports.Press = Press;\n var PanStart = function (_super) {\n tslib_1.__extends(PanStart, _super);\n function PanStart() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n PanStart = tslib_1.__decorate([register_event_class('panstart')], PanStart);\n return PanStart;\n }(PointEvent);\n exports.PanStart = PanStart;\n var PanEnd = function (_super) {\n tslib_1.__extends(PanEnd, _super);\n function PanEnd() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n PanEnd = tslib_1.__decorate([register_event_class('panend')], PanEnd);\n return PanEnd;\n }(PointEvent);\n exports.PanEnd = PanEnd;\n var PinchStart = function (_super) {\n tslib_1.__extends(PinchStart, _super);\n function PinchStart() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n PinchStart = tslib_1.__decorate([register_event_class('pinchstart')], PinchStart);\n return PinchStart;\n }(PointEvent);\n exports.PinchStart = PinchStart;\n var PinchEnd = function (_super) {\n tslib_1.__extends(PinchEnd, _super);\n function PinchEnd() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n PinchEnd = tslib_1.__decorate([register_event_class('pinchend')], PinchEnd);\n return PinchEnd;\n }(PointEvent);\n exports.PinchEnd = PinchEnd; \n}","/*core/build_views*/\nfunction _(require, module, exports) {\n var array_1 = require(21 /* ./util/array */);\n var object_1 = require(32 /* ./util/object */);\n function build_views(view_storage, models, options, cls) {\n if (cls === void 0) {\n cls = function (model) {\n return model.default_view;\n };\n }\n var to_remove = array_1.difference(Object.keys(view_storage), models.map(function (model) {\n return model.id;\n }));\n for (var _i = 0, to_remove_1 = to_remove; _i < to_remove_1.length; _i++) {\n var model_id = to_remove_1[_i];\n view_storage[model_id].remove();\n delete view_storage[model_id];\n }\n var created_views = [];\n var new_models = models.filter(function (model) {\n return view_storage[model.id] == null;\n });\n for (var _a = 0, new_models_1 = new_models; _a < new_models_1.length; _a++) {\n var model = new_models_1[_a];\n var view_cls = cls(model);\n var view_options = object_1.extend({}, options, {\n model: model,\n connect_signals: false\n });\n var view = new view_cls(view_options);\n view_storage[model.id] = view;\n created_views.push(view);\n }\n for (var _b = 0, created_views_1 = created_views; _b < created_views_1.length; _b++) {\n var view = created_views_1[_b];\n view.connect_signals();\n }\n return created_views;\n }\n exports.build_views = build_views;\n function remove_views(view_storage) {\n for (var id in view_storage) {\n view_storage[id].remove();\n delete view_storage[id];\n }\n }\n exports.remove_views = remove_views; \n}","/*core/dom*/\nfunction _(require, module, exports) {\n var types_1 = require(44 /* ./util/types */);\n var _createElement = function (tag) {\n return function (attrs) {\n if (attrs === void 0) {\n attrs = {};\n }\n var children = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n children[_i - 1] = arguments[_i];\n }\n var element = document.createElement(tag);\n for (var attr in attrs) {\n var value = attrs[attr];\n if (value == null || types_1.isBoolean(value) && !value)\n continue;\n if (attr === 'class' && types_1.isArray(value)) {\n for (var _a = 0, _b = value; _a < _b.length; _a++) {\n var cls = _b[_a];\n if (cls != null)\n element.classList.add(cls);\n }\n continue;\n }\n if (attr === 'style' && types_1.isObject(value)) {\n for (var prop in value) {\n element.style[prop] = value[prop];\n }\n continue;\n }\n if (attr === 'data' && types_1.isObject(value)) {\n for (var key in value) {\n element.dataset[key] = value[key];\n }\n continue;\n }\n element.setAttribute(attr, value);\n }\n function append(child) {\n if (child instanceof HTMLElement)\n element.appendChild(child);\n else if (types_1.isString(child))\n element.appendChild(document.createTextNode(child));\n else if (child != null && child !== false)\n throw new Error('expected an HTMLElement, string, false or null, got ' + JSON.stringify(child));\n }\n for (var _c = 0, children_1 = children; _c < children_1.length; _c++) {\n var child = children_1[_c];\n if (types_1.isArray(child)) {\n for (var _d = 0, child_1 = child; _d < child_1.length; _d++) {\n var _child = child_1[_d];\n append(_child);\n }\n } else\n append(child);\n }\n return element;\n };\n };\n function createElement(tag, attrs) {\n var children = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n children[_i - 2] = arguments[_i];\n }\n return _createElement(tag).apply(void 0, [attrs].concat(children));\n }\n exports.createElement = createElement;\n exports.div = _createElement('div'), exports.span = _createElement('span'), exports.link = _createElement('link'), exports.style = _createElement('style'), exports.a = _createElement('a'), exports.p = _createElement('p'), exports.i = _createElement('i'), exports.pre = _createElement('pre'), exports.button = _createElement('button'), exports.label = _createElement('label'), exports.input = _createElement('input'), exports.select = _createElement('select'), exports.option = _createElement('option'), exports.optgroup = _createElement('optgroup'), exports.textarea = _createElement('textarea'), exports.canvas = _createElement('canvas'), exports.ul = _createElement('ul'), exports.ol = _createElement('ol'), exports.li = _createElement('li');\n exports.nbsp = document.createTextNode('\\xA0');\n function removeElement(element) {\n var parent = element.parentNode;\n if (parent != null) {\n parent.removeChild(element);\n }\n }\n exports.removeElement = removeElement;\n function replaceWith(element, replacement) {\n var parent = element.parentNode;\n if (parent != null) {\n parent.replaceChild(replacement, element);\n }\n }\n exports.replaceWith = replaceWith;\n function prepend(element) {\n var nodes = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n nodes[_i - 1] = arguments[_i];\n }\n var first = element.firstChild;\n for (var _a = 0, nodes_1 = nodes; _a < nodes_1.length; _a++) {\n var node = nodes_1[_a];\n element.insertBefore(node, first);\n }\n }\n exports.prepend = prepend;\n function empty(element) {\n var child;\n while (child = element.firstChild) {\n element.removeChild(child);\n }\n }\n exports.empty = empty;\n function show(element) {\n element.style.display = '';\n }\n exports.show = show;\n function hide(element) {\n element.style.display = 'none';\n }\n exports.hide = hide;\n function position(element) {\n return {\n top: element.offsetTop,\n left: element.offsetLeft\n };\n }\n exports.position = position;\n function offset(element) {\n var rect = element.getBoundingClientRect();\n return {\n top: rect.top + window.pageYOffset - document.documentElement.clientTop,\n left: rect.left + window.pageXOffset - document.documentElement.clientLeft\n };\n }\n exports.offset = offset;\n function matches(el, selector) {\n var p = Element.prototype;\n var f = p.matches || p.webkitMatchesSelector || p.mozMatchesSelector || p.msMatchesSelector;\n return f.call(el, selector);\n }\n exports.matches = matches;\n function parent(el, selector) {\n var node = el;\n while (node = node.parentElement) {\n if (matches(node, selector))\n return node;\n }\n return null;\n }\n exports.parent = parent;\n function margin(el) {\n var style = getComputedStyle(el);\n return {\n top: parseFloat(style.marginTop) || 0,\n bottom: parseFloat(style.marginBottom) || 0,\n left: parseFloat(style.marginLeft) || 0,\n right: parseFloat(style.marginRight) || 0\n };\n }\n exports.margin = margin;\n function padding(el) {\n var style = getComputedStyle(el);\n return {\n top: parseFloat(style.paddingTop) || 0,\n bottom: parseFloat(style.paddingBottom) || 0,\n left: parseFloat(style.paddingLeft) || 0,\n right: parseFloat(style.paddingRight) || 0\n };\n }\n exports.padding = padding;\n var Keys;\n (function (Keys) {\n Keys[Keys['Backspace'] = 8] = 'Backspace';\n Keys[Keys['Tab'] = 9] = 'Tab';\n Keys[Keys['Enter'] = 13] = 'Enter';\n Keys[Keys['Esc'] = 27] = 'Esc';\n Keys[Keys['PageUp'] = 33] = 'PageUp';\n Keys[Keys['PageDown'] = 34] = 'PageDown';\n Keys[Keys['Left'] = 37] = 'Left';\n Keys[Keys['Up'] = 38] = 'Up';\n Keys[Keys['Right'] = 39] = 'Right';\n Keys[Keys['Down'] = 40] = 'Down';\n Keys[Keys['Delete'] = 46] = 'Delete';\n }(Keys = exports.Keys || (exports.Keys = {}))); \n}","/*core/dom_view*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var view_1 = require(48 /* ./view */);\n var DOM = require(5 /* ./dom */);\n var DOMView = function (_super) {\n tslib_1.__extends(DOMView, _super);\n function DOMView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n DOMView.prototype.initialize = function (options) {\n _super.prototype.initialize.call(this, options);\n this._has_finished = false;\n this.el = this._createElement();\n };\n DOMView.prototype.remove = function () {\n DOM.removeElement(this.el);\n _super.prototype.remove.call(this);\n };\n DOMView.prototype.css_classes = function () {\n return [];\n };\n Object.defineProperty(DOMView.prototype, 'cursor', {\n get: function () {\n return null;\n },\n enumerable: true,\n configurable: true\n });\n DOMView.prototype.layout = function () {\n };\n DOMView.prototype.render = function () {\n };\n DOMView.prototype.renderTo = function (element, replace) {\n if (replace === void 0) {\n replace = false;\n }\n if (!replace)\n element.appendChild(this.el);\n else\n DOM.replaceWith(element, this.el);\n this.layout();\n };\n DOMView.prototype.has_finished = function () {\n return this._has_finished;\n };\n Object.defineProperty(DOMView.prototype, '_root_element', {\n get: function () {\n return DOM.parent(this.el, '.bk-root') || document.body;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(DOMView.prototype, 'solver', {\n get: function () {\n return this.is_root ? this._solver : this.parent.solver;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(DOMView.prototype, 'is_idle', {\n get: function () {\n return this.has_finished();\n },\n enumerable: true,\n configurable: true\n });\n DOMView.prototype._createElement = function () {\n return DOM.createElement(this.tagName, {\n id: this.id,\n class: this.css_classes()\n });\n };\n return DOMView;\n }(view_1.View);\n exports.DOMView = DOMView;\n DOMView.prototype.tagName = 'div'; \n}","/*core/enums*/\nfunction _(require, module, exports) {\n exports.AngleUnits = [\n 'deg',\n 'rad'\n ];\n exports.Dimension = [\n 'width',\n 'height'\n ];\n exports.Dimensions = [\n 'width',\n 'height',\n 'both'\n ];\n exports.Direction = [\n 'clock',\n 'anticlock'\n ];\n exports.FontStyle = [\n 'normal',\n 'italic',\n 'bold'\n ];\n exports.LatLon = [\n 'lat',\n 'lon'\n ];\n exports.LineCap = [\n 'butt',\n 'round',\n 'square'\n ];\n exports.LineJoin = [\n 'miter',\n 'round',\n 'bevel'\n ];\n exports.Location = [\n 'above',\n 'below',\n 'left',\n 'right'\n ];\n exports.LegendClickPolicy = [\n 'none',\n 'hide',\n 'mute'\n ];\n exports.LegendLocation = [\n 'top_left',\n 'top_center',\n 'top_right',\n 'center_left',\n 'center',\n 'center_right',\n 'bottom_left',\n 'bottom_center',\n 'bottom_right'\n ];\n exports.Anchor = exports.LegendLocation;\n exports.Orientation = [\n 'vertical',\n 'horizontal'\n ];\n exports.OutputBackend = [\n 'canvas',\n 'svg',\n 'webgl'\n ];\n exports.RenderLevel = [\n 'image',\n 'underlay',\n 'glyph',\n 'annotation',\n 'overlay'\n ];\n exports.RenderMode = [\n 'canvas',\n 'css'\n ];\n exports.Side = [\n 'above',\n 'below',\n 'left',\n 'right'\n ];\n exports.Place = [\n 'above',\n 'below',\n 'left',\n 'right',\n 'center'\n ];\n exports.SpatialUnits = [\n 'screen',\n 'data'\n ];\n exports.StartEnd = [\n 'start',\n 'end'\n ];\n exports.VerticalAlign = [\n 'top',\n 'middle',\n 'bottom'\n ];\n exports.TextAlign = [\n 'left',\n 'right',\n 'center'\n ];\n exports.TextBaseline = [\n 'top',\n 'middle',\n 'bottom',\n 'alphabetic',\n 'hanging',\n 'ideographic'\n ];\n exports.TickLabelOrientation = [\n 'vertical',\n 'horizontal',\n 'parallel',\n 'normal'\n ];\n exports.TooltipAttachment = [\n 'horizontal',\n 'vertical',\n 'left',\n 'right',\n 'above',\n 'below'\n ];\n exports.Distribution = [\n 'uniform',\n 'normal'\n ];\n exports.StepMode = [\n 'after',\n 'before',\n 'center'\n ];\n exports.SizingMode = [\n 'stretch_both',\n 'scale_width',\n 'scale_height',\n 'scale_both',\n 'fixed'\n ];\n exports.PaddingUnits = [\n 'percent',\n 'absolute'\n ];\n exports.SliderCallbackPolicy = [\n 'continuous',\n 'throttle',\n 'mouseup'\n ];\n exports.RoundingFunction = [\n 'round',\n 'nearest',\n 'floor',\n 'rounddown',\n 'ceil',\n 'roundup'\n ];\n exports.UpdateMode = [\n 'replace',\n 'append'\n ];\n exports.HTTPMethod = [\n 'POST',\n 'GET'\n ];\n exports.Logo = [\n 'normal',\n 'grey'\n ]; \n}","/*core/has_props*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var signaling_1 = require(19 /* ./signaling */);\n var property_mixins = require(16 /* ./property_mixins */);\n var refs_1 = require(34 /* ./util/refs */);\n var p = require(15 /* ./properties */);\n var string_1 = require(38 /* ./util/string */);\n var array_1 = require(21 /* ./util/array */);\n var object_1 = require(32 /* ./util/object */);\n var types_1 = require(44 /* ./util/types */);\n var eq_1 = require(30 /* ./util/eq */);\n var HasProps = function (_super) {\n tslib_1.__extends(HasProps, _super);\n function HasProps(attrs) {\n if (attrs === void 0) {\n attrs = {};\n }\n var _this = _super.call(this) || this;\n _this._subtype = undefined;\n _this.document = null;\n _this.destroyed = new signaling_1.Signal0(_this, 'destroyed');\n _this.change = new signaling_1.Signal0(_this, 'change');\n _this.transformchange = new signaling_1.Signal0(_this, 'transformchange');\n _this.attributes = {};\n _this.properties = {};\n _this._set_after_defaults = {};\n _this._pending = false;\n _this._changing = false;\n for (var name_1 in _this.props) {\n var _a = _this.props[name_1], type = _a.type, default_value = _a.default_value;\n if (type != null)\n _this.properties[name_1] = new type(_this, name_1, default_value);\n else\n throw new Error('undefined property type for ' + _this.type + '.' + name_1);\n }\n // auto generating ID\n if (attrs.id == null)\n _this.setv({ id: string_1.uniqueId() }, { silent: true });\n var deferred = attrs.__deferred__ || false;\n if (deferred) {\n attrs = object_1.clone(attrs);\n delete attrs.__deferred__;\n }\n _this.setv(attrs, { silent: true });\n // allowing us to defer initialization when loading many models\n // when loading a bunch of models, we want to do initialization as a second pass\n // because other objects that this one depends on might not be loaded yet\n if (!deferred)\n _this.finalize();\n return _this;\n }\n HasProps.initClass = function () {\n this.prototype.type = 'HasProps';\n this.prototype.props = {};\n this.prototype.mixins = [];\n this.define({ id: [p.Any] });\n };\n // }}}\n HasProps._fix_default = function (default_value, _attr) {\n if (default_value === undefined)\n return undefined;\n else if (types_1.isFunction(default_value))\n return default_value;\n else if (!types_1.isObject(default_value))\n return function () {\n return default_value;\n };\n else {\n //logger.warn(`${this.prototype.type}.${attr} uses unwrapped non-primitive default value`)\n if (types_1.isArray(default_value))\n return function () {\n return array_1.copy(default_value);\n };\n else\n return function () {\n return object_1.clone(default_value);\n };\n }\n };\n HasProps.define = function (obj) {\n var _loop_1 = function (name_2) {\n var prop = obj[name_2];\n if (this_1.prototype.props[name_2] != null)\n throw new Error('attempted to redefine property \\'' + this_1.prototype.type + '.' + name_2 + '\\'');\n if (this_1.prototype[name_2] != null)\n throw new Error('attempted to redefine attribute \\'' + this_1.prototype.type + '.' + name_2 + '\\'');\n Object.defineProperty(this_1.prototype, name_2, {\n // XXX: don't use tail calls in getters/setters due to https://bugs.webkit.org/show_bug.cgi?id=164306\n get: function () {\n var value = this.getv(name_2);\n return value;\n },\n set: function (value) {\n this.setv((_a = {}, _a[name_2] = value, _a));\n return this;\n var _a;\n },\n configurable: false,\n enumerable: true\n });\n var type = prop[0], default_value = prop[1], internal = prop[2];\n var refined_prop = {\n type: type,\n default_value: this_1._fix_default(default_value, name_2),\n internal: internal || false\n };\n var props = object_1.clone(this_1.prototype.props);\n props[name_2] = refined_prop;\n this_1.prototype.props = props;\n };\n var this_1 = this;\n for (var name_2 in obj) {\n _loop_1(name_2);\n }\n };\n HasProps.internal = function (obj) {\n var _object = {};\n for (var name_3 in obj) {\n var prop = obj[name_3];\n var type = prop[0], default_value = prop[1];\n _object[name_3] = [\n type,\n default_value,\n true\n ];\n }\n this.define(_object);\n };\n HasProps.mixin = function () {\n var names = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n names[_i] = arguments[_i];\n }\n this.define(property_mixins.create(names));\n var mixins = this.prototype.mixins.concat(names);\n this.prototype.mixins = mixins;\n };\n HasProps.mixins = function (names) {\n this.mixin.apply(this, names);\n };\n HasProps.override = function (obj) {\n for (var name_4 in obj) {\n var default_value = this._fix_default(obj[name_4], name_4);\n var value = this.prototype.props[name_4];\n if (value == null)\n throw new Error('attempted to override nonexistent \\'' + this.prototype.type + '.' + name_4 + '\\'');\n var props = object_1.clone(this.prototype.props);\n props[name_4] = object_1.extend({}, value, { default_value: default_value });\n this.prototype.props = props;\n }\n };\n HasProps.prototype.toString = function () {\n return this.type + '(' + this.id + ')';\n };\n HasProps.prototype.finalize = function () {\n var _this = this;\n // This is necessary because the initial creation of properties relies on\n // model.get which is not usable at that point yet in the constructor. This\n // initializer is called when deferred initialization happens for all models\n // and insures that the Bokeh properties are initialized from Backbone\n // attributes in a consistent way.\n //\n // TODO (bev) split property creation up into two parts so that only the\n // portion of init that can be done happens in HasProps constructor and so\n // that subsequent updates do not duplicate that setup work.\n for (var name_5 in this.properties) {\n var prop = this.properties[name_5];\n prop.update();\n if (prop.spec.transform != null)\n this.connect(prop.spec.transform.change, function () {\n return _this.transformchange.emit();\n });\n }\n this.initialize();\n this.connect_signals();\n };\n HasProps.prototype.initialize = function () {\n };\n HasProps.prototype.connect_signals = function () {\n };\n HasProps.prototype.disconnect_signals = function () {\n signaling_1.Signal.disconnectReceiver(this);\n };\n HasProps.prototype.destroy = function () {\n this.disconnect_signals();\n this.destroyed.emit();\n };\n // Create a new model with identical attributes to this one.\n HasProps.prototype.clone = function () {\n return new this.constructor(this.attributes);\n };\n // Set a hash of model attributes on the object, firing `\"change\"`. This is\n // the core primitive operation of a model, updating the data and notifying\n // anyone who needs to know about the change in state. The heart of the beast.\n HasProps.prototype._setv = function (attrs, options) {\n // Extract attributes and options.\n var check_eq = options.check_eq;\n var silent = options.silent;\n var changes = [];\n var changing = this._changing;\n this._changing = true;\n var current = this.attributes;\n // For each `set` attribute, update or delete the current value.\n for (var attr in attrs) {\n var val = attrs[attr];\n if (check_eq !== false) {\n if (!eq_1.isEqual(current[attr], val))\n changes.push(attr);\n } else\n changes.push(attr);\n current[attr] = val;\n }\n // Trigger all relevant attribute changes.\n if (!silent) {\n if (changes.length > 0)\n this._pending = true;\n for (var i = 0; i < changes.length; i++)\n this.properties[changes[i]].change.emit();\n }\n // You might be wondering why there's a `while` loop here. Changes can\n // be recursively nested within `\"change\"` events.\n if (changing)\n return;\n if (!silent && !options.no_change) {\n while (this._pending) {\n this._pending = false;\n this.change.emit();\n }\n }\n this._pending = false;\n this._changing = false;\n };\n HasProps.prototype.setv = function (attrs, options) {\n if (options === void 0) {\n options = {};\n }\n for (var key in attrs) {\n if (!attrs.hasOwnProperty(key))\n continue;\n var prop_name = key;\n if (this.props[prop_name] == null)\n throw new Error('property ' + this.type + '.' + prop_name + ' wasn\\'t declared');\n if (!(options != null && options.defaults))\n this._set_after_defaults[key] = true;\n }\n if (!object_1.isEmpty(attrs)) {\n var old = {};\n for (var key in attrs)\n old[key] = this.getv(key);\n this._setv(attrs, options);\n var silent = options.silent;\n if (silent == null || !silent) {\n for (var key in attrs)\n this._tell_document_about_change(key, old[key], this.getv(key), options);\n }\n }\n };\n HasProps.prototype.getv = function (prop_name) {\n if (this.props[prop_name] == null)\n throw new Error('property ' + this.type + '.' + prop_name + ' wasn\\'t declared');\n else\n return this.attributes[prop_name];\n };\n HasProps.prototype.ref = function () {\n return refs_1.create_ref(this);\n };\n // we only keep the subtype so we match Python;\n // only Python cares about this\n HasProps.prototype.set_subtype = function (subtype) {\n this._subtype = subtype;\n };\n HasProps.prototype.attribute_is_serializable = function (attr) {\n var prop = this.props[attr];\n if (prop == null)\n throw new Error(this.type + '.attribute_is_serializable(\\'' + attr + '\\'): ' + attr + ' wasn\\'t declared');\n else\n return !prop.internal;\n };\n // dict of attributes that should be serialized to the server. We\n // sometimes stick things in attributes that aren't part of the\n // Document's models, subtypes that do that have to remove their\n // extra attributes here.\n HasProps.prototype.serializable_attributes = function () {\n var attrs = {};\n for (var name_6 in this.attributes) {\n var value = this.attributes[name_6];\n if (this.attribute_is_serializable(name_6))\n attrs[name_6] = value;\n }\n return attrs;\n };\n HasProps._value_to_json = function (_key, value, _optional_parent_object) {\n if (value instanceof HasProps)\n return value.ref();\n else if (types_1.isArray(value)) {\n var ref_array = [];\n for (var i = 0; i < value.length; i++) {\n var v = value[i];\n ref_array.push(HasProps._value_to_json(i.toString(), v, value));\n }\n return ref_array;\n } else if (types_1.isObject(value)) {\n var ref_obj = {};\n for (var subkey in value) {\n if (value.hasOwnProperty(subkey))\n ref_obj[subkey] = HasProps._value_to_json(subkey, value[subkey], value);\n }\n return ref_obj;\n } else\n return value;\n };\n // Convert attributes to \"shallow\" JSON (values which are themselves models\n // are included as just references)\n HasProps.prototype.attributes_as_json = function (include_defaults, value_to_json) {\n if (include_defaults === void 0) {\n include_defaults = true;\n }\n if (value_to_json === void 0) {\n value_to_json = HasProps._value_to_json;\n }\n var serializable = this.serializable_attributes();\n var attrs = {};\n for (var key in serializable) {\n if (serializable.hasOwnProperty(key)) {\n var value = serializable[key];\n if (include_defaults)\n attrs[key] = value;\n else if (key in this._set_after_defaults)\n attrs[key] = value;\n }\n }\n return value_to_json('attributes', attrs, this);\n };\n // this is like _value_record_references but expects to find refs\n // instead of models, and takes a doc to look up the refs in\n HasProps._json_record_references = function (doc, v, result, recurse) {\n if (v == null) {\n } else if (refs_1.is_ref(v)) {\n if (!(v.id in result)) {\n var model = doc.get_model_by_id(v.id);\n HasProps._value_record_references(model, result, recurse);\n }\n } else if (types_1.isArray(v)) {\n for (var _i = 0, v_1 = v; _i < v_1.length; _i++) {\n var elem = v_1[_i];\n HasProps._json_record_references(doc, elem, result, recurse);\n }\n } else if (types_1.isObject(v)) {\n for (var k in v) {\n if (v.hasOwnProperty(k)) {\n var elem = v[k];\n HasProps._json_record_references(doc, elem, result, recurse);\n }\n }\n }\n };\n // add all references from 'v' to 'result', if recurse\n // is true then descend into refs, if false only\n // descend into non-refs\n HasProps._value_record_references = function (v, result, recurse) {\n if (v == null) {\n } else if (v instanceof HasProps) {\n if (!(v.id in result)) {\n result[v.id] = v;\n if (recurse) {\n var immediate = v._immediate_references();\n for (var _i = 0, immediate_1 = immediate; _i < immediate_1.length; _i++) {\n var obj = immediate_1[_i];\n HasProps._value_record_references(obj, result, true);\n } // true=recurse\n }\n }\n } else if (v.buffer instanceof ArrayBuffer) {\n } else if (types_1.isArray(v)) {\n for (var _a = 0, v_2 = v; _a < v_2.length; _a++) {\n var elem = v_2[_a];\n HasProps._value_record_references(elem, result, recurse);\n }\n } else if (types_1.isObject(v)) {\n for (var k in v) {\n if (v.hasOwnProperty(k)) {\n var elem = v[k];\n HasProps._value_record_references(elem, result, recurse);\n }\n }\n }\n };\n // Get models that are immediately referenced by our properties\n // (do not recurse, do not include ourselves)\n HasProps.prototype._immediate_references = function () {\n var result = {};\n var attrs = this.serializable_attributes();\n for (var key in attrs) {\n var value = attrs[key];\n HasProps._value_record_references(value, result, false); // false = no recurse\n }\n return object_1.values(result);\n };\n HasProps.prototype.references = function () {\n var references = {};\n HasProps._value_record_references(this, references, true);\n return object_1.values(references);\n };\n HasProps.prototype._doc_attached = function () {\n };\n HasProps.prototype.attach_document = function (doc) {\n // This should only be called by the Document implementation to set the document field\n if (this.document != null && this.document != doc)\n throw new Error('models must be owned by only a single document');\n this.document = doc;\n this._doc_attached();\n };\n HasProps.prototype.detach_document = function () {\n // This should only be called by the Document implementation to unset the document field\n this.document = null;\n };\n HasProps.prototype._tell_document_about_change = function (attr, old, new_, options) {\n if (!this.attribute_is_serializable(attr))\n return;\n if (this.document != null) {\n var new_refs = {};\n HasProps._value_record_references(new_, new_refs, false);\n var old_refs = {};\n HasProps._value_record_references(old, old_refs, false);\n var need_invalidate = false;\n for (var new_id in new_refs) {\n if (!(new_id in old_refs)) {\n need_invalidate = true;\n break;\n }\n }\n if (!need_invalidate) {\n for (var old_id in old_refs) {\n if (!(old_id in new_refs)) {\n need_invalidate = true;\n break;\n }\n }\n }\n if (need_invalidate)\n this.document._invalidate_all_models();\n this.document._notify_change(this, attr, old, new_, options);\n }\n };\n HasProps.prototype.materialize_dataspecs = function (source) {\n // Note: this should be moved to a function separate from HasProps\n var data = {};\n for (var name_7 in this.properties) {\n var prop = this.properties[name_7];\n if (!prop.dataspec)\n continue;\n // this skips optional properties like radius for circles\n if (prop.optional && prop.spec.value == null && !(name_7 in this._set_after_defaults))\n continue;\n data['_' + name_7] = prop.array(source);\n // the shapes are indexed by the column name, but when we materialize the dataspec, we should\n // store under the canonical field name, e.g. _image_shape, even if the column name is \"foo\"\n if (prop.spec.field != null && prop.spec.field in source._shapes)\n data['_' + name_7 + '_shape'] = source._shapes[prop.spec.field];\n if (prop instanceof p.Distance)\n data['max_' + name_7] = array_1.max(data['_' + name_7]);\n }\n return data;\n };\n return HasProps;\n }(signaling_1.Signalable());\n exports.HasProps = HasProps;\n HasProps.initClass(); \n}","/*core/hittest*/\nfunction _(require, module, exports) {\n var array_1 = require(21 /* ./util/array */);\n var selection_1 = require(181 /* ../models/selections/selection */);\n function point_in_poly(x, y, px, py) {\n var inside = false;\n var x1 = px[px.length - 1];\n var y1 = py[py.length - 1];\n for (var i = 0; i < px.length; i++) {\n var x2 = px[i];\n var y2 = py[i];\n if (y1 < y != y2 < y) {\n if (x1 + (y - y1) / (y2 - y1) * (x2 - x1) < x)\n inside = !inside;\n }\n x1 = x2;\n y1 = y2;\n }\n return inside;\n }\n exports.point_in_poly = point_in_poly;\n function create_empty_hit_test_result() {\n return new selection_1.Selection();\n }\n exports.create_empty_hit_test_result = create_empty_hit_test_result;\n function create_hit_test_result_from_hits(hits) {\n var result = new selection_1.Selection();\n result.indices = array_1.sortBy(hits, function (_a) {\n var _i = _a[0], dist = _a[1];\n return dist;\n }).map(function (_a) {\n var i = _a[0], _dist = _a[1];\n return i;\n });\n return result;\n }\n exports.create_hit_test_result_from_hits = create_hit_test_result_from_hits;\n function validate_bbox_coords(_a, _b) {\n var x0 = _a[0], x1 = _a[1];\n var y0 = _b[0], y1 = _b[1];\n // spatial index (flatbush) expects x0, y0 to be min, x1, y1 max\n if (x0 > x1)\n _c = [\n x1,\n x0\n ], x0 = _c[0], x1 = _c[1];\n if (y0 > y1)\n _d = [\n y1,\n y0\n ], y0 = _d[0], y1 = _d[1];\n return {\n minX: x0,\n minY: y0,\n maxX: x1,\n maxY: y1\n };\n var _c, _d;\n }\n exports.validate_bbox_coords = validate_bbox_coords;\n function sqr(x) {\n return x * x;\n }\n function dist_2_pts(p0, p1) {\n return sqr(p0.x - p1.x) + sqr(p0.y - p1.y);\n }\n exports.dist_2_pts = dist_2_pts;\n function dist_to_segment_squared(p, v, w) {\n var l2 = dist_2_pts(v, w);\n if (l2 == 0)\n return dist_2_pts(p, v);\n var t = ((p.x - v.x) * (w.x - v.x) + (p.y - v.y) * (w.y - v.y)) / l2;\n if (t < 0)\n return dist_2_pts(p, v);\n if (t > 1)\n return dist_2_pts(p, w);\n var q = {\n x: v.x + t * (w.x - v.x),\n y: v.y + t * (w.y - v.y)\n };\n return dist_2_pts(p, q);\n }\n exports.dist_to_segment_squared = dist_to_segment_squared;\n function dist_to_segment(p, v, w) {\n return Math.sqrt(dist_to_segment_squared(p, v, w));\n }\n exports.dist_to_segment = dist_to_segment;\n function check_2_segments_intersect(l0_x0, l0_y0, l0_x1, l0_y1, l1_x0, l1_y0, l1_x1, l1_y1) {\n /*\n * Check if 2 segments (l0 and l1) intersect. Returns a structure with\n * the following attributes:\n * * hit (boolean): whether the 2 segments intersect\n * * x (float): x coordinate of the intersection point\n * * y (float): y coordinate of the intersection point\n */\n var den = (l1_y1 - l1_y0) * (l0_x1 - l0_x0) - (l1_x1 - l1_x0) * (l0_y1 - l0_y0);\n if (den == 0) {\n return {\n hit: false,\n x: null,\n y: null\n };\n } else {\n var a = l0_y0 - l1_y0;\n var b = l0_x0 - l1_x0;\n var num1 = (l1_x1 - l1_x0) * a - (l1_y1 - l1_y0) * b;\n var num2 = (l0_x1 - l0_x0) * a - (l0_y1 - l0_y0) * b;\n a = num1 / den;\n b = num2 / den;\n var x = l0_x0 + a * (l0_x1 - l0_x0);\n var y = l0_y0 + a * (l0_y1 - l0_y0);\n return {\n hit: a > 0 && a < 1 && (b > 0 && b < 1),\n x: x,\n y: y\n };\n }\n }\n exports.check_2_segments_intersect = check_2_segments_intersect; \n}","/*core/layout/alignments*/\nfunction _(require, module, exports) {\n var solver_1 = require(13 /* ./solver */);\n var array_1 = require(21 /* ../util/array */);\n function vstack(container, children) {\n var constraints = [];\n if (children.length > 0) {\n constraints.push(solver_1.EQ(array_1.head(children)._bottom, [\n -1,\n container._bottom\n ]));\n constraints.push(solver_1.EQ(array_1.tail(children)._top, [\n -1,\n container._top\n ]));\n constraints.push.apply(constraints, array_1.pairwise(children, function (prev, next) {\n return solver_1.EQ(prev._top, [\n -1,\n next._bottom\n ]);\n }));\n for (var _i = 0, children_1 = children; _i < children_1.length; _i++) {\n var child = children_1[_i];\n constraints.push(solver_1.EQ(child._left, [\n -1,\n container._left\n ]));\n constraints.push(solver_1.EQ(child._right, [\n -1,\n container._right\n ]));\n }\n }\n return constraints;\n }\n exports.vstack = vstack;\n function hstack(container, children) {\n var constraints = [];\n if (children.length > 0) {\n constraints.push(solver_1.EQ(array_1.head(children)._right, [\n -1,\n container._right\n ]));\n constraints.push(solver_1.EQ(array_1.tail(children)._left, [\n -1,\n container._left\n ]));\n constraints.push.apply(constraints, array_1.pairwise(children, function (prev, next) {\n return solver_1.EQ(prev._left, [\n -1,\n next._right\n ]);\n }));\n for (var _i = 0, children_2 = children; _i < children_2.length; _i++) {\n var child = children_2[_i];\n constraints.push(solver_1.EQ(child._top, [\n -1,\n container._top\n ]));\n constraints.push(solver_1.EQ(child._bottom, [\n -1,\n container._bottom\n ]));\n }\n }\n return constraints;\n }\n exports.hstack = hstack; \n}","/*core/layout/layout_canvas*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var solver_1 = require(13 /* ./solver */);\n var has_props_1 = require(8 /* ../has_props */);\n var bbox_1 = require(24 /* ../util/bbox */);\n var LayoutCanvas = function (_super) {\n tslib_1.__extends(LayoutCanvas, _super);\n function LayoutCanvas(attrs) {\n return _super.call(this, attrs) || this;\n }\n LayoutCanvas.initClass = function () {\n this.prototype.type = 'LayoutCanvas';\n };\n LayoutCanvas.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n this._top = new solver_1.Variable(this.toString() + '.top');\n this._left = new solver_1.Variable(this.toString() + '.left');\n this._width = new solver_1.Variable(this.toString() + '.width');\n this._height = new solver_1.Variable(this.toString() + '.height');\n this._right = new solver_1.Variable(this.toString() + '.right');\n this._bottom = new solver_1.Variable(this.toString() + '.bottom');\n this._hcenter = new solver_1.Variable(this.toString() + '.hcenter');\n this._vcenter = new solver_1.Variable(this.toString() + '.vcenter');\n };\n LayoutCanvas.prototype.get_editables = function () {\n return [];\n };\n LayoutCanvas.prototype.get_constraints = function () {\n return [\n solver_1.GE(this._top),\n solver_1.GE(this._bottom),\n solver_1.GE(this._left),\n solver_1.GE(this._right),\n solver_1.GE(this._width),\n solver_1.GE(this._height),\n solver_1.EQ(this._left, this._width, [\n -1,\n this._right\n ]),\n solver_1.EQ(this._top, this._height, [\n -1,\n this._bottom\n ]),\n solver_1.EQ([\n 2,\n this._hcenter\n ], [\n -1,\n this._left\n ], [\n -1,\n this._right\n ]),\n solver_1.EQ([\n 2,\n this._vcenter\n ], [\n -1,\n this._top\n ], [\n -1,\n this._bottom\n ])\n ];\n };\n LayoutCanvas.prototype.get_layoutable_children = function () {\n return [];\n };\n Object.defineProperty(LayoutCanvas.prototype, 'bbox', {\n get: function () {\n return new bbox_1.BBox({\n x0: this._left.value,\n y0: this._top.value,\n x1: this._right.value,\n y1: this._bottom.value\n });\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(LayoutCanvas.prototype, 'layout_bbox', {\n get: function () {\n return {\n top: this._top.value,\n left: this._left.value,\n width: this._width.value,\n height: this._height.value,\n right: this._right.value,\n bottom: this._bottom.value,\n hcenter: this._hcenter.value,\n vcenter: this._vcenter.value\n };\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(LayoutCanvas.prototype, 'xview', {\n get: function () {\n var _this = this;\n return {\n compute: function (x) {\n return _this._left.value + x;\n },\n v_compute: function (xx) {\n var _xx = new Float64Array(xx.length);\n var left = _this._left.value;\n for (var i = 0; i < xx.length; i++) {\n _xx[i] = left + xx[i];\n }\n return _xx;\n }\n };\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(LayoutCanvas.prototype, 'yview', {\n get: function () {\n var _this = this;\n return {\n compute: function (y) {\n return _this._bottom.value - y;\n },\n v_compute: function (yy) {\n var _yy = new Float64Array(yy.length);\n var bottom = _this._bottom.value;\n for (var i = 0; i < yy.length; i++) {\n _yy[i] = bottom - yy[i];\n }\n return _yy;\n }\n };\n },\n enumerable: true,\n configurable: true\n });\n return LayoutCanvas;\n }(has_props_1.HasProps);\n exports.LayoutCanvas = LayoutCanvas;\n LayoutCanvas.initClass(); \n}","/*core/layout/side_panel*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var solver_1 = require(13 /* ./solver */);\n var layout_canvas_1 = require(11 /* ./layout_canvas */);\n var p = require(15 /* ../properties */);\n var logging_1 = require(14 /* ../logging */);\n var types_1 = require(44 /* ../util/types */);\n // This table lays out the rules for configuring the baseline, alignment, etc. of\n // title text, based on it's location and orientation\n //\n // side orient baseline align angle normal-dist\n // ------------------------------------------------------------------------------\n // above parallel bottom center 0 height\n // normal middle left -90 width\n // horizontal bottom center 0 height\n // [angle > 0] middle left width * sin + height * cos\n // [angle < 0] middle right width * sin + height * cos\n //\n // below parallel top center 0 height\n // normal middle right 90 width\n // horizontal top center 0 height\n // [angle > 0] middle right width * sin + height * cos\n // [angle < 0] middle left width * sin + height * cos\n //\n // left parallel bottom center 90 height\n // normal middle right 0 width\n // horizontal middle right 0 width\n // [angle > 0] middle right width * cos + height * sin\n // [angle < 0] middle right width * cos + height + sin\n //\n // right parallel bottom center -90 height\n // normal middle left 0 width\n // horizontal middle left 0 width\n // [angle > 0] middle left width * cos + height * sin\n // [angle < 0] middle left width * cos + height + sin\n var pi2 = Math.PI / 2;\n var ALPHABETIC = 'alphabetic';\n var TOP = 'top';\n var BOTTOM = 'bottom';\n var MIDDLE = 'middle';\n var HANGING = 'hanging';\n var LEFT = 'left';\n var RIGHT = 'right';\n var CENTER = 'center';\n var _angle_lookup = {\n above: {\n parallel: 0,\n normal: -pi2,\n horizontal: 0,\n vertical: -pi2\n },\n below: {\n parallel: 0,\n normal: pi2,\n horizontal: 0,\n vertical: pi2\n },\n left: {\n parallel: -pi2,\n normal: 0,\n horizontal: 0,\n vertical: -pi2\n },\n right: {\n parallel: pi2,\n normal: 0,\n horizontal: 0,\n vertical: pi2\n }\n };\n var _baseline_lookup = {\n above: {\n justified: TOP,\n parallel: ALPHABETIC,\n normal: MIDDLE,\n horizontal: ALPHABETIC,\n vertical: MIDDLE\n },\n below: {\n justified: BOTTOM,\n parallel: HANGING,\n normal: MIDDLE,\n horizontal: HANGING,\n vertical: MIDDLE\n },\n left: {\n justified: TOP,\n parallel: ALPHABETIC,\n normal: MIDDLE,\n horizontal: MIDDLE,\n vertical: ALPHABETIC\n },\n right: {\n justified: TOP,\n parallel: ALPHABETIC,\n normal: MIDDLE,\n horizontal: MIDDLE,\n vertical: ALPHABETIC\n }\n };\n var _align_lookup = {\n above: {\n justified: CENTER,\n parallel: CENTER,\n normal: LEFT,\n horizontal: CENTER,\n vertical: LEFT\n },\n below: {\n justified: CENTER,\n parallel: CENTER,\n normal: LEFT,\n horizontal: CENTER,\n vertical: LEFT\n },\n left: {\n justified: CENTER,\n parallel: CENTER,\n normal: RIGHT,\n horizontal: RIGHT,\n vertical: CENTER\n },\n right: {\n justified: CENTER,\n parallel: CENTER,\n normal: LEFT,\n horizontal: LEFT,\n vertical: CENTER\n }\n };\n var _align_lookup_negative = {\n above: RIGHT,\n below: LEFT,\n left: RIGHT,\n right: LEFT\n };\n var _align_lookup_positive = {\n above: LEFT,\n below: RIGHT,\n left: RIGHT,\n right: LEFT\n };\n function isSizeable(model) {\n return 'panel' in model;\n }\n exports.isSizeable = isSizeable;\n function isSizeableView(view) {\n return isSizeable(view.model) && 'get_size' in view;\n }\n exports.isSizeableView = isSizeableView;\n exports._view_sizes = new WeakMap();\n exports._view_constraints = new WeakMap();\n function update_panel_constraints(view) {\n var s = view.solver;\n var size = view.get_size();\n var constraint = exports._view_constraints.get(view);\n if (constraint != null && s.has_constraint(constraint)) {\n if (exports._view_sizes.get(view) === size)\n return;\n s.remove_constraint(constraint);\n }\n constraint = solver_1.GE(view.model.panel._size, -size);\n s.add_constraint(constraint);\n exports._view_sizes.set(view, size);\n exports._view_constraints.set(view, constraint);\n }\n exports.update_panel_constraints = update_panel_constraints;\n var SidePanel = function (_super) {\n tslib_1.__extends(SidePanel, _super);\n function SidePanel(attrs) {\n return _super.call(this, attrs) || this;\n }\n SidePanel.initClass = function () {\n this.prototype.type = 'SidePanel';\n this.internal({ side: [p.String] });\n };\n SidePanel.prototype.toString = function () {\n return this.type + '(' + this.id + ', ' + this.side + ')';\n };\n SidePanel.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n switch (this.side) {\n case 'above':\n this._dim = 0;\n this._normals = [\n 0,\n -1\n ];\n this._size = this._height;\n break;\n case 'below':\n this._dim = 0;\n this._normals = [\n 0,\n 1\n ];\n this._size = this._height;\n break;\n case 'left':\n this._dim = 1;\n this._normals = [\n -1,\n 0\n ];\n this._size = this._width;\n break;\n case 'right':\n this._dim = 1;\n this._normals = [\n 1,\n 0\n ];\n this._size = this._width;\n break;\n default:\n logging_1.logger.error('unrecognized side: \\'' + this.side + '\\'');\n }\n };\n Object.defineProperty(SidePanel.prototype, 'dimension', {\n get: function () {\n return this._dim;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(SidePanel.prototype, 'normals', {\n get: function () {\n return this._normals;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(SidePanel.prototype, 'is_horizontal', {\n get: function () {\n return this.side == 'above' || this.side == 'below';\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(SidePanel.prototype, 'is_vertical', {\n get: function () {\n return this.side == 'left' || this.side == 'right';\n },\n enumerable: true,\n configurable: true\n });\n SidePanel.prototype.apply_label_text_heuristics = function (ctx, orient) {\n var side = this.side;\n var baseline;\n var align;\n if (types_1.isString(orient)) {\n baseline = _baseline_lookup[side][orient];\n align = _align_lookup[side][orient];\n } else {\n if (orient === 0) {\n baseline = 'whatever';\n // XXX: _baseline_lookup[side][orient]\n align = 'whatever'; // XXX: _align_lookup[side][orient]\n } else if (orient < 0) {\n baseline = 'middle';\n align = _align_lookup_negative[side];\n } else {\n baseline = 'middle';\n align = _align_lookup_positive[side];\n }\n }\n ctx.textBaseline = baseline;\n ctx.textAlign = align;\n };\n SidePanel.prototype.get_label_angle_heuristic = function (orient) {\n return _angle_lookup[this.side][orient];\n };\n return SidePanel;\n }(layout_canvas_1.LayoutCanvas);\n exports.SidePanel = SidePanel;\n SidePanel.initClass(); \n}","/*core/layout/solver*/\nfunction _(require, module, exports) {\n var kiwi_1 = require(339 /* kiwi */);\n exports.Variable = kiwi_1.Variable;\n exports.Expression = kiwi_1.Expression;\n exports.Constraint = kiwi_1.Constraint;\n exports.Operator = kiwi_1.Operator;\n exports.Strength = kiwi_1.Strength;\n function _constrainer(op) {\n return function () {\n var terms = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n terms[_i] = arguments[_i];\n }\n return new kiwi_1.Constraint(new (kiwi_1.Expression.bind.apply(kiwi_1.Expression, [void 0].concat(terms)))(), op);\n };\n }\n function _weak_constrainer(op) {\n return function () {\n var terms = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n terms[_i] = arguments[_i];\n }\n return new kiwi_1.Constraint(new (kiwi_1.Expression.bind.apply(kiwi_1.Expression, [void 0].concat(terms)))(), op, kiwi_1.Strength.weak);\n };\n }\n exports.EQ = _constrainer(kiwi_1.Operator.Eq);\n exports.LE = _constrainer(kiwi_1.Operator.Le);\n exports.GE = _constrainer(kiwi_1.Operator.Ge);\n exports.WEAK_EQ = _weak_constrainer(kiwi_1.Operator.Eq);\n exports.WEAK_LE = _weak_constrainer(kiwi_1.Operator.Le);\n exports.WEAK_GE = _weak_constrainer(kiwi_1.Operator.Ge);\n var Solver = function () {\n function Solver() {\n this.solver = new kiwi_1.Solver();\n }\n Solver.prototype.clear = function () {\n this.solver = new kiwi_1.Solver();\n };\n Solver.prototype.toString = function () {\n return 'Solver(num_constraints=' + this.num_constraints + ', num_editables=' + this.num_editables + ')';\n };\n Object.defineProperty(Solver.prototype, 'num_constraints', {\n get: function () {\n return this.solver.numConstraints;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Solver.prototype, 'num_editables', {\n get: function () {\n return this.solver.numEditVariables;\n },\n enumerable: true,\n configurable: true\n });\n Solver.prototype.get_constraints = function () {\n return this.solver.getConstraints();\n };\n Solver.prototype.update_variables = function () {\n this.solver.updateVariables();\n };\n Solver.prototype.has_constraint = function (constraint) {\n return this.solver.hasConstraint(constraint);\n };\n Solver.prototype.add_constraint = function (constraint) {\n try {\n this.solver.addConstraint(constraint);\n } catch (e) {\n throw new Error(e.message + ': ' + constraint.toString());\n }\n };\n Solver.prototype.remove_constraint = function (constraint) {\n this.solver.removeConstraint(constraint);\n };\n Solver.prototype.add_edit_variable = function (variable, strength) {\n this.solver.addEditVariable(variable, strength);\n };\n Solver.prototype.remove_edit_variable = function (variable) {\n this.solver.removeEditVariable(variable);\n };\n Solver.prototype.suggest_value = function (variable, value) {\n this.solver.suggestValue(variable, value);\n };\n return Solver;\n }();\n exports.Solver = Solver; \n}","/*core/logging*/\nfunction _(require, module, exports) {\n var types_1 = require(44 /* ./util/types */);\n var _loggers = {};\n var LogLevel = function () {\n function LogLevel(name, level) {\n this.name = name;\n this.level = level;\n }\n return LogLevel;\n }();\n exports.LogLevel = LogLevel;\n var Logger = function () {\n function Logger(name, level) {\n if (level === void 0) {\n level = Logger.INFO;\n }\n this._name = name;\n this.set_level(level);\n }\n Object.defineProperty(Logger, 'levels', {\n get: function () {\n return Object.keys(Logger.log_levels);\n },\n enumerable: true,\n configurable: true\n });\n Logger.get = function (name, level) {\n if (level === void 0) {\n level = Logger.INFO;\n }\n if (name.length > 0) {\n var logger_1 = _loggers[name];\n if (logger_1 == null)\n _loggers[name] = logger_1 = new Logger(name, level);\n return logger_1;\n } else\n throw new TypeError('Logger.get() expects a non-empty string name and an optional log-level');\n };\n Object.defineProperty(Logger.prototype, 'level', {\n get: function () {\n return this.get_level();\n },\n enumerable: true,\n configurable: true\n });\n Logger.prototype.get_level = function () {\n return this._log_level;\n };\n Logger.prototype.set_level = function (log_level) {\n if (log_level instanceof LogLevel)\n this._log_level = log_level;\n else if (types_1.isString(log_level) && Logger.log_levels[log_level] != null)\n this._log_level = Logger.log_levels[log_level];\n else\n throw new Error('Logger.set_level() expects a log-level object or a string name of a log-level');\n var logger_name = '[' + this._name + ']';\n for (var name_1 in Logger.log_levels) {\n var log_level_1 = Logger.log_levels[name_1];\n if (log_level_1.level < this._log_level.level || this._log_level.level === Logger.OFF.level)\n this[name_1] = function () {\n };\n else\n this[name_1] = _method_factory(name_1, logger_name);\n }\n };\n Logger.prototype.trace = function () {\n var _args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n _args[_i] = arguments[_i];\n }\n };\n Logger.prototype.debug = function () {\n var _args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n _args[_i] = arguments[_i];\n }\n };\n Logger.prototype.info = function () {\n var _args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n _args[_i] = arguments[_i];\n }\n };\n Logger.prototype.warn = function () {\n var _args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n _args[_i] = arguments[_i];\n }\n };\n Logger.prototype.error = function () {\n var _args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n _args[_i] = arguments[_i];\n }\n };\n Logger.TRACE = new LogLevel('trace', 0);\n Logger.DEBUG = new LogLevel('debug', 1);\n Logger.INFO = new LogLevel('info', 2);\n Logger.WARN = new LogLevel('warn', 6);\n Logger.ERROR = new LogLevel('error', 7);\n Logger.FATAL = new LogLevel('fatal', 8);\n Logger.OFF = new LogLevel('off', 9);\n Logger.log_levels = {\n trace: Logger.TRACE,\n debug: Logger.DEBUG,\n info: Logger.INFO,\n warn: Logger.WARN,\n error: Logger.ERROR,\n fatal: Logger.FATAL,\n off: Logger.OFF\n };\n return Logger;\n }();\n exports.Logger = Logger;\n function _method_factory(method_name, logger_name) {\n if (console[method_name] != null)\n return console[method_name].bind(console, logger_name);\n else if (console.log != null)\n return console.log.bind(console, logger_name);\n else\n return function () {\n };\n }\n exports.logger = Logger.get('bokeh');\n function set_log_level(level) {\n if (Logger.log_levels[level] == null) {\n console.log('[bokeh] unrecognized logging level \\'' + level + '\\' passed to Bokeh.set_log_level(), ignoring');\n console.log('[bokeh] valid log levels are: ' + Logger.levels.join(', '));\n } else {\n console.log('[bokeh] setting log level to: \\'' + level + '\\'');\n exports.logger.set_level(level);\n }\n }\n exports.set_log_level = set_log_level; \n}","/*core/properties*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var signaling_1 = require(19 /* ./signaling */);\n var has_props_1 = require(8 /* ./has_props */);\n var enums = require(7 /* ./enums */);\n var svg_colors_1 = require(39 /* ./util/svg_colors */);\n var color_1 = require(27 /* ./util/color */);\n var array_1 = require(21 /* ./util/array */);\n var arrayable_1 = require(22 /* ./util/arrayable */);\n var types_1 = require(44 /* ./util/types */);\n signaling_1.Signal;\n // XXX: silence TS, because `Signal` appears in declarations due to Signalable\n function valueToString(value) {\n try {\n return JSON.stringify(value);\n } catch (_a) {\n return value.toString();\n }\n }\n function isSpec(obj) {\n return !(obj instanceof has_props_1.HasProps) && types_1.isObject(obj) && (obj.value === undefined ? 0 : 1) + (obj.field === undefined ? 0 : 1) + (obj.expr === undefined ? 0 : 1) == 1; // garbage JS XOR\n }\n exports.isSpec = isSpec;\n //\n // Property base class\n //\n var Property = function (_super) {\n tslib_1.__extends(Property, _super);\n function Property(obj, attr, default_value) {\n var _this = _super.call(this) || this;\n _this.optional = false;\n _this.obj = obj;\n _this.attr = attr;\n _this.default_value = default_value;\n _this.change = new signaling_1.Signal0(_this.obj, 'change');\n _this._init();\n _this.connect(_this.change, function () {\n return _this._init();\n });\n return _this;\n }\n Property.prototype.update = function () {\n this._init();\n };\n // ----- customizable policies\n Property.prototype.init = function () {\n };\n Property.prototype.transform = function (values) {\n return values;\n };\n Property.prototype.validate = function (_value) {\n };\n // ----- property accessors\n Property.prototype.value = function (do_spec_transform) {\n if (do_spec_transform === void 0) {\n do_spec_transform = true;\n }\n if (this.spec.value === undefined)\n throw new Error('attempted to retrieve property value for property without value specification');\n var ret = this.transform([this.spec.value])[0];\n if (this.spec.transform != null && do_spec_transform)\n ret = this.spec.transform.compute(ret);\n return ret;\n };\n Property.prototype.array = function (source) {\n if (!this.dataspec)\n throw new Error('attempted to retrieve property array for non-dataspec property');\n var ret;\n if (this.spec.field != null) {\n ret = this.transform(source.get_column(this.spec.field));\n if (ret == null)\n throw new Error('attempted to retrieve property array for nonexistent field \\'' + this.spec.field + '\\'');\n } else if (this.spec.expr != null) {\n ret = this.transform(this.spec.expr.v_compute(source));\n } else {\n var length_1 = source.get_length();\n if (length_1 == null)\n length_1 = 1;\n var value = this.value(false);\n // don't apply any spec transform\n ret = array_1.repeat(value, length_1);\n }\n if (this.spec.transform != null)\n ret = this.spec.transform.v_compute(ret);\n return ret;\n };\n // ----- private methods\n /*protected*/\n Property.prototype._init = function () {\n var obj = this.obj;\n var attr = this.attr;\n var attr_value = obj.getv(attr);\n if (attr_value === undefined) {\n var default_value = this.default_value;\n if (default_value !== undefined)\n attr_value = default_value(obj);\n else\n attr_value = null;\n obj.setv((_a = {}, _a[attr] = attr_value, _a), {\n silent: true,\n defaults: true\n });\n }\n if (types_1.isArray(attr_value))\n this.spec = { value: attr_value };\n else if (isSpec(attr_value))\n this.spec = attr_value;\n else\n this.spec = { value: attr_value };\n if (this.spec.field != null && !types_1.isString(this.spec.field))\n throw new Error('field value for property \\'' + attr + '\\' is not a string');\n if (this.spec.value != null)\n this.validate(this.spec.value);\n this.init();\n var _a;\n };\n Property.prototype.toString = function () {\n /*${this.name}*/\n return 'Prop(' + this.obj + '.' + this.attr + ', spec: ' + valueToString(this.spec) + ')';\n };\n return Property;\n }(signaling_1.Signalable());\n exports.Property = Property;\n Property.prototype.dataspec = false;\n //\n // Simple Properties\n //\n function simple_prop(name, pred) {\n return function (_super) {\n tslib_1.__extends(class_1, _super);\n function class_1() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n class_1.prototype.validate = function (value) {\n if (!pred(value))\n throw new Error(name + ' property \\'' + this.attr + '\\' given invalid value: ' + valueToString(value));\n };\n return class_1;\n }(Property);\n }\n exports.simple_prop = simple_prop;\n var Any = function (_super) {\n tslib_1.__extends(Any, _super);\n function Any() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return Any;\n }(simple_prop('Any', function (_x) {\n return true;\n }));\n exports.Any = Any;\n var Array = function (_super) {\n tslib_1.__extends(Array, _super);\n function Array() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return Array;\n }(simple_prop('Array', function (x) {\n return types_1.isArray(x) || x instanceof Float64Array;\n }));\n exports.Array = Array;\n var Bool = function (_super) {\n tslib_1.__extends(Bool, _super);\n function Bool() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return Bool;\n }(simple_prop('Bool', types_1.isBoolean));\n exports.Bool = Bool;\n exports.Boolean = Bool;\n var Color = function (_super) {\n tslib_1.__extends(Color, _super);\n function Color() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return Color;\n }(simple_prop('Color', function (x) {\n return svg_colors_1.is_svg_color(x.toLowerCase()) || x.substring(0, 1) == '#' || color_1.valid_rgb(x);\n }));\n exports.Color = Color;\n var Instance = function (_super) {\n tslib_1.__extends(Instance, _super);\n function Instance() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return Instance;\n }(simple_prop('Instance', function (x) {\n return x.properties != null;\n }));\n exports.Instance = Instance;\n // TODO (bev) separate booleans?\n var Number = function (_super) {\n tslib_1.__extends(Number, _super);\n function Number() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return Number;\n }(simple_prop('Number', function (x) {\n return types_1.isNumber(x) || types_1.isBoolean(x);\n }));\n exports.Number = Number;\n exports.Int = Number;\n // TODO extend Number instead of copying it's predicate\n //class Percent extends Number(\"Percent\", (x) -> 0 <= x <= 1.0)\n var Percent = function (_super) {\n tslib_1.__extends(Percent, _super);\n function Percent() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return Percent;\n }(simple_prop('Number', function (x) {\n return (types_1.isNumber(x) || types_1.isBoolean(x)) && 0 <= x && x <= 1;\n }));\n exports.Percent = Percent;\n var String = function (_super) {\n tslib_1.__extends(String, _super);\n function String() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return String;\n }(simple_prop('String', types_1.isString));\n exports.String = String;\n // TODO (bev) don't think this exists python side\n var Font = function (_super) {\n tslib_1.__extends(Font, _super);\n function Font() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return Font;\n }(String);\n exports.Font = Font;\n //\n // Enum properties\n //\n function enum_prop(name, enum_values) {\n return function (_super) {\n tslib_1.__extends(class_2, _super);\n function class_2() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return class_2;\n }(simple_prop(name, function (x) {\n return array_1.includes(enum_values, x);\n }));\n }\n exports.enum_prop = enum_prop;\n var Anchor = function (_super) {\n tslib_1.__extends(Anchor, _super);\n function Anchor() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return Anchor;\n }(enum_prop('Anchor', enums.LegendLocation));\n exports.Anchor = Anchor;\n var AngleUnits = function (_super) {\n tslib_1.__extends(AngleUnits, _super);\n function AngleUnits() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return AngleUnits;\n }(enum_prop('AngleUnits', enums.AngleUnits));\n exports.AngleUnits = AngleUnits;\n var Direction = function (_super) {\n tslib_1.__extends(Direction, _super);\n function Direction() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n Direction.prototype.transform = function (values) {\n var result = new Uint8Array(values.length);\n for (var i = 0; i < values.length; i++) {\n switch (values[i]) {\n case 'clock':\n result[i] = 0;\n break;\n case 'anticlock':\n result[i] = 1;\n break;\n }\n }\n return result;\n };\n return Direction;\n }(enum_prop('Direction', enums.Direction));\n exports.Direction = Direction;\n var Dimension = function (_super) {\n tslib_1.__extends(Dimension, _super);\n function Dimension() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return Dimension;\n }(enum_prop('Dimension', enums.Dimension));\n exports.Dimension = Dimension;\n var Dimensions = function (_super) {\n tslib_1.__extends(Dimensions, _super);\n function Dimensions() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return Dimensions;\n }(enum_prop('Dimensions', enums.Dimensions));\n exports.Dimensions = Dimensions;\n var FontStyle = function (_super) {\n tslib_1.__extends(FontStyle, _super);\n function FontStyle() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return FontStyle;\n }(enum_prop('FontStyle', enums.FontStyle));\n exports.FontStyle = FontStyle;\n var LatLon = function (_super) {\n tslib_1.__extends(LatLon, _super);\n function LatLon() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return LatLon;\n }(enum_prop('LatLon', enums.LatLon));\n exports.LatLon = LatLon;\n var LineCap = function (_super) {\n tslib_1.__extends(LineCap, _super);\n function LineCap() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return LineCap;\n }(enum_prop('LineCap', enums.LineCap));\n exports.LineCap = LineCap;\n var LineJoin = function (_super) {\n tslib_1.__extends(LineJoin, _super);\n function LineJoin() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return LineJoin;\n }(enum_prop('LineJoin', enums.LineJoin));\n exports.LineJoin = LineJoin;\n var LegendLocation = function (_super) {\n tslib_1.__extends(LegendLocation, _super);\n function LegendLocation() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return LegendLocation;\n }(enum_prop('LegendLocation', enums.LegendLocation));\n exports.LegendLocation = LegendLocation;\n var Location = function (_super) {\n tslib_1.__extends(Location, _super);\n function Location() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return Location;\n }(enum_prop('Location', enums.Location));\n exports.Location = Location;\n var OutputBackend = function (_super) {\n tslib_1.__extends(OutputBackend, _super);\n function OutputBackend() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return OutputBackend;\n }(enum_prop('OutputBackend', enums.OutputBackend));\n exports.OutputBackend = OutputBackend;\n var Orientation = function (_super) {\n tslib_1.__extends(Orientation, _super);\n function Orientation() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return Orientation;\n }(enum_prop('Orientation', enums.Orientation));\n exports.Orientation = Orientation;\n var VerticalAlign = function (_super) {\n tslib_1.__extends(VerticalAlign, _super);\n function VerticalAlign() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return VerticalAlign;\n }(enum_prop('VerticalAlign', enums.VerticalAlign));\n exports.VerticalAlign = VerticalAlign;\n var TextAlign = function (_super) {\n tslib_1.__extends(TextAlign, _super);\n function TextAlign() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return TextAlign;\n }(enum_prop('TextAlign', enums.TextAlign));\n exports.TextAlign = TextAlign;\n var TextBaseline = function (_super) {\n tslib_1.__extends(TextBaseline, _super);\n function TextBaseline() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return TextBaseline;\n }(enum_prop('TextBaseline', enums.TextBaseline));\n exports.TextBaseline = TextBaseline;\n var RenderLevel = function (_super) {\n tslib_1.__extends(RenderLevel, _super);\n function RenderLevel() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return RenderLevel;\n }(enum_prop('RenderLevel', enums.RenderLevel));\n exports.RenderLevel = RenderLevel;\n var RenderMode = function (_super) {\n tslib_1.__extends(RenderMode, _super);\n function RenderMode() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return RenderMode;\n }(enum_prop('RenderMode', enums.RenderMode));\n exports.RenderMode = RenderMode;\n var SizingMode = function (_super) {\n tslib_1.__extends(SizingMode, _super);\n function SizingMode() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return SizingMode;\n }(enum_prop('SizingMode', enums.SizingMode));\n exports.SizingMode = SizingMode;\n var SpatialUnits = function (_super) {\n tslib_1.__extends(SpatialUnits, _super);\n function SpatialUnits() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return SpatialUnits;\n }(enum_prop('SpatialUnits', enums.SpatialUnits));\n exports.SpatialUnits = SpatialUnits;\n var Distribution = function (_super) {\n tslib_1.__extends(Distribution, _super);\n function Distribution() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return Distribution;\n }(enum_prop('Distribution', enums.Distribution));\n exports.Distribution = Distribution;\n var StepMode = function (_super) {\n tslib_1.__extends(StepMode, _super);\n function StepMode() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return StepMode;\n }(enum_prop('StepMode', enums.StepMode));\n exports.StepMode = StepMode;\n var PaddingUnits = function (_super) {\n tslib_1.__extends(PaddingUnits, _super);\n function PaddingUnits() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return PaddingUnits;\n }(enum_prop('PaddingUnits', enums.PaddingUnits));\n exports.PaddingUnits = PaddingUnits;\n var StartEnd = function (_super) {\n tslib_1.__extends(StartEnd, _super);\n function StartEnd() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return StartEnd;\n }(enum_prop('StartEnd', enums.StartEnd));\n exports.StartEnd = StartEnd;\n //\n // Units Properties\n //\n function units_prop(name, valid_units, default_units) {\n return function (_super) {\n tslib_1.__extends(class_3, _super);\n function class_3() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n class_3.prototype.init = function () {\n if (this.spec.units == null)\n this.spec.units = default_units;\n var units = this.spec.units;\n if (!array_1.includes(valid_units, units))\n throw new Error(name + ' units must be one of ' + valid_units + ', given invalid value: ' + units);\n };\n Object.defineProperty(class_3.prototype, 'units', {\n get: function () {\n return this.spec.units;\n },\n set: function (units) {\n this.spec.units = units;\n },\n enumerable: true,\n configurable: true\n });\n return class_3;\n }(Number);\n }\n exports.units_prop = units_prop;\n var Angle = function (_super) {\n tslib_1.__extends(Angle, _super);\n function Angle() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n Angle.prototype.transform = function (values) {\n if (this.spec.units == 'deg')\n values = arrayable_1.map(values, function (x) {\n return x * Math.PI / 180;\n });\n values = arrayable_1.map(values, function (x) {\n return -x;\n });\n return _super.prototype.transform.call(this, values);\n };\n return Angle;\n }(units_prop('Angle', enums.AngleUnits, 'rad'));\n exports.Angle = Angle;\n var Distance = function (_super) {\n tslib_1.__extends(Distance, _super);\n function Distance() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return Distance;\n }(units_prop('Distance', enums.SpatialUnits, 'data'));\n exports.Distance = Distance;\n //\n // DataSpec properties\n //\n var AngleSpec = function (_super) {\n tslib_1.__extends(AngleSpec, _super);\n function AngleSpec() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return AngleSpec;\n }(Angle);\n exports.AngleSpec = AngleSpec;\n AngleSpec.prototype.dataspec = true;\n var ColorSpec = function (_super) {\n tslib_1.__extends(ColorSpec, _super);\n function ColorSpec() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return ColorSpec;\n }(Color);\n exports.ColorSpec = ColorSpec;\n ColorSpec.prototype.dataspec = true;\n var DistanceSpec = function (_super) {\n tslib_1.__extends(DistanceSpec, _super);\n function DistanceSpec() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return DistanceSpec;\n }(Distance);\n exports.DistanceSpec = DistanceSpec;\n DistanceSpec.prototype.dataspec = true;\n var FontSizeSpec = function (_super) {\n tslib_1.__extends(FontSizeSpec, _super);\n function FontSizeSpec() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return FontSizeSpec;\n }(String);\n exports.FontSizeSpec = FontSizeSpec;\n FontSizeSpec.prototype.dataspec = true;\n var NumberSpec = function (_super) {\n tslib_1.__extends(NumberSpec, _super);\n function NumberSpec() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return NumberSpec;\n }(Number);\n exports.NumberSpec = NumberSpec;\n NumberSpec.prototype.dataspec = true;\n var StringSpec = function (_super) {\n tslib_1.__extends(StringSpec, _super);\n function StringSpec() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return StringSpec;\n }(String);\n exports.StringSpec = StringSpec;\n StringSpec.prototype.dataspec = true; \n}","/*core/property_mixins*/\nfunction _(require, module, exports) {\n var p = require(15 /* ./properties */);\n var object_1 = require(32 /* ./util/object */);\n function _gen_mixin(mixin, prefix) {\n var result = {};\n for (var name_1 in mixin) {\n var prop = mixin[name_1];\n result[prefix + name_1] = prop;\n }\n return result;\n }\n var _line_mixin = {\n line_color: [\n p.ColorSpec,\n 'black'\n ],\n line_width: [\n p.NumberSpec,\n 1\n ],\n line_alpha: [\n p.NumberSpec,\n 1\n ],\n line_join: [\n p.LineJoin,\n 'miter'\n ],\n line_cap: [\n p.LineCap,\n 'butt'\n ],\n line_dash: [\n p.Array,\n []\n ],\n line_dash_offset: [\n p.Number,\n 0\n ]\n };\n exports.line = function (prefix) {\n if (prefix === void 0) {\n prefix = '';\n }\n return _gen_mixin(_line_mixin, prefix);\n };\n var _fill_mixin = {\n fill_color: [\n p.ColorSpec,\n 'gray'\n ],\n fill_alpha: [\n p.NumberSpec,\n 1\n ]\n };\n exports.fill = function (prefix) {\n if (prefix === void 0) {\n prefix = '';\n }\n return _gen_mixin(_fill_mixin, prefix);\n };\n var _text_mixin = {\n text_font: [\n p.Font,\n 'helvetica'\n ],\n text_font_size: [\n p.FontSizeSpec,\n '12pt'\n ],\n text_font_style: [\n p.FontStyle,\n 'normal'\n ],\n text_color: [\n p.ColorSpec,\n '#444444'\n ],\n text_alpha: [\n p.NumberSpec,\n 1\n ],\n text_align: [\n p.TextAlign,\n 'left'\n ],\n text_baseline: [\n p.TextBaseline,\n 'bottom'\n ],\n text_line_height: [\n p.Number,\n 1.2\n ]\n };\n exports.text = function (prefix) {\n if (prefix === void 0) {\n prefix = '';\n }\n return _gen_mixin(_text_mixin, prefix);\n };\n function create(configs) {\n var result = {};\n for (var _i = 0, configs_1 = configs; _i < configs_1.length; _i++) {\n var config = configs_1[_i];\n var _a = config.split(':'), kind = _a[0], prefix = _a[1];\n var mixin = void 0;\n switch (kind) {\n case 'line':\n mixin = exports.line;\n break;\n case 'fill':\n mixin = exports.fill;\n break;\n case 'text':\n mixin = exports.text;\n break;\n default:\n throw new Error('Unknown property mixin kind \\'' + kind + '\\'');\n }\n object_1.extend(result, mixin(prefix));\n }\n return result;\n }\n exports.create = create; \n}","/*core/selection_manager*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var has_props_1 = require(8 /* ./has_props */);\n var selection_1 = require(181 /* models/selections/selection */);\n var glyph_renderer_1 = require(169 /* models/renderers/glyph_renderer */);\n var graph_renderer_1 = require(170 /* models/renderers/graph_renderer */);\n var p = require(15 /* ./properties */);\n var SelectionManager = function (_super) {\n tslib_1.__extends(SelectionManager, _super);\n function SelectionManager() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n SelectionManager.initClass = function () {\n this.prototype.type = 'SelectionManager';\n this.internal({ source: [p.Any] });\n };\n SelectionManager.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n this.inspectors = {};\n };\n SelectionManager.prototype.select = function (renderer_views, geometry, final, append) {\n if (append === void 0) {\n append = false;\n }\n // divide renderers into glyph_renderers or graph_renderers\n var glyph_renderer_views = [];\n var graph_renderer_views = [];\n for (var _i = 0, renderer_views_1 = renderer_views; _i < renderer_views_1.length; _i++) {\n var r = renderer_views_1[_i];\n if (r instanceof glyph_renderer_1.GlyphRendererView)\n glyph_renderer_views.push(r);\n else if (r instanceof graph_renderer_1.GraphRendererView)\n graph_renderer_views.push(r);\n }\n var did_hit = false;\n // graph renderer case\n for (var _a = 0, graph_renderer_views_1 = graph_renderer_views; _a < graph_renderer_views_1.length; _a++) {\n var r = graph_renderer_views_1[_a];\n var hit_test_result = r.model.selection_policy.hit_test(geometry, r);\n did_hit = did_hit || r.model.selection_policy.do_selection(hit_test_result, r.model, final, append);\n }\n // glyph renderers\n if (glyph_renderer_views.length > 0) {\n var hit_test_result = this.source.selection_policy.hit_test(geometry, glyph_renderer_views);\n did_hit = did_hit || this.source.selection_policy.do_selection(hit_test_result, this.source, final, append);\n }\n return did_hit;\n };\n SelectionManager.prototype.inspect = function (renderer_view, geometry) {\n var did_hit = false;\n if (renderer_view instanceof glyph_renderer_1.GlyphRendererView) {\n var hit_test_result = renderer_view.hit_test(geometry);\n if (hit_test_result != null) {\n did_hit = !hit_test_result.is_empty();\n var inspection = this.get_or_create_inspector(renderer_view.model);\n inspection.update(hit_test_result, true, false);\n this.source.setv({ inspected: inspection }, { silent: true });\n this.source.inspect.emit([\n renderer_view,\n { geometry: geometry }\n ]);\n }\n } else if (renderer_view instanceof graph_renderer_1.GraphRendererView) {\n var hit_test_result = renderer_view.model.inspection_policy.hit_test(geometry, renderer_view);\n did_hit = did_hit || renderer_view.model.inspection_policy.do_inspection(hit_test_result, geometry, renderer_view, false, false);\n }\n return did_hit;\n };\n SelectionManager.prototype.clear = function (rview) {\n this.source.selected.clear();\n if (rview != null)\n this.get_or_create_inspector(rview.model).clear();\n };\n SelectionManager.prototype.get_or_create_inspector = function (rmodel) {\n if (this.inspectors[rmodel.id] == null)\n this.inspectors[rmodel.id] = new selection_1.Selection();\n return this.inspectors[rmodel.id];\n };\n return SelectionManager;\n }(has_props_1.HasProps);\n exports.SelectionManager = SelectionManager;\n SelectionManager.initClass(); \n}","/*core/settings*/\nfunction _(require, module, exports) {\n var Settings = function () {\n function Settings() {\n this._dev = false;\n }\n Object.defineProperty(Settings.prototype, 'dev', {\n get: function () {\n return this._dev;\n },\n set: function (dev) {\n this._dev = dev;\n },\n enumerable: true,\n configurable: true\n });\n return Settings;\n }();\n exports.Settings = Settings;\n exports.settings = new Settings(); \n}","/*core/signaling*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var callback_1 = require(25 /* ./util/callback */);\n var array_1 = require(21 /* ./util/array */);\n var Signal = function () {\n function Signal(sender, name) {\n this.sender = sender;\n this.name = name;\n }\n Signal.prototype.connect = function (slot, context) {\n if (context === void 0) {\n context = null;\n }\n if (!receiversForSender.has(this.sender)) {\n receiversForSender.set(this.sender, []);\n }\n var receivers = receiversForSender.get(this.sender);\n if (findConnection(receivers, this, slot, context) != null) {\n return false;\n }\n var receiver = context || slot;\n if (!sendersForReceiver.has(receiver)) {\n sendersForReceiver.set(receiver, []);\n }\n var senders = sendersForReceiver.get(receiver);\n var connection = {\n signal: this,\n slot: slot,\n context: context\n };\n receivers.push(connection);\n senders.push(connection);\n return true;\n };\n Signal.prototype.disconnect = function (slot, context) {\n if (context === void 0) {\n context = null;\n }\n var receivers = receiversForSender.get(this.sender);\n if (receivers == null || receivers.length === 0) {\n return false;\n }\n var connection = findConnection(receivers, this, slot, context);\n if (connection == null) {\n return false;\n }\n var receiver = context || slot;\n var senders = sendersForReceiver.get(receiver);\n connection.signal = null;\n scheduleCleanup(receivers);\n scheduleCleanup(senders);\n return true;\n };\n Signal.prototype.emit = function (args) {\n var receivers = receiversForSender.get(this.sender) || [];\n for (var _i = 0, receivers_1 = receivers; _i < receivers_1.length; _i++) {\n var _a = receivers_1[_i], signal = _a.signal, slot = _a.slot, context = _a.context;\n if (signal === this) {\n slot.call(context, args, this.sender);\n }\n }\n };\n return Signal;\n }();\n exports.Signal = Signal;\n var Signal0 = function (_super) {\n tslib_1.__extends(Signal0, _super);\n function Signal0() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n Signal0.prototype.emit = function () {\n _super.prototype.emit.call(this, undefined);\n };\n return Signal0;\n }(Signal);\n exports.Signal0 = Signal0;\n (function (Signal) {\n function disconnectBetween(sender, receiver) {\n var receivers = receiversForSender.get(sender);\n if (receivers == null || receivers.length === 0)\n return;\n var senders = sendersForReceiver.get(receiver);\n if (senders == null || senders.length === 0)\n return;\n for (var _i = 0, senders_1 = senders; _i < senders_1.length; _i++) {\n var connection = senders_1[_i];\n if (connection.signal == null)\n return;\n if (connection.signal.sender === sender)\n connection.signal = null;\n }\n scheduleCleanup(receivers);\n scheduleCleanup(senders);\n }\n Signal.disconnectBetween = disconnectBetween;\n function disconnectSender(sender) {\n var receivers = receiversForSender.get(sender);\n if (receivers == null || receivers.length === 0)\n return;\n for (var _i = 0, receivers_2 = receivers; _i < receivers_2.length; _i++) {\n var connection = receivers_2[_i];\n if (connection.signal == null)\n return;\n var receiver = connection.context || connection.slot;\n connection.signal = null;\n scheduleCleanup(sendersForReceiver.get(receiver));\n }\n scheduleCleanup(receivers);\n }\n Signal.disconnectSender = disconnectSender;\n function disconnectReceiver(receiver) {\n var senders = sendersForReceiver.get(receiver);\n if (senders == null || senders.length === 0)\n return;\n for (var _i = 0, senders_2 = senders; _i < senders_2.length; _i++) {\n var connection = senders_2[_i];\n if (connection.signal == null)\n return;\n var sender = connection.signal.sender;\n connection.signal = null;\n scheduleCleanup(receiversForSender.get(sender));\n }\n scheduleCleanup(senders);\n }\n Signal.disconnectReceiver = disconnectReceiver;\n function disconnectAll(obj) {\n var receivers = receiversForSender.get(obj);\n if (receivers != null && receivers.length !== 0) {\n for (var _i = 0, receivers_3 = receivers; _i < receivers_3.length; _i++) {\n var connection = receivers_3[_i];\n connection.signal = null;\n }\n scheduleCleanup(receivers);\n }\n var senders = sendersForReceiver.get(obj);\n if (senders != null && senders.length !== 0) {\n for (var _a = 0, senders_3 = senders; _a < senders_3.length; _a++) {\n var connection = senders_3[_a];\n connection.signal = null;\n }\n scheduleCleanup(senders);\n }\n }\n Signal.disconnectAll = disconnectAll;\n }(Signal = exports.Signal || (exports.Signal = {})));\n exports.Signal = Signal;\n function Signalable(Base) {\n // XXX: `class Foo extends Signalable(Object)` doesn't work (compiles, but fails at runtime), so\n // we have to do this to allow signalable classes without an explict base class.\n if (Base != null) {\n return function (_super) {\n tslib_1.__extends(class_1, _super);\n function class_1() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n class_1.prototype.connect = function (signal, slot) {\n return signal.connect(slot, this);\n };\n return class_1;\n }(Base);\n } else {\n return function () {\n function class_2() {\n }\n class_2.prototype.connect = function (signal, slot) {\n return signal.connect(slot, this);\n };\n return class_2;\n }();\n }\n }\n exports.Signalable = Signalable;\n var _Signalable;\n (function (_Signalable) {\n function connect(signal, slot) {\n return signal.connect(slot, this);\n }\n _Signalable.connect = connect;\n }(_Signalable = exports._Signalable || (exports._Signalable = {})));\n var receiversForSender = new WeakMap();\n var sendersForReceiver = new WeakMap();\n function findConnection(conns, signal, slot, context) {\n return array_1.find(conns, function (conn) {\n return conn.signal === signal && conn.slot === slot && conn.context === context;\n });\n }\n var dirtySet = new Set();\n function scheduleCleanup(connections) {\n if (dirtySet.size === 0) {\n callback_1.defer(cleanupDirtySet);\n }\n dirtySet.add(connections);\n }\n function cleanupDirtySet() {\n dirtySet.forEach(function (connections) {\n array_1.removeBy(connections, function (connection) {\n return connection.signal == null;\n });\n });\n dirtySet.clear();\n } \n}","/*core/ui_events*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var Hammer = require(336 /* hammerjs */);\n var signaling_1 = require(19 /* ./signaling */);\n var logging_1 = require(14 /* ./logging */);\n var dom_1 = require(5 /* ./dom */);\n var wheel_1 = require(45 /* ./util/wheel */);\n var array_1 = require(21 /* ./util/array */);\n var object_1 = require(32 /* ./util/object */);\n var types_1 = require(44 /* ./util/types */);\n var bokeh_events_1 = require(3 /* ./bokeh_events */);\n exports.is_mobile = 'ontouchstart' in window || navigator.maxTouchPoints > 0;\n var UIEvents = function () {\n function UIEvents(plot_view, toolbar, hit_area, plot) {\n this.plot_view = plot_view;\n this.toolbar = toolbar;\n this.hit_area = hit_area;\n this.plot = plot;\n this.pan_start = new signaling_1.Signal(this, 'pan:start');\n this.pan = new signaling_1.Signal(this, 'pan');\n this.pan_end = new signaling_1.Signal(this, 'pan:end');\n this.pinch_start = new signaling_1.Signal(this, 'pinch:start');\n this.pinch = new signaling_1.Signal(this, 'pinch');\n this.pinch_end = new signaling_1.Signal(this, 'pinch:end');\n this.rotate_start = new signaling_1.Signal(this, 'rotate:start');\n this.rotate = new signaling_1.Signal(this, 'rotate');\n this.rotate_end = new signaling_1.Signal(this, 'rotate:end');\n this.tap = new signaling_1.Signal(this, 'tap');\n this.doubletap = new signaling_1.Signal(this, 'doubletap');\n this.press = new signaling_1.Signal(this, 'press');\n this.move_enter = new signaling_1.Signal(this, 'move:enter');\n this.move = new signaling_1.Signal(this, 'move');\n this.move_exit = new signaling_1.Signal(this, 'move:exit');\n this.scroll = new signaling_1.Signal(this, 'scroll');\n this.keydown = new signaling_1.Signal(this, 'keydown');\n this.keyup = new signaling_1.Signal(this, 'keyup');\n this.hammer = new Hammer(this.hit_area);\n this._configure_hammerjs();\n }\n UIEvents.prototype._configure_hammerjs = function () {\n var _this = this;\n // This is to be able to distinguish double taps from single taps\n this.hammer.get('doubletap').recognizeWith('tap');\n this.hammer.get('tap').requireFailure('doubletap');\n this.hammer.get('doubletap').dropRequireFailure('tap');\n this.hammer.on('doubletap', function (e) {\n return _this._doubletap(e);\n });\n this.hammer.on('tap', function (e) {\n return _this._tap(e);\n });\n this.hammer.on('press', function (e) {\n return _this._press(e);\n });\n this.hammer.get('pan').set({ direction: Hammer.DIRECTION_ALL });\n this.hammer.on('panstart', function (e) {\n return _this._pan_start(e);\n });\n this.hammer.on('pan', function (e) {\n return _this._pan(e);\n });\n this.hammer.on('panend', function (e) {\n return _this._pan_end(e);\n });\n this.hammer.get('pinch').set({ enable: true });\n this.hammer.on('pinchstart', function (e) {\n return _this._pinch_start(e);\n });\n this.hammer.on('pinch', function (e) {\n return _this._pinch(e);\n });\n this.hammer.on('pinchend', function (e) {\n return _this._pinch_end(e);\n });\n this.hammer.get('rotate').set({ enable: true });\n this.hammer.on('rotatestart', function (e) {\n return _this._rotate_start(e);\n });\n this.hammer.on('rotate', function (e) {\n return _this._rotate(e);\n });\n this.hammer.on('rotateend', function (e) {\n return _this._rotate_end(e);\n });\n this.hit_area.addEventListener('mousemove', function (e) {\n return _this._mouse_move(e);\n });\n this.hit_area.addEventListener('mouseenter', function (e) {\n return _this._mouse_enter(e);\n });\n this.hit_area.addEventListener('mouseleave', function (e) {\n return _this._mouse_exit(e);\n });\n this.hit_area.addEventListener('wheel', function (e) {\n return _this._mouse_wheel(e);\n });\n document.addEventListener('keydown', function (e) {\n return _this._key_down(e);\n });\n document.addEventListener('keyup', function (e) {\n return _this._key_up(e);\n });\n };\n UIEvents.prototype.register_tool = function (tool_view) {\n var _this = this;\n var et = tool_view.model.event_type;\n if (et != null) {\n if (types_1.isString(et))\n this._register_tool(tool_view, et);\n else {\n // Multi-tools should only registered shared events once\n et.forEach(function (e, index) {\n return _this._register_tool(tool_view, e, index < 1);\n });\n }\n }\n };\n UIEvents.prototype._register_tool = function (tool_view, et, shared) {\n if (shared === void 0) {\n shared = true;\n }\n var v = tool_view;\n var id = v.model.id;\n var conditionally = function (fn) {\n return function (arg) {\n if (arg.id == id)\n fn(arg.e);\n };\n };\n var unconditionally = function (fn) {\n return function (arg) {\n fn(arg.e);\n };\n };\n switch (et) {\n case 'pan': {\n if (v._pan_start != null)\n v.connect(this.pan_start, conditionally(v._pan_start.bind(v)));\n if (v._pan != null)\n v.connect(this.pan, conditionally(v._pan.bind(v)));\n if (v._pan_end != null)\n v.connect(this.pan_end, conditionally(v._pan_end.bind(v)));\n break;\n }\n case 'pinch': {\n if (v._pinch_start != null)\n v.connect(this.pinch_start, conditionally(v._pinch_start.bind(v)));\n if (v._pinch != null)\n v.connect(this.pinch, conditionally(v._pinch.bind(v)));\n if (v._pinch_end != null)\n v.connect(this.pinch_end, conditionally(v._pinch_end.bind(v)));\n break;\n }\n case 'rotate': {\n if (v._rotate_start != null)\n v.connect(this.rotate_start, conditionally(v._rotate_start.bind(v)));\n if (v._rotate != null)\n v.connect(this.rotate, conditionally(v._rotate.bind(v)));\n if (v._rotate_end != null)\n v.connect(this.rotate_end, conditionally(v._rotate_end.bind(v)));\n break;\n }\n case 'move': {\n if (v._move_enter != null)\n v.connect(this.move_enter, conditionally(v._move_enter.bind(v)));\n if (v._move != null)\n v.connect(this.move, conditionally(v._move.bind(v)));\n if (v._move_exit != null)\n v.connect(this.move_exit, conditionally(v._move_exit.bind(v)));\n break;\n }\n case 'tap': {\n if (v._tap != null)\n v.connect(this.tap, conditionally(v._tap.bind(v)));\n break;\n }\n case 'press': {\n if (v._press != null)\n v.connect(this.press, conditionally(v._press.bind(v)));\n break;\n }\n case 'scroll': {\n if (v._scroll != null)\n v.connect(this.scroll, conditionally(v._scroll.bind(v)));\n break;\n }\n default:\n throw new Error('unsupported event_type: ' + et);\n }\n // Skip shared events if registering multi-tool\n if (!shared)\n return;\n if (v._doubletap != null)\n v.connect(this.doubletap, unconditionally(v._doubletap.bind(v)));\n if (v._keydown != null)\n v.connect(this.keydown, unconditionally(v._keydown.bind(v)));\n if (v._keyup != null)\n v.connect(this.keyup, unconditionally(v._keyup.bind(v)));\n // Dual touch hack part 1/2\n // This is a hack for laptops with touch screen who may be pinching or scrolling\n // in order to use the wheel zoom tool. If it's a touch screen the WheelZoomTool event\n // will be linked to pinch. But we also want to trigger in the case of a scroll.\n if (exports.is_mobile && v._scroll != null && et == 'pinch') {\n logging_1.logger.debug('Registering scroll on touch screen');\n v.connect(this.scroll, conditionally(v._scroll.bind(v)));\n }\n };\n UIEvents.prototype._hit_test_renderers = function (sx, sy) {\n var views = this.plot_view.get_renderer_views();\n for (var _i = 0, _a = array_1.reversed(views); _i < _a.length; _i++) {\n var view = _a[_i];\n var level = view.model.level;\n if ((level == 'annotation' || level == 'overlay') && view.bbox != null) {\n if (view.bbox().contains(sx, sy))\n return view;\n }\n }\n return null;\n };\n UIEvents.prototype._hit_test_frame = function (sx, sy) {\n return this.plot_view.frame.bbox.contains(sx, sy);\n };\n UIEvents.prototype._trigger = function (signal, e, srcEvent) {\n var _this = this;\n var gestures = this.toolbar.gestures;\n var event_type = signal.name;\n var base_type = event_type.split(':')[0];\n var view = this._hit_test_renderers(e.sx, e.sy);\n switch (base_type) {\n case 'move': {\n var active_gesture = gestures[base_type].active;\n if (active_gesture != null)\n this.trigger(signal, e, active_gesture.id);\n var active_inspectors = this.toolbar.inspectors.filter(function (t) {\n return t.active;\n });\n var cursor = 'default';\n // the event happened on a renderer\n if (view != null) {\n cursor = view.cursor || cursor;\n if (!object_1.isEmpty(active_inspectors)) {\n // override event_type to cause inspectors to clear overlays\n signal = this.move_exit;\n event_type = signal.name;\n } // the event happened on the plot frame but off a renderer\n } else if (this._hit_test_frame(e.sx, e.sy)) {\n if (!object_1.isEmpty(active_inspectors)) {\n cursor = 'crosshair';\n }\n }\n this.plot_view.set_cursor(cursor);\n active_inspectors.map(function (inspector) {\n return _this.trigger(signal, e, inspector.id);\n });\n break;\n }\n case 'tap': {\n var target = srcEvent.target;\n if (target != null && target != this.hit_area)\n return;\n // don't trigger bokeh events\n if (view != null && view.on_hit != null)\n view.on_hit(e.sx, e.sy);\n var active_gesture = gestures[base_type].active;\n if (active_gesture != null)\n this.trigger(signal, e, active_gesture.id);\n break;\n }\n case 'scroll': {\n // Dual touch hack part 2/2\n // This is a hack for laptops with touch screen who may be pinching or scrolling\n // in order to use the wheel zoom tool. If it's a touch screen the WheelZoomTool event\n // will be linked to pinch. But we also want to trigger in the case of a scroll.\n var base = exports.is_mobile ? 'pinch' : 'scroll';\n var active_gesture = gestures[base].active;\n if (active_gesture != null) {\n srcEvent.preventDefault();\n srcEvent.stopPropagation();\n this.trigger(signal, e, active_gesture.id);\n }\n break;\n }\n default: {\n var active_gesture = gestures[base_type].active;\n if (active_gesture != null)\n this.trigger(signal, e, active_gesture.id);\n }\n }\n this._trigger_bokeh_event(e);\n };\n UIEvents.prototype.trigger = function (signal, e, id) {\n if (id === void 0) {\n id = null;\n }\n signal.emit({\n id: id,\n e: e\n });\n };\n UIEvents.prototype._trigger_bokeh_event = function (e) {\n var event_cls = bokeh_events_1.BokehEvent.event_class(e);\n if (event_cls != null)\n this.plot.trigger_event(event_cls.from_event(e));\n else\n logging_1.logger.debug('Unhandled event of type ' + e.type);\n };\n UIEvents.prototype._get_sxy = function (event) {\n // XXX: jsdom doesn't support TouchEvent constructor\n function is_touch(event) {\n return typeof TouchEvent !== 'undefined' && event instanceof TouchEvent;\n }\n var _a = is_touch(event) ? (event.touches.length != 0 ? event.touches : event.changedTouches)[0] : event, pageX = _a.pageX, pageY = _a.pageY;\n var _b = dom_1.offset(this.hit_area), left = _b.left, top = _b.top;\n return {\n sx: pageX - left,\n sy: pageY - top\n };\n };\n UIEvents.prototype._gesture_event = function (e) {\n return tslib_1.__assign({ type: e.type }, this._get_sxy(e.srcEvent), {\n deltaX: e.deltaX,\n deltaY: e.deltaY,\n scale: e.scale,\n shiftKey: e.srcEvent.shiftKey\n });\n };\n UIEvents.prototype._tap_event = function (e) {\n return tslib_1.__assign({ type: e.type }, this._get_sxy(e.srcEvent), { shiftKey: e.srcEvent.shiftKey });\n };\n UIEvents.prototype._move_event = function (e) {\n return tslib_1.__assign({ type: e.type }, this._get_sxy(e));\n };\n UIEvents.prototype._scroll_event = function (e) {\n return tslib_1.__assign({ type: e.type }, this._get_sxy(e), { delta: wheel_1.getDeltaY(e) });\n };\n UIEvents.prototype._key_event = function (e) {\n return {\n type: e.type,\n keyCode: e.keyCode\n };\n };\n UIEvents.prototype._pan_start = function (e) {\n var ev = this._gesture_event(e);\n // back out delta to get original center point\n ev.sx -= e.deltaX;\n ev.sy -= e.deltaY;\n this._trigger(this.pan_start, ev, e.srcEvent);\n };\n UIEvents.prototype._pan = function (e) {\n this._trigger(this.pan, this._gesture_event(e), e.srcEvent);\n };\n UIEvents.prototype._pan_end = function (e) {\n this._trigger(this.pan_end, this._gesture_event(e), e.srcEvent);\n };\n UIEvents.prototype._pinch_start = function (e) {\n this._trigger(this.pinch_start, this._gesture_event(e), e.srcEvent);\n };\n UIEvents.prototype._pinch = function (e) {\n this._trigger(this.pinch, this._gesture_event(e), e.srcEvent);\n };\n UIEvents.prototype._pinch_end = function (e) {\n this._trigger(this.pinch_end, this._gesture_event(e), e.srcEvent);\n };\n UIEvents.prototype._rotate_start = function (e) {\n this._trigger(this.rotate_start, this._gesture_event(e), e.srcEvent);\n };\n UIEvents.prototype._rotate = function (e) {\n this._trigger(this.rotate, this._gesture_event(e), e.srcEvent);\n };\n UIEvents.prototype._rotate_end = function (e) {\n this._trigger(this.rotate_end, this._gesture_event(e), e.srcEvent);\n };\n UIEvents.prototype._tap = function (e) {\n this._trigger(this.tap, this._tap_event(e), e.srcEvent);\n };\n UIEvents.prototype._doubletap = function (e) {\n // NOTE: doubletap event triggered unconditionally\n var ev = this._tap_event(e);\n this._trigger_bokeh_event(ev);\n this.trigger(this.doubletap, ev);\n };\n UIEvents.prototype._press = function (e) {\n this._trigger(this.press, this._tap_event(e), e.srcEvent);\n };\n UIEvents.prototype._mouse_enter = function (e) {\n this._trigger(this.move_enter, this._move_event(e), e);\n };\n UIEvents.prototype._mouse_move = function (e) {\n this._trigger(this.move, this._move_event(e), e);\n };\n UIEvents.prototype._mouse_exit = function (e) {\n this._trigger(this.move_exit, this._move_event(e), e);\n };\n UIEvents.prototype._mouse_wheel = function (e) {\n this._trigger(this.scroll, this._scroll_event(e), e);\n };\n UIEvents.prototype._key_down = function (e) {\n // NOTE: keyup event triggered unconditionally\n this.trigger(this.keydown, this._key_event(e));\n };\n UIEvents.prototype._key_up = function (e) {\n // NOTE: keyup event triggered unconditionally\n this.trigger(this.keyup, this._key_event(e));\n };\n return UIEvents;\n }();\n exports.UIEvents = UIEvents; \n}","/*core/util/array*/\nfunction _(require, module, exports) {\n var math_1 = require(31 /* ./math */);\n var assert_1 = require(23 /* ./assert */);\n var arrayable_1 = require(22 /* ./arrayable */);\n exports.min = arrayable_1.min;\n exports.minBy = arrayable_1.minBy;\n exports.max = arrayable_1.max;\n exports.maxBy = arrayable_1.maxBy;\n exports.sum = arrayable_1.sum;\n var slice = Array.prototype.slice;\n function head(array) {\n return array[0];\n }\n exports.head = head;\n function tail(array) {\n return array[array.length - 1];\n }\n exports.tail = tail;\n function last(array) {\n return array[array.length - 1];\n }\n exports.last = last;\n function copy(array) {\n return slice.call(array);\n }\n exports.copy = copy;\n function concat(arrays) {\n return (_a = []).concat.apply(_a, arrays);\n var _a;\n }\n exports.concat = concat;\n function includes(array, value) {\n return array.indexOf(value) !== -1;\n }\n exports.includes = includes;\n exports.contains = includes;\n function nth(array, index) {\n return array[index >= 0 ? index : array.length + index];\n }\n exports.nth = nth;\n function zip(As, Bs) {\n var n = Math.min(As.length, Bs.length);\n var ABs = new Array(n);\n for (var i = 0; i < n; i++) {\n ABs[i] = [\n As[i],\n Bs[i]\n ];\n }\n return ABs;\n }\n exports.zip = zip;\n function unzip(ABs) {\n var n = ABs.length;\n var As = new Array(n);\n var Bs = new Array(n);\n for (var i = 0; i < n; i++) {\n _a = ABs[i], As[i] = _a[0], Bs[i] = _a[1];\n }\n return [\n As,\n Bs\n ];\n var _a;\n }\n exports.unzip = unzip;\n function range(start, stop, step) {\n if (step === void 0) {\n step = 1;\n }\n assert_1.assert(step > 0, '\\'step\\' must be a positive number');\n if (stop == null) {\n stop = start;\n start = 0;\n }\n var max = Math.max, ceil = Math.ceil, abs = Math.abs;\n var delta = start <= stop ? step : -step;\n var length = max(ceil(abs(stop - start) / step), 0);\n var range = Array(length);\n for (var i = 0; i < length; i++, start += delta) {\n range[i] = start;\n }\n return range;\n }\n exports.range = range;\n function linspace(start, stop, num) {\n if (num === void 0) {\n num = 100;\n }\n var step = (stop - start) / (num - 1);\n var array = new Array(num);\n for (var i = 0; i < num; i++) {\n array[i] = start + step * i;\n }\n return array;\n }\n exports.linspace = linspace;\n function transpose(array) {\n var rows = array.length;\n var cols = array[0].length;\n var transposed = [];\n for (var j = 0; j < cols; j++) {\n transposed[j] = [];\n for (var i = 0; i < rows; i++) {\n transposed[j][i] = array[i][j];\n }\n }\n return transposed;\n }\n exports.transpose = transpose;\n function cumsum(array) {\n var result = [];\n array.reduce(function (a, b, i) {\n return result[i] = a + b;\n }, 0);\n return result;\n }\n exports.cumsum = cumsum;\n function argmin(array) {\n return arrayable_1.minBy(range(array.length), function (i) {\n return array[i];\n });\n }\n exports.argmin = argmin;\n function argmax(array) {\n return arrayable_1.maxBy(range(array.length), function (i) {\n return array[i];\n });\n }\n exports.argmax = argmax;\n function all(array, predicate) {\n for (var _i = 0, array_1 = array; _i < array_1.length; _i++) {\n var item = array_1[_i];\n if (!predicate(item))\n return false;\n }\n return true;\n }\n exports.all = all;\n function any(array, predicate) {\n for (var _i = 0, array_2 = array; _i < array_2.length; _i++) {\n var item = array_2[_i];\n if (predicate(item))\n return true;\n }\n return false;\n }\n exports.any = any;\n function findIndexFactory(dir) {\n return function (array, predicate) {\n var length = array.length;\n var index = dir > 0 ? 0 : length - 1;\n for (; index >= 0 && index < length; index += dir) {\n if (predicate(array[index]))\n return index;\n }\n return -1;\n };\n }\n exports.findIndex = findIndexFactory(1);\n exports.findLastIndex = findIndexFactory(-1);\n function find(array, predicate) {\n var index = exports.findIndex(array, predicate);\n return index == -1 ? undefined : array[index];\n }\n exports.find = find;\n function findLast(array, predicate) {\n var index = exports.findLastIndex(array, predicate);\n return index == -1 ? undefined : array[index];\n }\n exports.findLast = findLast;\n function sortedIndex(array, value) {\n var low = 0;\n var high = array.length;\n while (low < high) {\n var mid = Math.floor((low + high) / 2);\n if (array[mid] < value)\n low = mid + 1;\n else\n high = mid;\n }\n return low;\n }\n exports.sortedIndex = sortedIndex;\n function sortBy(array, key) {\n var tmp = array.map(function (value, index) {\n return {\n value: value,\n index: index,\n key: key(value)\n };\n });\n tmp.sort(function (left, right) {\n var a = left.key;\n var b = right.key;\n if (a !== b) {\n if (a > b || a === undefined)\n return 1;\n if (a < b || b === undefined)\n return -1;\n }\n return left.index - right.index;\n });\n return tmp.map(function (item) {\n return item.value;\n });\n }\n exports.sortBy = sortBy;\n function uniq(array) {\n var result = [];\n for (var _i = 0, array_3 = array; _i < array_3.length; _i++) {\n var value = array_3[_i];\n if (!includes(result, value)) {\n result.push(value);\n }\n }\n return result;\n }\n exports.uniq = uniq;\n function uniqBy(array, key) {\n var result = [];\n var seen = [];\n for (var _i = 0, array_4 = array; _i < array_4.length; _i++) {\n var value = array_4[_i];\n var computed = key(value);\n if (!includes(seen, computed)) {\n seen.push(computed);\n result.push(value);\n }\n }\n return result;\n }\n exports.uniqBy = uniqBy;\n function union() {\n var arrays = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n arrays[_i] = arguments[_i];\n }\n return uniq(concat(arrays));\n }\n exports.union = union;\n function intersection(array) {\n var arrays = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n arrays[_i - 1] = arguments[_i];\n }\n var result = [];\n top:\n for (var _a = 0, array_5 = array; _a < array_5.length; _a++) {\n var item = array_5[_a];\n if (includes(result, item))\n continue;\n for (var _b = 0, arrays_1 = arrays; _b < arrays_1.length; _b++) {\n var other = arrays_1[_b];\n if (!includes(other, item))\n continue top;\n }\n result.push(item);\n }\n return result;\n }\n exports.intersection = intersection;\n function difference(array) {\n var arrays = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n arrays[_i - 1] = arguments[_i];\n }\n var rest = concat(arrays);\n return array.filter(function (value) {\n return !includes(rest, value);\n });\n }\n exports.difference = difference;\n function removeBy(array, key) {\n for (var i = 0; i < array.length;) {\n if (key(array[i]))\n array.splice(i, 1);\n else\n i++;\n }\n }\n exports.removeBy = removeBy;\n // Shuffle a collection, using the modern version of the\n // [Fisher-Yates shuffle](http://en.wikipedia.org/wiki/Fisher–Yates_shuffle).\n function shuffle(array) {\n var length = array.length;\n var shuffled = new Array(length);\n for (var i = 0; i < length; i++) {\n var rand = math_1.randomIn(0, i);\n if (rand !== i)\n shuffled[i] = shuffled[rand];\n shuffled[rand] = array[i];\n }\n return shuffled;\n }\n exports.shuffle = shuffle;\n function pairwise(array, fn) {\n var n = array.length;\n var result = new Array(n - 1);\n for (var i = 0; i < n - 1; i++) {\n result[i] = fn(array[i], array[i + 1]);\n }\n return result;\n }\n exports.pairwise = pairwise;\n function reversed(array) {\n var n = array.length;\n var result = new Array(n);\n for (var i = 0; i < n; i++) {\n result[n - i - 1] = array[i];\n }\n return result;\n }\n exports.reversed = reversed;\n function repeat(value, n) {\n var result = new Array(n);\n for (var i = 0; i < n; i++) {\n result[i] = value;\n }\n return result;\n }\n exports.repeat = repeat; \n}","/*core/util/arrayable*/\nfunction _(require, module, exports) {\n function splice(array, start, k) {\n var items = [];\n for (var _i = 3; _i < arguments.length; _i++) {\n items[_i - 3] = arguments[_i];\n }\n var len = array.length;\n if (start < 0)\n start += len;\n if (start < 0)\n start = 0;\n else if (start > len)\n start = len;\n if (k == null || k > len - start)\n k = len - start;\n else if (k < 0)\n k = 0;\n var n = len - k + items.length;\n var result = new array.constructor(n);\n var i = 0;\n for (; i < start; i++) {\n result[i] = array[i];\n }\n for (var _a = 0, items_1 = items; _a < items_1.length; _a++) {\n var item = items_1[_a];\n result[i++] = item;\n }\n for (var j = start + k; j < len; j++) {\n result[i++] = array[j];\n }\n return result;\n }\n exports.splice = splice;\n function insert(array, item, i) {\n return splice(array, i, 0, item);\n }\n exports.insert = insert;\n function append(array, item) {\n return splice(array, array.length, 0, item);\n }\n exports.append = append;\n function prepend(array, item) {\n return splice(array, 0, 0, item);\n }\n exports.prepend = prepend;\n function indexOf(array, item) {\n for (var i = 0, n = array.length; i < n; i++) {\n if (array[i] === item)\n return i;\n }\n return -1;\n }\n exports.indexOf = indexOf;\n function map(array, fn) {\n var n = array.length;\n var result = new array.constructor(n);\n for (var i = 0; i < n; i++) {\n result[i] = fn(array[i], i, array);\n }\n return result;\n }\n exports.map = map;\n function min(array) {\n var value;\n var result = Infinity;\n for (var i = 0, length_1 = array.length; i < length_1; i++) {\n value = array[i];\n if (value < result) {\n result = value;\n }\n }\n return result;\n }\n exports.min = min;\n function minBy(array, key) {\n if (array.length == 0)\n throw new Error('minBy() called with an empty array');\n var result = array[0];\n var resultComputed = key(result);\n for (var i = 1, length_2 = array.length; i < length_2; i++) {\n var value = array[i];\n var computed = key(value);\n if (computed < resultComputed) {\n result = value;\n resultComputed = computed;\n }\n }\n return result;\n }\n exports.minBy = minBy;\n function max(array) {\n var value;\n var result = -Infinity;\n for (var i = 0, length_3 = array.length; i < length_3; i++) {\n value = array[i];\n if (value > result) {\n result = value;\n }\n }\n return result;\n }\n exports.max = max;\n function maxBy(array, key) {\n if (array.length == 0)\n throw new Error('maxBy() called with an empty array');\n var result = array[0];\n var resultComputed = key(result);\n for (var i = 1, length_4 = array.length; i < length_4; i++) {\n var value = array[i];\n var computed = key(value);\n if (computed > resultComputed) {\n result = value;\n resultComputed = computed;\n }\n }\n return result;\n }\n exports.maxBy = maxBy;\n function sum(array) {\n var result = 0;\n for (var i = 0, n = array.length; i < n; i++) {\n result += array[i];\n }\n return result;\n }\n exports.sum = sum; \n}","/*core/util/assert*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var AssertionError = function (_super) {\n tslib_1.__extends(AssertionError, _super);\n function AssertionError() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return AssertionError;\n }(Error);\n exports.AssertionError = AssertionError;\n function assert(condition, message) {\n if (condition === true || condition !== false && condition())\n return;\n throw new AssertionError(message || 'Assertion failed');\n }\n exports.assert = assert; \n}","/*core/util/bbox*/\nfunction _(require, module, exports) {\n var min = Math.min, max = Math.max;\n function empty() {\n return {\n minX: Infinity,\n minY: Infinity,\n maxX: -Infinity,\n maxY: -Infinity\n };\n }\n exports.empty = empty;\n function positive_x() {\n return {\n minX: Number.MIN_VALUE,\n minY: -Infinity,\n maxX: Infinity,\n maxY: Infinity\n };\n }\n exports.positive_x = positive_x;\n function positive_y() {\n return {\n minX: -Infinity,\n minY: Number.MIN_VALUE,\n maxX: Infinity,\n maxY: Infinity\n };\n }\n exports.positive_y = positive_y;\n function union(a, b) {\n return {\n minX: min(a.minX, b.minX),\n maxX: max(a.maxX, b.maxX),\n minY: min(a.minY, b.minY),\n maxY: max(a.maxY, b.maxY)\n };\n }\n exports.union = union;\n var BBox = function () {\n function BBox(box) {\n if ('x0' in box && 'y0' in box && 'x1' in box && 'y1' in box) {\n var _a = box, x0 = _a.x0, y0 = _a.y0, x1 = _a.x1, y1 = _a.y1;\n if (!(x0 <= x1 && y0 <= y1))\n throw new Error('invalid bbox {x0: ' + x0 + ', y0: ' + y0 + ', x1: ' + x1 + ', y1: ' + y1 + '}');\n this.x0 = x0;\n this.y0 = y0;\n this.x1 = x1;\n this.y1 = y1;\n } else {\n var _b = box, x = _b.x, y = _b.y, width = _b.width, height = _b.height;\n if (!(width >= 0 && height >= 0))\n throw new Error('invalid bbox {x: ' + x + ', y: ' + y + ', width: ' + width + ', height: ' + height + '}');\n this.x0 = x;\n this.y0 = y;\n this.x1 = x + width;\n this.y1 = y + height;\n }\n }\n Object.defineProperty(BBox.prototype, 'minX', {\n get: function () {\n return this.x0;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(BBox.prototype, 'minY', {\n get: function () {\n return this.y0;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(BBox.prototype, 'maxX', {\n get: function () {\n return this.x1;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(BBox.prototype, 'maxY', {\n get: function () {\n return this.y1;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(BBox.prototype, 'left', {\n get: function () {\n return this.x0;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(BBox.prototype, 'top', {\n get: function () {\n return this.y0;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(BBox.prototype, 'right', {\n get: function () {\n return this.x1;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(BBox.prototype, 'bottom', {\n get: function () {\n return this.y1;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(BBox.prototype, 'p0', {\n get: function () {\n return [\n this.x0,\n this.y0\n ];\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(BBox.prototype, 'p1', {\n get: function () {\n return [\n this.x1,\n this.y1\n ];\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(BBox.prototype, 'x', {\n get: function () {\n return this.x0;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(BBox.prototype, 'y', {\n get: function () {\n return this.y0;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(BBox.prototype, 'width', {\n get: function () {\n return this.x1 - this.x0;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(BBox.prototype, 'height', {\n get: function () {\n return this.y1 - this.y0;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(BBox.prototype, 'rect', {\n get: function () {\n return {\n x: this.x,\n y: this.y,\n width: this.width,\n height: this.height\n };\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(BBox.prototype, 'h_range', {\n get: function () {\n return {\n start: this.x0,\n end: this.x1\n };\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(BBox.prototype, 'v_range', {\n get: function () {\n return {\n start: this.y0,\n end: this.y1\n };\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(BBox.prototype, 'ranges', {\n get: function () {\n return [\n this.h_range,\n this.v_range\n ];\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(BBox.prototype, 'aspect', {\n get: function () {\n return this.width / this.height;\n },\n enumerable: true,\n configurable: true\n });\n BBox.prototype.contains = function (x, y) {\n return x >= this.x0 && x <= this.x1 && y >= this.y0 && y <= this.y1;\n };\n BBox.prototype.clip = function (x, y) {\n if (x < this.x0)\n x = this.x0;\n else if (x > this.x1)\n x = this.x1;\n if (y < this.y0)\n y = this.y0;\n else if (y > this.y1)\n y = this.y1;\n return [\n x,\n y\n ];\n };\n BBox.prototype.union = function (that) {\n return new BBox({\n x0: min(this.x0, that.x0),\n y0: min(this.y0, that.y0),\n x1: max(this.x1, that.x1),\n y1: max(this.y1, that.y1)\n });\n };\n return BBox;\n }();\n exports.BBox = BBox; \n}","/*core/util/callback*/\nfunction _(require, module, exports) {\n function delay(func, wait) {\n return setTimeout(func, wait);\n }\n exports.delay = delay;\n var _defer = typeof requestAnimationFrame === 'function' ? requestAnimationFrame : setImmediate;\n function defer(func) {\n return _defer(func);\n }\n exports.defer = defer;\n function throttle(func, wait, options) {\n if (options === void 0) {\n options = {};\n }\n var context, args, result;\n var timeout = null;\n var previous = 0;\n var later = function () {\n previous = options.leading === false ? 0 : Date.now();\n timeout = null;\n result = func.apply(context, args);\n if (!timeout)\n context = args = null;\n };\n return function () {\n var now = Date.now();\n if (!previous && options.leading === false)\n previous = now;\n var remaining = wait - (now - previous);\n context = this;\n args = arguments;\n if (remaining <= 0 || remaining > wait) {\n if (timeout) {\n clearTimeout(timeout);\n timeout = null;\n }\n previous = now;\n result = func.apply(context, args);\n if (!timeout)\n context = args = null;\n } else if (!timeout && options.trailing !== false) {\n timeout = setTimeout(later, remaining);\n }\n return result;\n };\n }\n exports.throttle = throttle;\n function once(func) {\n var done = false;\n var memo;\n return function () {\n if (!done) {\n done = true;\n memo = func();\n }\n return memo;\n };\n }\n exports.once = once; \n}","/*core/util/canvas*/\nfunction _(require, module, exports) {\n function fixup_line_dash(ctx) {\n if (!ctx.setLineDash) {\n ctx.setLineDash = function (dash) {\n ctx.mozDash = dash;\n ctx.webkitLineDash = dash;\n };\n }\n if (!ctx.getLineDash) {\n ctx.getLineDash = function () {\n return ctx.mozDash;\n };\n }\n }\n function fixup_line_dash_offset(ctx) {\n ctx.setLineDashOffset = function (offset) {\n ctx.lineDashOffset = offset;\n ctx.mozDashOffset = offset;\n ctx.webkitLineDashOffset = offset;\n };\n ctx.getLineDashOffset = function () {\n return ctx.mozDashOffset;\n };\n }\n function fixup_image_smoothing(ctx) {\n ctx.setImageSmoothingEnabled = function (value) {\n ctx.imageSmoothingEnabled = value;\n ctx.mozImageSmoothingEnabled = value;\n ctx.oImageSmoothingEnabled = value;\n ctx.webkitImageSmoothingEnabled = value;\n ctx.msImageSmoothingEnabled = value;\n };\n ctx.getImageSmoothingEnabled = function () {\n var val = ctx.imageSmoothingEnabled;\n return val != null ? val : true;\n };\n }\n function fixup_measure_text(ctx) {\n if (ctx.measureText && ctx.html5MeasureText == null) {\n ctx.html5MeasureText = ctx.measureText;\n ctx.measureText = function (text) {\n var textMetrics = ctx.html5MeasureText(text);\n // fake it til you make it\n textMetrics.ascent = ctx.html5MeasureText('m').width * 1.6;\n return textMetrics;\n };\n }\n }\n function fixup_ellipse(ctx) {\n // implementing the ctx.ellipse function with bezier curves\n // we don't implement the startAngle, endAngle and anticlockwise arguments.\n function ellipse_bezier(x, y, radiusX, radiusY, rotation, _startAngle, _endAngle, anticlockwise) {\n if (anticlockwise === void 0) {\n anticlockwise = false;\n }\n var c = 0.551784;\n // see http://www.tinaja.com/glib/ellipse4.pdf\n ctx.translate(x, y);\n ctx.rotate(rotation);\n var rx = radiusX;\n var ry = radiusY;\n if (anticlockwise) {\n rx = -radiusX;\n ry = -radiusY;\n }\n ctx.moveTo(-rx, 0);\n // start point of first curve\n ctx.bezierCurveTo(-rx, ry * c, -rx * c, ry, 0, ry);\n ctx.bezierCurveTo(rx * c, ry, rx, ry * c, rx, 0);\n ctx.bezierCurveTo(rx, -ry * c, rx * c, -ry, 0, -ry);\n ctx.bezierCurveTo(-rx * c, -ry, -rx, -ry * c, -rx, 0);\n ctx.rotate(-rotation);\n ctx.translate(-x, -y);\n }\n if (!ctx.ellipse)\n ctx.ellipse = ellipse_bezier;\n }\n function fixup_ctx(ctx) {\n fixup_line_dash(ctx);\n fixup_line_dash_offset(ctx);\n fixup_image_smoothing(ctx);\n fixup_measure_text(ctx);\n fixup_ellipse(ctx);\n }\n exports.fixup_ctx = fixup_ctx;\n function get_scale_ratio(ctx, hidpi, backend) {\n if (backend == 'svg')\n return 1;\n else if (hidpi) {\n var devicePixelRatio_1 = window.devicePixelRatio || 1;\n var backingStoreRatio = ctx.webkitBackingStorePixelRatio || ctx.mozBackingStorePixelRatio || ctx.msBackingStorePixelRatio || ctx.oBackingStorePixelRatio || ctx.backingStorePixelRatio || 1;\n return devicePixelRatio_1 / backingStoreRatio;\n } else\n return 1;\n }\n exports.get_scale_ratio = get_scale_ratio; \n}","/*core/util/color*/\nfunction _(require, module, exports) {\n var svg_colors_1 = require(39 /* ./svg_colors */);\n var array_1 = require(21 /* ./array */);\n function _component2hex(v) {\n var h = Number(v).toString(16);\n return h.length == 1 ? '0' + h : h;\n }\n function color2hex(color) {\n color = color + '';\n if (color.indexOf('#') == 0)\n return color;\n else if (svg_colors_1.is_svg_color(color))\n return svg_colors_1.svg_colors[color];\n else if (color.indexOf('rgb') == 0) {\n var rgb = color.replace(/^rgba?\\(|\\s+|\\)$/g, '').split(',');\n var hex = rgb.slice(0, 3).map(_component2hex).join('');\n if (rgb.length == 4)\n hex += _component2hex(Math.floor(parseFloat(rgb[3]) * 255));\n return '#' + hex.slice(0, 8); // can also be rgba\n } else\n return color;\n }\n exports.color2hex = color2hex;\n function color2rgba(color, alpha) {\n if (alpha === void 0) {\n alpha = 1;\n }\n if (!color)\n // NaN, null, '', etc.\n return [\n 0,\n 0,\n 0,\n 0\n ];\n // transparent\n // Convert to hex and then to clean version of 6 or 8 chars\n var hex = color2hex(color);\n hex = hex.replace(/ |#/g, '');\n if (hex.length <= 4) {\n hex = hex.replace(/(.)/g, '$1$1');\n }\n // Convert pairs to numbers\n var rgba = hex.match(/../g).map(function (i) {\n return parseInt(i, 16) / 255;\n });\n // Ensure correct length, add alpha if necessary\n while (rgba.length < 3)\n rgba.push(0);\n if (rgba.length < 4)\n rgba.push(alpha);\n return rgba.slice(0, 4);\n }\n exports.color2rgba = color2rgba;\n function valid_rgb(value) {\n var params;\n switch (value.substring(0, 4)) {\n case 'rgba': {\n params = {\n start: 'rgba(',\n len: 4,\n alpha: true\n };\n break;\n }\n case 'rgb(': {\n params = {\n start: 'rgb(',\n len: 3,\n alpha: false\n };\n break;\n }\n default:\n return false;\n }\n // if '.' and then ',' found, we know decimals are used on rgb\n if (new RegExp('.*?(\\\\.).*(,)').test(value))\n throw new Error('color expects integers for rgb in rgb/rgba tuple, received ' + value);\n // extract the numerical values from inside parens\n var contents = value.replace(params.start, '').replace(')', '').split(',').map(parseFloat);\n // check length of array based on rgb/rgba\n if (contents.length != params.len)\n throw new Error('color expects rgba ' + params.len + '-tuple, received ' + value);\n // check for valid numerical values for rgba\n if (params.alpha && !(0 <= contents[3] && contents[3] <= 1))\n throw new Error('color expects rgba 4-tuple to have alpha value between 0 and 1');\n if (array_1.includes(contents.slice(0, 3).map(function (rgb) {\n return 0 <= rgb && rgb <= 255;\n }), false))\n throw new Error('color expects rgb to have value between 0 and 255');\n return true;\n }\n exports.valid_rgb = valid_rgb; \n}","/*core/util/compat*/\nfunction _(require, module, exports) {\n exports.is_ie = navigator.userAgent.indexOf('MSIE') >= 0 || navigator.userAgent.indexOf('Trident') > 0 || navigator.userAgent.indexOf('Edge') > 0;\n exports.is_little_endian = function () {\n var buf = new ArrayBuffer(4);\n var buf8 = new Uint8Array(buf);\n var buf32 = new Uint32Array(buf);\n buf32[1] = 168496141;\n var little_endian = true;\n if (buf8[4] == 10 && buf8[5] == 11 && buf8[6] == 12 && buf8[7] == 13) {\n little_endian = false;\n }\n return little_endian;\n }(); \n}","/*core/util/data_structures*/\nfunction _(require, module, exports) {\n var array_1 = require(21 /* ./array */);\n var eq_1 = require(30 /* ./eq */);\n var types_1 = require(44 /* ./types */);\n var MultiDict = function () {\n function MultiDict() {\n this._dict = {};\n }\n MultiDict.prototype._existing = function (key) {\n if (key in this._dict)\n return this._dict[key];\n else\n return null;\n };\n MultiDict.prototype.add_value = function (key, value) {\n /*\n if value == null\n throw new Error(\"Can't put null in this dict\")\n if isArray(value)\n throw new Error(\"Can't put arrays in this dict\")\n */\n var existing = this._existing(key);\n if (existing == null) {\n this._dict[key] = value;\n } else if (types_1.isArray(existing)) {\n existing.push(value);\n } else {\n this._dict[key] = [\n existing,\n value\n ];\n }\n };\n MultiDict.prototype.remove_value = function (key, value) {\n var existing = this._existing(key);\n if (types_1.isArray(existing)) {\n var new_array = array_1.difference(existing, [value]);\n if (new_array.length > 0)\n this._dict[key] = new_array;\n else\n delete this._dict[key];\n } else if (eq_1.isEqual(existing, value)) {\n delete this._dict[key];\n }\n };\n MultiDict.prototype.get_one = function (key, duplicate_error) {\n var existing = this._existing(key);\n if (types_1.isArray(existing)) {\n if (existing.length === 1)\n return existing[0];\n else\n throw new Error(duplicate_error);\n } else\n return existing;\n };\n return MultiDict;\n }();\n exports.MultiDict = MultiDict;\n var Set = function () {\n function Set(obj) {\n if (obj == null) {\n this.values = [];\n } else if (obj instanceof Set) {\n this.values = array_1.copy(obj.values);\n } else {\n this.values = this._compact(obj);\n }\n }\n Set.prototype._compact = function (array) {\n var newArray = [];\n for (var _i = 0, array_2 = array; _i < array_2.length; _i++) {\n var item = array_2[_i];\n if (newArray.indexOf(item) === -1) {\n newArray.push(item);\n }\n }\n return newArray;\n };\n Set.prototype.push = function (item) {\n if (this.missing(item))\n this.values.push(item);\n };\n Set.prototype.remove = function (item) {\n var i = this.values.indexOf(item);\n this.values = this.values.slice(0, i).concat(this.values.slice(i + 1));\n };\n Set.prototype.length = function () {\n return this.values.length;\n };\n Set.prototype.includes = function (item) {\n return this.values.indexOf(item) != -1;\n };\n Set.prototype.missing = function (item) {\n return !this.includes(item);\n };\n Set.prototype.slice = function (from, to) {\n return this.values.slice(from, to);\n };\n Set.prototype.join = function (str) {\n return this.values.join(str);\n };\n Set.prototype.toString = function () {\n return this.join(', ');\n };\n Set.prototype.union = function (set) {\n set = new Set(set);\n return new Set(this.values.concat(set.values));\n };\n Set.prototype.intersect = function (set) {\n set = new Set(set);\n var newSet = new Set();\n for (var _i = 0, _a = set.values; _i < _a.length; _i++) {\n var item = _a[_i];\n if (this.includes(item) && set.includes(item))\n newSet.push(item);\n }\n return newSet;\n };\n Set.prototype.diff = function (set) {\n set = new Set(set);\n var newSet = new Set();\n for (var _i = 0, _a = this.values; _i < _a.length; _i++) {\n var item = _a[_i];\n if (set.missing(item))\n newSet.push(item);\n }\n return newSet;\n };\n return Set;\n }();\n exports.Set = Set; \n}","/*core/util/eq*/\nfunction _(require, module, exports) {\n var types_1 = require(44 /* ./types */);\n var toString = Object.prototype.toString;\n // Internal recursive comparison function for `isEqual`.\n function eq(a, b, aStack, bStack) {\n // Identical objects are equal. `0 === -0`, but they aren't identical.\n // See the [Harmony `egal` proposal](http://wiki.ecmascript.org/doku.php?id=harmony:egal).\n if (a === b)\n return a !== 0 || 1 / a === 1 / b;\n // A strict comparison is necessary because `null == undefined`.\n if (a == null || b == null)\n return a === b;\n // Compare `[[Class]]` names.\n var className = toString.call(a);\n if (className !== toString.call(b))\n return false;\n switch (className) {\n // Strings, numbers, regular expressions, dates, and booleans are compared by value.\n case '[object RegExp]':\n // RegExps are coerced to strings for comparison (Note: '' + /a/i === '/a/i')\n case '[object String]':\n // Primitives and their corresponding object wrappers are equivalent; thus, `\"5\"` is\n // equivalent to `new String(\"5\")`.\n return '' + a === '' + b;\n case '[object Number]':\n // `NaN`s are equivalent, but non-reflexive.\n // Object(NaN) is equivalent to NaN\n if (+a !== +a)\n return +b !== +b;\n // An `egal` comparison is performed for other numeric values.\n return +a === 0 ? 1 / +a === 1 / b : +a === +b;\n case '[object Date]':\n case '[object Boolean]':\n // Coerce dates and booleans to numeric primitive values. Dates are compared by their\n // millisecond representations. Note that invalid dates with millisecond representations\n // of `NaN` are not equivalent.\n return +a === +b;\n }\n var areArrays = className === '[object Array]';\n if (!areArrays) {\n if (typeof a != 'object' || typeof b != 'object')\n return false;\n // Objects with different constructors are not equivalent, but `Object`s or `Array`s\n // from different frames are.\n var aCtor = a.constructor, bCtor = b.constructor;\n if (aCtor !== bCtor && !(types_1.isFunction(aCtor) && aCtor instanceof aCtor && types_1.isFunction(bCtor) && bCtor instanceof bCtor) && ('constructor' in a && 'constructor' in b)) {\n return false;\n }\n }\n // Assume equality for cyclic structures. The algorithm for detecting cyclic\n // structures is adapted from ES 5.1 section 15.12.3, abstract operation `JO`.\n // Initializing stack of traversed objects.\n // It's done here since we only need them for objects and arrays comparison.\n aStack = aStack || [];\n bStack = bStack || [];\n var length = aStack.length;\n while (length--) {\n // Linear search. Performance is inversely proportional to the number of\n // unique nested structures.\n if (aStack[length] === a)\n return bStack[length] === b;\n }\n // Add the first object to the stack of traversed objects.\n aStack.push(a);\n bStack.push(b);\n // Recursively compare objects and arrays.\n if (areArrays) {\n // Compare array lengths to determine if a deep comparison is necessary.\n length = a.length;\n if (length !== b.length)\n return false;\n // Deep compare the contents, ignoring non-numeric properties.\n while (length--) {\n if (!eq(a[length], b[length], aStack, bStack))\n return false;\n }\n } else {\n // Deep compare objects.\n var keys = Object.keys(a);\n var key = void 0;\n length = keys.length;\n // Ensure that both objects contain the same number of properties before comparing deep equality.\n if (Object.keys(b).length !== length)\n return false;\n while (length--) {\n // Deep compare each member\n key = keys[length];\n if (!(b.hasOwnProperty(key) && eq(a[key], b[key], aStack, bStack)))\n return false;\n }\n }\n // Remove the first object from the stack of traversed objects.\n aStack.pop();\n bStack.pop();\n return true;\n }\n // Perform a deep comparison to check if two objects are equal.\n function isEqual(a, b) {\n return eq(a, b);\n }\n exports.isEqual = isEqual; \n}","/*core/util/math*/\nfunction _(require, module, exports) {\n function angle_norm(angle) {\n while (angle < 0) {\n angle += 2 * Math.PI;\n }\n while (angle > 2 * Math.PI) {\n angle -= 2 * Math.PI;\n }\n return angle;\n }\n exports.angle_norm = angle_norm;\n function angle_dist(lhs, rhs) {\n return Math.abs(angle_norm(lhs - rhs));\n }\n exports.angle_dist = angle_dist;\n function angle_between(mid, lhs, rhs, direction) {\n var norm_mid = angle_norm(mid);\n var d = angle_dist(lhs, rhs);\n var cond = angle_dist(lhs, norm_mid) <= d && angle_dist(norm_mid, rhs) <= d;\n if (direction == 'anticlock')\n return cond;\n else\n return !cond;\n }\n exports.angle_between = angle_between;\n function random() {\n return Math.random();\n }\n exports.random = random;\n function randomIn(min, max) {\n if (max == null) {\n max = min;\n min = 0;\n }\n return min + Math.floor(Math.random() * (max - min + 1));\n }\n exports.randomIn = randomIn;\n function atan2(start, end) {\n /*\n * Calculate the angle between a line containing start and end points (composed\n * of [x, y] arrays) and the positive x-axis.\n */\n return Math.atan2(end[1] - start[1], end[0] - start[0]);\n }\n exports.atan2 = atan2;\n // http://www2.econ.osaka-u.ac.jp/~tanizaki/class/2013/econome3/13.pdf (Page 432)\n function rnorm(mu, sigma) {\n // Generate a random normal with a mean of 0 and a sigma of 1\n var r1;\n var r2;\n while (true) {\n r1 = random();\n r2 = random();\n r2 = (2 * r2 - 1) * Math.sqrt(2 * (1 / Math.E));\n if (-4 * r1 * r1 * Math.log(r1) >= r2 * r2)\n break;\n }\n var rn = r2 / r1;\n // Transform the standard normal to meet the characteristics that we want (mu, sigma)\n rn = mu + sigma * rn;\n return rn;\n }\n exports.rnorm = rnorm;\n function clamp(val, min, max) {\n if (val > max)\n return max;\n if (val < min)\n return min;\n return val;\n }\n exports.clamp = clamp; \n}","/*core/util/object*/\nfunction _(require, module, exports) {\n var array_1 = require(21 /* ./array */);\n exports.keys = Object.keys;\n function values(object) {\n var keys = Object.keys(object);\n var length = keys.length;\n var values = new Array(length);\n for (var i = 0; i < length; i++) {\n values[i] = object[keys[i]];\n }\n return values;\n }\n exports.values = values;\n function extend(dest) {\n var sources = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n sources[_i - 1] = arguments[_i];\n }\n for (var _a = 0, sources_1 = sources; _a < sources_1.length; _a++) {\n var source = sources_1[_a];\n for (var key in source) {\n if (source.hasOwnProperty(key)) {\n dest[key] = source[key];\n }\n }\n }\n return dest;\n }\n exports.extend = extend;\n function clone(obj) {\n return extend({}, obj);\n }\n exports.clone = clone;\n function merge(obj1, obj2) {\n /*\n * Returns an object with the array values for obj1 and obj2 unioned by key.\n */\n var result = Object.create(Object.prototype);\n var keys = array_1.concat([\n Object.keys(obj1),\n Object.keys(obj2)\n ]);\n for (var _i = 0, keys_1 = keys; _i < keys_1.length; _i++) {\n var key = keys_1[_i];\n var arr1 = obj1.hasOwnProperty(key) ? obj1[key] : [];\n var arr2 = obj2.hasOwnProperty(key) ? obj2[key] : [];\n result[key] = array_1.union(arr1, arr2);\n }\n return result;\n }\n exports.merge = merge;\n function size(obj) {\n return Object.keys(obj).length;\n }\n exports.size = size;\n function isEmpty(obj) {\n return size(obj) === 0;\n }\n exports.isEmpty = isEmpty; \n}","/*core/util/projections*/\nfunction _(require, module, exports) {\n var proj4 = require(363 /* proj4/lib/core */);\n var Projection = require(351 /* proj4/lib/Proj */);\n var mercator = new Projection('GOOGLE');\n var wgs84 = new Projection('WGS84');\n exports.wgs84_mercator = proj4(wgs84, mercator);\n var mercator_bounds = {\n lon: [\n -20026376.39,\n 20026376.39\n ],\n lat: [\n -20048966.1,\n 20048966.1\n ]\n };\n var latlon_bounds = {\n lon: [\n -180,\n 180\n ],\n lat: [\n -85.06,\n 85.06\n ]\n };\n function clip_mercator(low, high, dimension) {\n var _a = mercator_bounds[dimension], min = _a[0], max = _a[1];\n return [\n Math.max(low, min),\n Math.min(high, max)\n ];\n }\n exports.clip_mercator = clip_mercator;\n function in_bounds(value, dimension) {\n return value > latlon_bounds[dimension][0] && value < latlon_bounds[dimension][1];\n }\n exports.in_bounds = in_bounds;\n function project_xy(x, y) {\n var n = Math.min(x.length, y.length);\n var merc_x_s = new Array(n);\n var merc_y_s = new Array(n);\n for (var i = 0; i < n; i++) {\n var _a = exports.wgs84_mercator.forward([\n x[i],\n y[i]\n ]), merc_x = _a[0], merc_y = _a[1];\n merc_x_s[i] = merc_x;\n merc_y_s[i] = merc_y;\n }\n return [\n merc_x_s,\n merc_y_s\n ];\n }\n exports.project_xy = project_xy;\n function project_xsys(xs, ys) {\n var n = Math.min(xs.length, ys.length);\n var merc_xs_s = new Array(n);\n var merc_ys_s = new Array(n);\n for (var i = 0; i < n; i++) {\n var _a = project_xy(xs[i], ys[i]), merc_x_s = _a[0], merc_y_s = _a[1];\n merc_xs_s[i] = merc_x_s;\n merc_ys_s[i] = merc_y_s;\n }\n return [\n merc_xs_s,\n merc_ys_s\n ];\n }\n exports.project_xsys = project_xsys; \n}","/*core/util/refs*/\nfunction _(require, module, exports) {\n var types_1 = require(44 /* ./types */);\n // Create a Bokeh reference from a HasProps subclass\n //\n // @param obj [HasProps] the object to create a reference for\n // @return [Object] a Bokeh reference for `obj`\n // @throw Error if `obj` is not a HasProps\n //\n function create_ref(obj) {\n var ref = {\n type: obj.type,\n id: obj.id\n };\n if (obj._subtype != null) {\n ref.subtype = obj._subtype;\n }\n return ref;\n }\n exports.create_ref = create_ref;\n // Determine whether an object has the proper format of a Bokeh reference\n //\n // @param arg [Object] the object to test\n // @return [bool] whether the object is a refererence\n //\n // @note this function does not check that the id and types are valid,\n // only that the format is correct (all required keys are present)\n //\n function is_ref(arg) {\n if (types_1.isObject(arg)) {\n var keys = Object.keys(arg).sort();\n if (keys.length == 2)\n return keys[0] == 'id' && keys[1] == 'type';\n if (keys.length == 3)\n return keys[0] == 'id' && keys[1] == 'subtype' && keys[2] == 'type';\n }\n return false;\n }\n exports.is_ref = is_ref; \n}","/*core/util/selection*/\nfunction _(require, module, exports) {\n function get_indices(data_source) {\n var selected = data_source.selected;\n if (selected['0d'].glyph)\n return selected['0d'].indices;\n else if (selected['1d'].indices.length > 0)\n return selected['1d'].indices;\n else if (selected['2d'].indices.length > 0)\n return selected['2d'].indices;\n else\n return [];\n }\n exports.get_indices = get_indices; \n}","/*core/util/serialization*/\nfunction _(require, module, exports) {\n var types_1 = require(44 /* ./types */);\n var compat_1 = require(28 /* ./compat */);\n exports.ARRAY_TYPES = {\n uint8: Uint8Array,\n int8: Int8Array,\n uint16: Uint16Array,\n int16: Int16Array,\n uint32: Uint32Array,\n int32: Int32Array,\n float32: Float32Array,\n float64: Float64Array\n };\n exports.DTYPES = {\n Uint8Array: 'uint8',\n Int8Array: 'int8',\n Uint16Array: 'uint16',\n Int16Array: 'int16',\n Uint32Array: 'uint32',\n Int32Array: 'int32',\n Float32Array: 'float32',\n Float64Array: 'float64'\n };\n function arrayName(array) {\n if ('name' in array.constructor)\n return array.constructor.name;\n else {\n switch (true) {\n case array instanceof Uint8Array:\n return 'Uint8Array';\n case array instanceof Int8Array:\n return 'Int8Array';\n case array instanceof Uint16Array:\n return 'Uint16Array';\n case array instanceof Int16Array:\n return 'Int16Array';\n case array instanceof Uint32Array:\n return 'Uint32Array';\n case array instanceof Int32Array:\n return 'Int32Array';\n case array instanceof Float32Array:\n return 'Float32Array';\n case array instanceof Float64Array:\n return 'Float64Array';\n default:\n throw new Error('unsupported typed array');\n }\n }\n }\n exports.BYTE_ORDER = compat_1.is_little_endian ? 'little' : 'big';\n function swap16(a) {\n var x = new Uint8Array(a.buffer, a.byteOffset, a.length * 2);\n for (var i = 0, end = x.length; i < end; i += 2) {\n var t = x[i];\n x[i] = x[i + 1];\n x[i + 1] = t;\n }\n }\n exports.swap16 = swap16;\n function swap32(a) {\n var x = new Uint8Array(a.buffer, a.byteOffset, a.length * 4);\n for (var i = 0, end = x.length; i < end; i += 4) {\n var t = x[i];\n x[i] = x[i + 3];\n x[i + 3] = t;\n t = x[i + 1];\n x[i + 1] = x[i + 2];\n x[i + 2] = t;\n }\n }\n exports.swap32 = swap32;\n function swap64(a) {\n var x = new Uint8Array(a.buffer, a.byteOffset, a.length * 8);\n for (var i = 0, end = x.length; i < end; i += 8) {\n var t = x[i];\n x[i] = x[i + 7];\n x[i + 7] = t;\n t = x[i + 1];\n x[i + 1] = x[i + 6];\n x[i + 6] = t;\n t = x[i + 2];\n x[i + 2] = x[i + 5];\n x[i + 5] = t;\n t = x[i + 3];\n x[i + 3] = x[i + 4];\n x[i + 4] = t;\n }\n }\n exports.swap64 = swap64;\n function process_buffer(spec, buffers) {\n var need_swap = spec.order !== exports.BYTE_ORDER;\n var shape = spec.shape;\n var bytes = null;\n for (var _i = 0, buffers_1 = buffers; _i < buffers_1.length; _i++) {\n var buf = buffers_1[_i];\n var header = JSON.parse(buf[0]);\n if (header.id === spec.__buffer__) {\n bytes = buf[1];\n break;\n }\n }\n var arr = new exports.ARRAY_TYPES[spec.dtype](bytes);\n if (need_swap) {\n if (arr.BYTES_PER_ELEMENT === 2) {\n swap16(arr);\n } else if (arr.BYTES_PER_ELEMENT === 4) {\n swap32(arr);\n } else if (arr.BYTES_PER_ELEMENT === 8) {\n swap64(arr);\n }\n }\n return [\n arr,\n shape\n ];\n }\n exports.process_buffer = process_buffer;\n function process_array(obj, buffers) {\n if (types_1.isObject(obj) && '__ndarray__' in obj)\n return decode_base64(obj);\n else if (types_1.isObject(obj) && '__buffer__' in obj)\n return process_buffer(obj, buffers);\n else if (types_1.isArray(obj))\n return [\n obj,\n []\n ];\n else\n return undefined;\n }\n exports.process_array = process_array;\n function arrayBufferToBase64(buffer) {\n var bytes = new Uint8Array(buffer);\n var chars = Array.from(bytes).map(function (b) {\n return String.fromCharCode(b);\n });\n return btoa(chars.join(''));\n }\n exports.arrayBufferToBase64 = arrayBufferToBase64;\n function base64ToArrayBuffer(base64) {\n var binary_string = atob(base64);\n var len = binary_string.length;\n var bytes = new Uint8Array(len);\n for (var i = 0, end = len; i < end; i++) {\n bytes[i] = binary_string.charCodeAt(i);\n }\n return bytes.buffer;\n }\n exports.base64ToArrayBuffer = base64ToArrayBuffer;\n function decode_base64(input) {\n var bytes = base64ToArrayBuffer(input.__ndarray__);\n var dtype = input.dtype;\n var shape = input.shape;\n var array;\n if (dtype in exports.ARRAY_TYPES)\n array = new exports.ARRAY_TYPES[dtype](bytes);\n else\n throw new Error('unknown dtype: ' + dtype);\n return [\n array,\n shape\n ];\n }\n exports.decode_base64 = decode_base64;\n function encode_base64(array, shape) {\n var b64 = arrayBufferToBase64(array.buffer);\n var name = arrayName(array);\n var dtype;\n if (name in exports.DTYPES)\n dtype = exports.DTYPES[name];\n else\n throw new Error('unknown array type: ' + name);\n var data = {\n __ndarray__: b64,\n shape: shape,\n dtype: dtype\n };\n return data;\n }\n exports.encode_base64 = encode_base64;\n function decode_column_data(data, buffers) {\n if (buffers === void 0) {\n buffers = [];\n }\n var new_data = {};\n var new_shapes = {};\n for (var k in data) {\n // might be array of scalars, or might be ragged array or arrays\n var v = data[k];\n if (types_1.isArray(v)) {\n // v is just a regular array of scalars\n if (v.length == 0 || !(types_1.isObject(v[0]) || types_1.isArray(v[0]))) {\n new_data[k] = v;\n continue;\n }\n // v is a ragged array of arrays\n var arrays = [];\n var shapes = [];\n for (var _i = 0, v_1 = v; _i < v_1.length; _i++) {\n var obj = v_1[_i];\n var _a = process_array(obj, buffers), arr = _a[0], shape = _a[1];\n arrays.push(arr);\n shapes.push(shape);\n }\n new_data[k] = arrays;\n new_shapes[k] = shapes; // must be object or array (single array case)\n } else {\n var _b = process_array(v, buffers), arr = _b[0], shape = _b[1];\n new_data[k] = arr;\n new_shapes[k] = shape;\n }\n }\n return [\n new_data,\n new_shapes\n ];\n }\n exports.decode_column_data = decode_column_data;\n function encode_column_data(data, shapes) {\n var new_data = {};\n for (var k in data) {\n var v = data[k];\n var new_v = void 0;\n if (types_1.isTypedArray(v)) {\n new_v = encode_base64(v, shapes != null ? shapes[k] : undefined);\n } else if (types_1.isArray(v)) {\n var new_array = [];\n for (var i = 0, end = v.length; i < end; i++) {\n var item = v[i];\n if (types_1.isTypedArray(item)) {\n var shape = shapes != null && shapes[k] != null ? shapes[k][i] : undefined;\n new_array.push(encode_base64(item, shape));\n } else\n new_array.push(item);\n }\n new_v = new_array;\n } else\n new_v = v;\n new_data[k] = new_v;\n }\n return new_data;\n }\n exports.encode_column_data = encode_column_data; \n}","/*core/util/spatial*/\nfunction _(require, module, exports) {\n var FlatBush = require(335 /* flatbush */);\n var bbox_1 = require(24 /* ./bbox */);\n var SpatialIndex = function () {\n function SpatialIndex(points) {\n this.points = points;\n this.index = null;\n if (points.length > 0) {\n this.index = new FlatBush(points.length);\n for (var _i = 0, points_1 = points; _i < points_1.length; _i++) {\n var p = points_1[_i];\n var minX = p.minX, minY = p.minY, maxX = p.maxX, maxY = p.maxY;\n this.index.add(minX, minY, maxX, maxY);\n }\n this.index.finish();\n }\n }\n Object.defineProperty(SpatialIndex.prototype, 'bbox', {\n get: function () {\n if (this.index == null)\n return bbox_1.empty();\n else {\n var _a = this.index, minX = _a.minX, minY = _a.minY, maxX = _a.maxX, maxY = _a.maxY;\n return {\n minX: minX,\n minY: minY,\n maxX: maxX,\n maxY: maxY\n };\n }\n },\n enumerable: true,\n configurable: true\n });\n SpatialIndex.prototype.search = function (rect) {\n var _this = this;\n if (this.index == null)\n return [];\n else {\n var minX = rect.minX, minY = rect.minY, maxX = rect.maxX, maxY = rect.maxY;\n var indices = this.index.search(minX, minY, maxX, maxY);\n return indices.map(function (j) {\n return _this.points[j];\n });\n }\n };\n SpatialIndex.prototype.indices = function (rect) {\n return this.search(rect).map(function (_a) {\n var i = _a.i;\n return i;\n });\n };\n return SpatialIndex;\n }();\n exports.SpatialIndex = SpatialIndex; \n}","/*core/util/string*/\nfunction _(require, module, exports) {\n var settings_1 = require(18 /* ../settings */);\n function startsWith(str, searchString, position) {\n if (position === void 0) {\n position = 0;\n }\n return str.substr(position, searchString.length) == searchString;\n }\n exports.startsWith = startsWith;\n function uuid4() {\n // from ipython project\n // http://www.ietf.org/rfc/rfc4122.txt\n var s = new Array(32);\n var hexDigits = '0123456789ABCDEF';\n for (var i = 0; i < 32; i++) {\n s[i] = hexDigits.substr(Math.floor(Math.random() * 16), 1);\n }\n s[12] = '4';\n // bits 12-15 of the time_hi_and_version field to 0010\n s[16] = hexDigits.substr(s[16].charCodeAt(0) & 3 | 8, 1);\n // bits 6-7 of the clock_seq_hi_and_reserved to 01\n return s.join('');\n }\n exports.uuid4 = uuid4;\n var counter = 1000;\n function uniqueId(prefix) {\n var id = settings_1.settings.dev ? 'j' + counter++ : uuid4();\n if (prefix != null)\n return prefix + '-' + id;\n else\n return id;\n }\n exports.uniqueId = uniqueId;\n function escape(s) {\n return s.replace(/(?:[&<>\"'`])/g, function (ch) {\n switch (ch) {\n case '&':\n return '&';\n case '<':\n return '<';\n case '>':\n return '>';\n case '\"':\n return '"';\n case '\\'':\n return ''';\n case '`':\n return '`';\n default:\n return ch;\n }\n });\n }\n exports.escape = escape;\n function unescape(s) {\n return s.replace(/&(amp|lt|gt|quot|#x27|#x60);/g, function (_, entity) {\n switch (entity) {\n case 'amp':\n return '&';\n case 'lt':\n return '<';\n case 'gt':\n return '>';\n case 'quot':\n return '\"';\n case '#x27':\n return '\\'';\n case '#x60':\n return '`';\n default:\n return entity;\n }\n });\n }\n exports.unescape = unescape;\n function use_strict(code) {\n return '\\'use strict\\';\\n' + code;\n }\n exports.use_strict = use_strict; \n}","/*core/util/svg_colors*/\nfunction _(require, module, exports) {\n exports.svg_colors = {\n indianred: '#CD5C5C',\n lightcoral: '#F08080',\n salmon: '#FA8072',\n darksalmon: '#E9967A',\n lightsalmon: '#FFA07A',\n crimson: '#DC143C',\n red: '#FF0000',\n firebrick: '#B22222',\n darkred: '#8B0000',\n pink: '#FFC0CB',\n lightpink: '#FFB6C1',\n hotpink: '#FF69B4',\n deeppink: '#FF1493',\n mediumvioletred: '#C71585',\n palevioletred: '#DB7093',\n coral: '#FF7F50',\n tomato: '#FF6347',\n orangered: '#FF4500',\n darkorange: '#FF8C00',\n orange: '#FFA500',\n gold: '#FFD700',\n yellow: '#FFFF00',\n lightyellow: '#FFFFE0',\n lemonchiffon: '#FFFACD',\n lightgoldenrodyellow: '#FAFAD2',\n papayawhip: '#FFEFD5',\n moccasin: '#FFE4B5',\n peachpuff: '#FFDAB9',\n palegoldenrod: '#EEE8AA',\n khaki: '#F0E68C',\n darkkhaki: '#BDB76B',\n lavender: '#E6E6FA',\n thistle: '#D8BFD8',\n plum: '#DDA0DD',\n violet: '#EE82EE',\n orchid: '#DA70D6',\n fuchsia: '#FF00FF',\n magenta: '#FF00FF',\n mediumorchid: '#BA55D3',\n mediumpurple: '#9370DB',\n blueviolet: '#8A2BE2',\n darkviolet: '#9400D3',\n darkorchid: '#9932CC',\n darkmagenta: '#8B008B',\n purple: '#800080',\n indigo: '#4B0082',\n slateblue: '#6A5ACD',\n darkslateblue: '#483D8B',\n mediumslateblue: '#7B68EE',\n greenyellow: '#ADFF2F',\n chartreuse: '#7FFF00',\n lawngreen: '#7CFC00',\n lime: '#00FF00',\n limegreen: '#32CD32',\n palegreen: '#98FB98',\n lightgreen: '#90EE90',\n mediumspringgreen: '#00FA9A',\n springgreen: '#00FF7F',\n mediumseagreen: '#3CB371',\n seagreen: '#2E8B57',\n forestgreen: '#228B22',\n green: '#008000',\n darkgreen: '#006400',\n yellowgreen: '#9ACD32',\n olivedrab: '#6B8E23',\n olive: '#808000',\n darkolivegreen: '#556B2F',\n mediumaquamarine: '#66CDAA',\n darkseagreen: '#8FBC8F',\n lightseagreen: '#20B2AA',\n darkcyan: '#008B8B',\n teal: '#008080',\n aqua: '#00FFFF',\n cyan: '#00FFFF',\n lightcyan: '#E0FFFF',\n paleturquoise: '#AFEEEE',\n aquamarine: '#7FFFD4',\n turquoise: '#40E0D0',\n mediumturquoise: '#48D1CC',\n darkturquoise: '#00CED1',\n cadetblue: '#5F9EA0',\n steelblue: '#4682B4',\n lightsteelblue: '#B0C4DE',\n powderblue: '#B0E0E6',\n lightblue: '#ADD8E6',\n skyblue: '#87CEEB',\n lightskyblue: '#87CEFA',\n deepskyblue: '#00BFFF',\n dodgerblue: '#1E90FF',\n cornflowerblue: '#6495ED',\n royalblue: '#4169E1',\n blue: '#0000FF',\n mediumblue: '#0000CD',\n darkblue: '#00008B',\n navy: '#000080',\n midnightblue: '#191970',\n cornsilk: '#FFF8DC',\n blanchedalmond: '#FFEBCD',\n bisque: '#FFE4C4',\n navajowhite: '#FFDEAD',\n wheat: '#F5DEB3',\n burlywood: '#DEB887',\n tan: '#D2B48C',\n rosybrown: '#BC8F8F',\n sandybrown: '#F4A460',\n goldenrod: '#DAA520',\n darkgoldenrod: '#B8860B',\n peru: '#CD853F',\n chocolate: '#D2691E',\n saddlebrown: '#8B4513',\n sienna: '#A0522D',\n brown: '#A52A2A',\n maroon: '#800000',\n white: '#FFFFFF',\n snow: '#FFFAFA',\n honeydew: '#F0FFF0',\n mintcream: '#F5FFFA',\n azure: '#F0FFFF',\n aliceblue: '#F0F8FF',\n ghostwhite: '#F8F8FF',\n whitesmoke: '#F5F5F5',\n seashell: '#FFF5EE',\n beige: '#F5F5DC',\n oldlace: '#FDF5E6',\n floralwhite: '#FFFAF0',\n ivory: '#FFFFF0',\n antiquewhite: '#FAEBD7',\n linen: '#FAF0E6',\n lavenderblush: '#FFF0F5',\n mistyrose: '#FFE4E1',\n gainsboro: '#DCDCDC',\n lightgray: '#D3D3D3',\n lightgrey: '#D3D3D3',\n silver: '#C0C0C0',\n darkgray: '#A9A9A9',\n darkgrey: '#A9A9A9',\n gray: '#808080',\n grey: '#808080',\n dimgray: '#696969',\n dimgrey: '#696969',\n lightslategray: '#778899',\n lightslategrey: '#778899',\n slategray: '#708090',\n slategrey: '#708090',\n darkslategray: '#2F4F4F',\n darkslategrey: '#2F4F4F',\n black: '#000000'\n };\n function is_svg_color(color) {\n return color in exports.svg_colors;\n }\n exports.is_svg_color = is_svg_color; \n}","/*core/util/templating*/\nfunction _(require, module, exports) {\n var sprintf_js_1 = require(378 /* sprintf-js */);\n var Numbro = require(350 /* numbro */);\n var tz = require(379 /* timezone */);\n var string_1 = require(38 /* ./string */);\n var types_1 = require(44 /* ./types */);\n exports.DEFAULT_FORMATTERS = {\n 'numeral': function (value, format, _special_vars) {\n return Numbro.format(value, format);\n },\n 'datetime': function (value, format, _special_vars) {\n return tz(value, format);\n },\n 'printf': function (value, format, _special_vars) {\n return sprintf_js_1.sprintf(format, value);\n }\n };\n function basic_formatter(value, _format, _special_vars) {\n if (types_1.isNumber(value)) {\n var format = function () {\n switch (false) {\n case Math.floor(value) != value:\n return '%d';\n case !(Math.abs(value) > 0.1) || !(Math.abs(value) < 1000):\n return '%0.3f';\n default:\n return '%0.3e';\n }\n }();\n return sprintf_js_1.sprintf(format, value);\n } else\n return '' + value; // get strings for categorical types\n }\n exports.basic_formatter = basic_formatter;\n function get_formatter(name, raw_spec, format, formatters) {\n // no format, use default built in formatter\n if (format == null)\n return basic_formatter;\n // format spec in the formatters dict, use that\n if (formatters != null && (name in formatters || raw_spec in formatters)) {\n // some day (Bokeh 2.0) we can get rid of the check for name, and just check the raw spec\n // keep it now for compatibility but do not demonstrate it anywhere\n var key = raw_spec in formatters ? raw_spec : name;\n var formatter_1 = formatters[key];\n if (types_1.isString(formatter_1)) {\n if (formatter_1 in exports.DEFAULT_FORMATTERS)\n return exports.DEFAULT_FORMATTERS[formatter_1];\n else\n throw new Error('Unknown tooltip field formatter type \\'' + formatter_1 + '\\'');\n }\n return function (value, format, special_vars) {\n return formatter_1.format(value, format, special_vars);\n };\n }\n // otherwise use \"numeral\" as default\n return exports.DEFAULT_FORMATTERS['numeral'];\n }\n exports.get_formatter = get_formatter;\n function get_value(name, data_source, i, special_vars) {\n if (name[0] == '$') {\n if (name.substring(1) in special_vars)\n return special_vars[name.substring(1)];\n else\n throw new Error('Unknown special variable \\'' + name + '\\'');\n }\n var column = data_source.get_column(name);\n // missing column\n if (column == null)\n return null;\n // typical (non-image) index\n if (types_1.isNumber(i))\n return column[i];\n // image index\n var data = column[i.index];\n if (types_1.isTypedArray(data) || types_1.isArray(data)) {\n // inspect array of arrays\n if (types_1.isArray(data[0])) {\n var row = data[i.dim2];\n return row[i.dim1];\n } // inspect flat array\n else\n return data[i.flat_index];\n } // inspect per-image scalar data\n else\n return data;\n }\n exports.get_value = get_value;\n function replace_placeholders(str, data_source, i, formatters, special_vars) {\n if (special_vars === void 0) {\n special_vars = {};\n }\n // this extracts the $x, @x, @{x} without any trailing {format}\n var raw_spec = str.replace(/(?:^|[^@])([@|\\$](?:\\w+|{[^{}]+}))(?:{[^{}]+})?/g, function (_match, raw_spec, _format) {\n return '' + raw_spec;\n });\n // this prepends special vars with \"@\", e.g \"$x\" becomes \"@$x\", so subsequent processing is simpler\n str = str.replace(/(^|[^\\$])\\$(\\w+)/g, function (_match, prefix, name) {\n return prefix + '@$' + name;\n });\n str = str.replace(/(^|[^@])@(?:(\\$?\\w+)|{([^{}]+)})(?:{([^{}]+)})?/g, function (_match, prefix, name, long_name, format) {\n name = long_name != null ? long_name : name;\n var value = get_value(name, data_source, i, special_vars);\n // missing value, return ???\n if (value == null)\n return '' + prefix + string_1.escape('???');\n // 'safe' format, return the value as-is\n if (format == 'safe')\n return '' + prefix + value;\n // format and escape everything else\n var formatter = get_formatter(name, raw_spec, format, formatters);\n return '' + prefix + string_1.escape(formatter(value, format, special_vars));\n });\n return str;\n }\n exports.replace_placeholders = replace_placeholders; \n}","/*core/util/text*/\nfunction _(require, module, exports) {\n var dom_1 = require(5 /* ../dom */);\n var cache = {};\n function get_text_height(font) {\n if (cache[font] != null)\n return cache[font];\n var text = dom_1.span({ style: { font: font } }, 'Hg');\n var block = dom_1.div({\n style: {\n display: 'inline-block',\n width: '1px',\n height: '0px'\n }\n });\n var elem = dom_1.div({}, text, block);\n document.body.appendChild(elem);\n try {\n block.style.verticalAlign = 'baseline';\n var ascent = dom_1.offset(block).top - dom_1.offset(text).top;\n block.style.verticalAlign = 'bottom';\n var height = dom_1.offset(block).top - dom_1.offset(text).top;\n var result = {\n height: height,\n ascent: ascent,\n descent: height - ascent\n };\n cache[font] = result;\n return result;\n } finally {\n document.body.removeChild(elem);\n }\n }\n exports.get_text_height = get_text_height; \n}","/*core/util/throttle*/\nfunction _(require, module, exports) {\n function _delay_animation(callback) {\n callback(Date.now());\n // XXX: performance.now()\n return -1;\n }\n var delay_animation = (typeof window !== 'undefined' ? window.requestAnimationFrame : undefined) || (typeof window !== 'undefined' ? window.webkitRequestAnimationFrame : undefined) || (typeof window !== 'undefined' ? window.mozRequestAnimationFrame : undefined) || (typeof window !== 'undefined' ? window.msRequestAnimationFrame : undefined) || _delay_animation;\n // Returns a function, that, when invoked, will only be triggered at\n // most once during a given window of time.\n //\n // In addition, if the browser supports requestAnimationFrame, the\n // throttled function will be run no more frequently than request\n // animation frame allows.\n //\n // @param func [function] the function to throttle\n // @param wait [number] time in milliseconds to use for window\n // @return [function] throttled function\n //\n function throttle(func, wait) {\n var timeout = null;\n var previous = 0;\n var pending = false;\n var later = function () {\n previous = Date.now();\n timeout = null;\n pending = false;\n func();\n };\n return function () {\n var now = Date.now();\n var remaining = wait - (now - previous);\n if (remaining <= 0 && !pending) {\n if (timeout != null)\n clearTimeout(timeout);\n pending = true;\n delay_animation(later);\n } else if (!timeout && !pending)\n timeout = setTimeout(function () {\n return delay_animation(later);\n }, remaining);\n };\n }\n exports.throttle = throttle; \n}","/*core/util/typed_array*/\nfunction _(require, module, exports) {\n function concat(array0) {\n var arrays = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n arrays[_i - 1] = arguments[_i];\n }\n var n = array0.length;\n for (var _a = 0, arrays_1 = arrays; _a < arrays_1.length; _a++) {\n var array = arrays_1[_a];\n n += array.length;\n }\n var result = new array0.constructor(n);\n result.set(array0, 0);\n var i = array0.length;\n for (var _b = 0, arrays_2 = arrays; _b < arrays_2.length; _b++) {\n var array = arrays_2[_b];\n result.set(array, i);\n i += array.length;\n }\n return result;\n }\n exports.concat = concat; \n}","/*core/util/types*/\nfunction _(require, module, exports) {\n var array_1 = require(21 /* ./array */);\n var toString = Object.prototype.toString;\n function isBoolean(obj) {\n return obj === true || obj === false || toString.call(obj) === '[object Boolean]';\n }\n exports.isBoolean = isBoolean;\n function isNumber(obj) {\n return toString.call(obj) === '[object Number]';\n }\n exports.isNumber = isNumber;\n function isInteger(obj) {\n return isNumber(obj) && isFinite(obj) && Math.floor(obj) === obj;\n }\n exports.isInteger = isInteger;\n function isString(obj) {\n return toString.call(obj) === '[object String]';\n }\n exports.isString = isString;\n function isStrictNaN(obj) {\n return isNumber(obj) && obj !== +obj;\n }\n exports.isStrictNaN = isStrictNaN;\n function isFunction(obj) {\n return toString.call(obj) === '[object Function]';\n }\n exports.isFunction = isFunction;\n function isArray(obj) {\n return Array.isArray(obj);\n }\n exports.isArray = isArray;\n function isArrayOf(arr, predicate) {\n return array_1.all(arr, predicate);\n }\n exports.isArrayOf = isArrayOf;\n function isArrayableOf(arr, predicate) {\n for (var i = 0, end = arr.length; i < end; i++) {\n if (!predicate(arr[i]))\n return false;\n }\n return true;\n }\n exports.isArrayableOf = isArrayableOf;\n function isTypedArray(obj) {\n return obj != null && obj.buffer != null && obj.buffer instanceof ArrayBuffer;\n }\n exports.isTypedArray = isTypedArray;\n function isObject(obj) {\n var tp = typeof obj;\n return tp === 'function' || tp === 'object' && !!obj;\n }\n exports.isObject = isObject; \n}","/*core/util/wheel*/\nfunction _(require, module, exports) {\n function fontSize(element) {\n var value = getComputedStyle(element).fontSize;\n if (value != null)\n return parseInt(value, 10);\n return null;\n }\n function lineHeight(element) {\n var parent = element.offsetParent || document.body;\n return fontSize(parent) || fontSize(element) || 16;\n }\n function pageHeight(element) {\n return element.clientHeight; // XXX: should be content height?\n }\n function getDeltaY(event) {\n var deltaY = -event.deltaY;\n if (event.target instanceof HTMLElement) {\n switch (event.deltaMode) {\n case event.DOM_DELTA_LINE:\n deltaY *= lineHeight(event.target);\n break;\n case event.DOM_DELTA_PAGE:\n deltaY *= pageHeight(event.target);\n break;\n }\n }\n return deltaY;\n }\n exports.getDeltaY = getDeltaY; \n}","/*core/util/zoom*/\nfunction _(require, module, exports) {\n var math_1 = require(31 /* ./math */);\n // Module for zoom-related functions\n function scale_highlow(range, factor, center) {\n var _a = [\n range.start,\n range.end\n ], low = _a[0], high = _a[1];\n var x = center != null ? center : (high + low) / 2;\n var x0 = low - (low - x) * factor;\n var x1 = high - (high - x) * factor;\n return [\n x0,\n x1\n ];\n }\n exports.scale_highlow = scale_highlow;\n function get_info(scales, _a) {\n var sxy0 = _a[0], sxy1 = _a[1];\n var info = {};\n for (var name_1 in scales) {\n var scale = scales[name_1];\n var _b = scale.r_invert(sxy0, sxy1), start = _b[0], end = _b[1];\n info[name_1] = {\n start: start,\n end: end\n };\n }\n return info;\n }\n exports.get_info = get_info;\n function scale_range(frame, factor, h_axis, v_axis, center) {\n /*\n * Utility function for zoom tools to calculate/create the zoom_info object\n * of the form required by ``PlotCanvasView.update_range``\n *\n * Parameters:\n * frame : CartesianFrame\n * factor : Number\n * h_axis : Boolean, optional\n * whether to zoom the horizontal axis (default = true)\n * v_axis : Boolean, optional\n * whether to zoom the horizontal axis (default = true)\n * center : object, optional\n * of form {'x': Number, 'y', Number}\n *\n * Returns:\n * object:\n */\n if (h_axis === void 0) {\n h_axis = true;\n }\n if (v_axis === void 0) {\n v_axis = true;\n }\n // clamp the magnitude of factor, if it is > 1 bad things happen\n factor = math_1.clamp(factor, -0.9, 0.9);\n var hfactor = h_axis ? factor : 0;\n var _a = scale_highlow(frame.bbox.h_range, hfactor, center != null ? center.x : undefined), sx0 = _a[0], sx1 = _a[1];\n var xrs = get_info(frame.xscales, [\n sx0,\n sx1\n ]);\n var vfactor = v_axis ? factor : 0;\n var _b = scale_highlow(frame.bbox.v_range, vfactor, center != null ? center.y : undefined), sy0 = _b[0], sy1 = _b[1];\n var yrs = get_info(frame.yscales, [\n sy0,\n sy1\n ]);\n // OK this sucks we can't set factor independently in each direction. It is used\n // for GMap plots, and GMap plots always preserve aspect, so effective the value\n // of 'dimensions' is ignored.\n return {\n xrs: xrs,\n yrs: yrs,\n factor: factor\n };\n }\n exports.scale_range = scale_range; \n}","/*core/vectorization*/\nfunction _(require, module, exports) {\n var types_1 = require(44 /* core/util/types */);\n function isValue(obj) {\n return types_1.isObject(obj) && 'value' in obj;\n }\n exports.isValue = isValue;\n function isField(obj) {\n return types_1.isObject(obj) && 'field' in obj;\n }\n exports.isField = isField; \n}","/*core/view*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var signaling_1 = require(19 /* ./signaling */);\n var string_1 = require(38 /* ./util/string */);\n var View = function (_super) {\n tslib_1.__extends(View, _super);\n function View(options) {\n var _this = _super.call(this) || this;\n _this.removed = new signaling_1.Signal0(_this, 'removed');\n if (options.model != null)\n _this.model = options.model;\n else\n throw new Error('model of a view wasn\\'t configured');\n _this._parent = options.parent;\n _this.id = options.id || string_1.uniqueId();\n _this.initialize(options);\n if (options.connect_signals !== false)\n _this.connect_signals();\n return _this;\n }\n View.prototype.initialize = function (_options) {\n };\n View.prototype.remove = function () {\n this._parent = undefined;\n this.disconnect_signals();\n this.removed.emit();\n };\n View.prototype.toString = function () {\n return this.model.type + 'View(' + this.id + ')';\n };\n Object.defineProperty(View.prototype, 'parent', {\n get: function () {\n if (this._parent !== undefined)\n return this._parent;\n else\n throw new Error('parent of a view wasn\\'t configured');\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(View.prototype, 'is_root', {\n get: function () {\n return this.parent === null;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(View.prototype, 'root', {\n get: function () {\n return this.is_root ? this : this.parent.root;\n },\n enumerable: true,\n configurable: true\n });\n View.prototype.connect_signals = function () {\n };\n View.prototype.disconnect_signals = function () {\n signaling_1.Signal.disconnectReceiver(this);\n };\n View.prototype.notify_finished = function () {\n this.root.notify_finished();\n };\n return View;\n }(signaling_1.Signalable());\n exports.View = View; \n}","/*core/visuals*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var mixins = require(16 /* ./property_mixins */);\n var color_1 = require(27 /* ./util/color */);\n var ContextProperties = function () {\n function ContextProperties(obj, prefix) {\n if (prefix === void 0) {\n prefix = '';\n }\n this.obj = obj;\n this.prefix = prefix;\n // }\n this.cache = {};\n var do_spec = obj.properties[prefix + this.do_attr].spec;\n this.doit = do_spec.value !== null;\n // XXX: can't be `undefined`, see TODOs below.\n for (var _i = 0, _a = this.attrs; _i < _a.length; _i++) {\n var attr = _a[_i];\n this[attr] = obj.properties[prefix + attr];\n }\n }\n ContextProperties.prototype.warm_cache = function (source) {\n for (var _i = 0, _a = this.attrs; _i < _a.length; _i++) {\n var attr = _a[_i];\n var prop = this.obj.properties[this.prefix + attr];\n if (prop.spec.value !== undefined)\n // TODO (bev) better test?\n this.cache[attr] = prop.spec.value;\n else if (source != null)\n this.cache[attr + '_array'] = prop.array(source);\n else\n throw new Error('source is required with a vectorized visual property');\n }\n };\n ContextProperties.prototype.cache_select = function (attr, i) {\n var prop = this.obj.properties[this.prefix + attr];\n var value;\n if (prop.spec.value !== undefined)\n // TODO (bev) better test?\n this.cache[attr] = value = prop.spec.value;\n else\n this.cache[attr] = value = this.cache[attr + '_array'][i];\n return value;\n };\n ContextProperties.prototype.set_vectorize = function (ctx, i) {\n if (this.all_indices != null)\n // all_indices is set by a Visuals instance associated with a CDSView\n this._set_vectorize(ctx, this.all_indices[i]);\n else\n // all_indices is not set for annotations which may have vectorized visual props\n this._set_vectorize(ctx, i);\n };\n return ContextProperties;\n }();\n exports.ContextProperties = ContextProperties;\n var Line = function (_super) {\n tslib_1.__extends(Line, _super);\n function Line() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n Line.prototype.set_value = function (ctx) {\n ctx.strokeStyle = this.line_color.value();\n ctx.globalAlpha = this.line_alpha.value();\n ctx.lineWidth = this.line_width.value();\n ctx.lineJoin = this.line_join.value();\n ctx.lineCap = this.line_cap.value();\n ctx.setLineDash(this.line_dash.value());\n ctx.setLineDashOffset(this.line_dash_offset.value());\n };\n Line.prototype._set_vectorize = function (ctx, i) {\n this.cache_select('line_color', i);\n if (ctx.strokeStyle !== this.cache.line_color)\n ctx.strokeStyle = this.cache.line_color;\n this.cache_select('line_alpha', i);\n if (ctx.globalAlpha !== this.cache.line_alpha)\n ctx.globalAlpha = this.cache.line_alpha;\n this.cache_select('line_width', i);\n if (ctx.lineWidth !== this.cache.line_width)\n ctx.lineWidth = this.cache.line_width;\n this.cache_select('line_join', i);\n if (ctx.lineJoin !== this.cache.line_join)\n ctx.lineJoin = this.cache.line_join;\n this.cache_select('line_cap', i);\n if (ctx.lineCap !== this.cache.line_cap)\n ctx.lineCap = this.cache.line_cap;\n this.cache_select('line_dash', i);\n if (ctx.getLineDash() !== this.cache.line_dash)\n ctx.setLineDash(this.cache.line_dash);\n this.cache_select('line_dash_offset', i);\n if (ctx.getLineDashOffset() !== this.cache.line_dash_offset)\n ctx.setLineDashOffset(this.cache.line_dash_offset);\n };\n Line.prototype.color_value = function () {\n var _a = color_1.color2rgba(this.line_color.value(), this.line_alpha.value()), r = _a[0], g = _a[1], b = _a[2], a = _a[3];\n return 'rgba(' + r * 255 + ',' + g * 255 + ',' + b * 255 + ',' + a + ')';\n };\n return Line;\n }(ContextProperties);\n exports.Line = Line;\n Line.prototype.attrs = Object.keys(mixins.line());\n Line.prototype.do_attr = 'line_color';\n var Fill = function (_super) {\n tslib_1.__extends(Fill, _super);\n function Fill() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n Fill.prototype.set_value = function (ctx) {\n ctx.fillStyle = this.fill_color.value();\n ctx.globalAlpha = this.fill_alpha.value();\n };\n Fill.prototype._set_vectorize = function (ctx, i) {\n this.cache_select('fill_color', i);\n if (ctx.fillStyle !== this.cache.fill_color)\n ctx.fillStyle = this.cache.fill_color;\n this.cache_select('fill_alpha', i);\n if (ctx.globalAlpha !== this.cache.fill_alpha)\n ctx.globalAlpha = this.cache.fill_alpha;\n };\n Fill.prototype.color_value = function () {\n var _a = color_1.color2rgba(this.fill_color.value(), this.fill_alpha.value()), r = _a[0], g = _a[1], b = _a[2], a = _a[3];\n return 'rgba(' + r * 255 + ',' + g * 255 + ',' + b * 255 + ',' + a + ')';\n };\n return Fill;\n }(ContextProperties);\n exports.Fill = Fill;\n Fill.prototype.attrs = Object.keys(mixins.fill());\n Fill.prototype.do_attr = 'fill_color';\n var Text = function (_super) {\n tslib_1.__extends(Text, _super);\n function Text() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n Text.prototype.cache_select = function (name, i) {\n var value;\n if (name == 'font') {\n _super.prototype.cache_select.call(this, 'text_font_style', i);\n _super.prototype.cache_select.call(this, 'text_font_size', i);\n _super.prototype.cache_select.call(this, 'text_font', i);\n var _a = this.cache, text_font_style = _a.text_font_style, text_font_size = _a.text_font_size, text_font = _a.text_font;\n this.cache.font = value = text_font_style + ' ' + text_font_size + ' ' + text_font;\n } else\n value = _super.prototype.cache_select.call(this, name, i);\n return value;\n };\n Text.prototype.font_value = function () {\n var font = this.text_font.value();\n var font_size = this.text_font_size.value();\n var font_style = this.text_font_style.value();\n return font_style + ' ' + font_size + ' ' + font;\n };\n Text.prototype.color_value = function () {\n var _a = color_1.color2rgba(this.text_color.value(), this.text_alpha.value()), r = _a[0], g = _a[1], b = _a[2], a = _a[3];\n return 'rgba(' + r * 255 + ',' + g * 255 + ',' + b * 255 + ',' + a + ')';\n };\n Text.prototype.set_value = function (ctx) {\n ctx.font = this.font_value();\n ctx.fillStyle = this.text_color.value();\n ctx.globalAlpha = this.text_alpha.value();\n ctx.textAlign = this.text_align.value();\n ctx.textBaseline = this.text_baseline.value();\n };\n Text.prototype._set_vectorize = function (ctx, i) {\n this.cache_select('font', i);\n if (ctx.font !== this.cache.font)\n ctx.font = this.cache.font;\n this.cache_select('text_color', i);\n if (ctx.fillStyle !== this.cache.text_color)\n ctx.fillStyle = this.cache.text_color;\n this.cache_select('text_alpha', i);\n if (ctx.globalAlpha !== this.cache.text_alpha)\n ctx.globalAlpha = this.cache.text_alpha;\n this.cache_select('text_align', i);\n if (ctx.textAlign !== this.cache.text_align)\n ctx.textAlign = this.cache.text_align;\n this.cache_select('text_baseline', i);\n if (ctx.textBaseline !== this.cache.text_baseline)\n ctx.textBaseline = this.cache.text_baseline;\n };\n return Text;\n }(ContextProperties);\n exports.Text = Text;\n Text.prototype.attrs = Object.keys(mixins.text());\n Text.prototype.do_attr = 'text_color';\n var Visuals = function () {\n function Visuals(model) {\n for (var _i = 0, _a = model.mixins; _i < _a.length; _i++) {\n var spec = _a[_i];\n var _b = spec.split(':'), name_1 = _b[0], _c = _b[1], prefix = _c === void 0 ? '' : _c;\n var cls = void 0;\n switch (name_1) {\n case 'line':\n cls = Line;\n break;\n case 'fill':\n cls = Fill;\n break;\n case 'text':\n cls = Text;\n break;\n default:\n throw new Error('unknown visual: ' + name_1);\n }\n this[prefix + name_1] = new cls(model, prefix);\n }\n }\n Visuals.prototype.warm_cache = function (source) {\n for (var name_2 in this) {\n if (this.hasOwnProperty(name_2)) {\n var prop = this[name_2];\n if (prop instanceof ContextProperties)\n prop.warm_cache(source);\n }\n }\n };\n Visuals.prototype.set_all_indices = function (all_indices) {\n for (var name_3 in this) {\n if (this.hasOwnProperty(name_3)) {\n var prop = this[name_3];\n if (prop instanceof ContextProperties)\n prop.all_indices = all_indices;\n }\n }\n };\n return Visuals;\n }();\n exports.Visuals = Visuals; \n}","/*document*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var base_1 = require(0 /* ./base */);\n var version_1 = require(265 /* ./version */);\n var logging_1 = require(14 /* ./core/logging */);\n var bokeh_events_1 = require(3 /* core/bokeh_events */);\n var has_props_1 = require(8 /* ./core/has_props */);\n var signaling_1 = require(19 /* ./core/signaling */);\n var refs_1 = require(34 /* ./core/util/refs */);\n var serialization_1 = require(36 /* ./core/util/serialization */);\n var data_structures_1 = require(29 /* ./core/util/data_structures */);\n var array_1 = require(21 /* ./core/util/array */);\n var object_1 = require(32 /* ./core/util/object */);\n var eq_1 = require(30 /* ./core/util/eq */);\n var types_1 = require(44 /* ./core/util/types */);\n var layout_dom_1 = require(146 /* ./models/layouts/layout_dom */);\n var column_data_source_1 = require(184 /* ./models/sources/column_data_source */);\n var model_1 = require(53 /* ./model */);\n var EventManager = function () {\n function EventManager(document) {\n this.document = document;\n // Dispatches events to the subscribed models\n this.session = null;\n this.subscribed_models = new data_structures_1.Set();\n }\n EventManager.prototype.send_event = function (event) {\n // Send message to Python via session\n if (this.session != null)\n this.session.send_event(event);\n };\n EventManager.prototype.trigger = function (event) {\n for (var _i = 0, _a = this.subscribed_models.values; _i < _a.length; _i++) {\n var model_id = _a[_i];\n if (event.model_id != null && event.model_id !== model_id)\n continue;\n var model = this.document._all_models[model_id];\n if (model != null)\n model._process_event(event);\n }\n };\n return EventManager;\n }();\n exports.EventManager = EventManager;\n var DocumentChangedEvent = function () {\n function DocumentChangedEvent(document) {\n this.document = document;\n }\n return DocumentChangedEvent;\n }();\n exports.DocumentChangedEvent = DocumentChangedEvent;\n var ModelChangedEvent = function (_super) {\n tslib_1.__extends(ModelChangedEvent, _super);\n function ModelChangedEvent(document, model, attr, old, new_, setter_id) {\n var _this = _super.call(this, document) || this;\n _this.model = model;\n _this.attr = attr;\n _this.old = old;\n _this.new_ = new_;\n _this.setter_id = setter_id;\n return _this;\n }\n ModelChangedEvent.prototype.json = function (references) {\n if (this.attr === 'id') {\n throw new Error('\\'id\\' field should never change, whatever code just set it is wrong');\n }\n var value = this.new_;\n var value_json = has_props_1.HasProps._value_to_json(this.attr, value, this.model);\n var value_refs = {};\n has_props_1.HasProps._value_record_references(value, value_refs, true);\n // true = recurse\n if (this.model.id in value_refs && this.model !== value) {\n // we know we don't want a whole new copy of the obj we're\n // patching unless it's also the value itself\n delete value_refs[this.model.id];\n }\n for (var id in value_refs) {\n references[id] = value_refs[id];\n }\n return {\n kind: 'ModelChanged',\n model: this.model.ref(),\n attr: this.attr,\n new: value_json\n };\n };\n return ModelChangedEvent;\n }(DocumentChangedEvent);\n exports.ModelChangedEvent = ModelChangedEvent;\n var TitleChangedEvent = function (_super) {\n tslib_1.__extends(TitleChangedEvent, _super);\n function TitleChangedEvent(document, title, setter_id) {\n var _this = _super.call(this, document) || this;\n _this.title = title;\n _this.setter_id = setter_id;\n return _this;\n }\n TitleChangedEvent.prototype.json = function (_references) {\n return {\n kind: 'TitleChanged',\n title: this.title\n };\n };\n return TitleChangedEvent;\n }(DocumentChangedEvent);\n exports.TitleChangedEvent = TitleChangedEvent;\n var RootAddedEvent = function (_super) {\n tslib_1.__extends(RootAddedEvent, _super);\n function RootAddedEvent(document, model, setter_id) {\n var _this = _super.call(this, document) || this;\n _this.model = model;\n _this.setter_id = setter_id;\n return _this;\n }\n RootAddedEvent.prototype.json = function (references) {\n has_props_1.HasProps._value_record_references(this.model, references, true);\n return {\n kind: 'RootAdded',\n model: this.model.ref()\n };\n };\n return RootAddedEvent;\n }(DocumentChangedEvent);\n exports.RootAddedEvent = RootAddedEvent;\n var RootRemovedEvent = function (_super) {\n tslib_1.__extends(RootRemovedEvent, _super);\n function RootRemovedEvent(document, model, setter_id) {\n var _this = _super.call(this, document) || this;\n _this.model = model;\n _this.setter_id = setter_id;\n return _this;\n }\n RootRemovedEvent.prototype.json = function (_references) {\n return {\n kind: 'RootRemoved',\n model: this.model.ref()\n };\n };\n return RootRemovedEvent;\n }(DocumentChangedEvent);\n exports.RootRemovedEvent = RootRemovedEvent;\n exports.documents = [];\n exports.DEFAULT_TITLE = 'Bokeh Application';\n // This class should match the API of the Python Document class\n // as much as possible.\n var Document = function () {\n function Document() {\n exports.documents.push(this);\n this._init_timestamp = Date.now();\n this._title = exports.DEFAULT_TITLE;\n this._roots = [];\n this._all_models = {};\n this._all_models_by_name = new data_structures_1.MultiDict();\n this._all_models_freeze_count = 0;\n this._callbacks = [];\n this.event_manager = new EventManager(this);\n this.idle = new signaling_1.Signal0(this, 'idle');\n this._idle_roots = new WeakMap();\n // TODO: WeakSet would be better\n this._interactive_timestamp = null;\n this._interactive_plot = null;\n }\n Object.defineProperty(Document.prototype, 'layoutables', {\n get: function () {\n return this._roots.filter(function (root) {\n return root instanceof layout_dom_1.LayoutDOM;\n });\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Document.prototype, 'is_idle', {\n get: function () {\n for (var _i = 0, _a = this.layoutables; _i < _a.length; _i++) {\n var root = _a[_i];\n if (!this._idle_roots.has(root))\n return false;\n }\n return true;\n },\n enumerable: true,\n configurable: true\n });\n Document.prototype.notify_idle = function (model) {\n this._idle_roots.set(model, true);\n if (this.is_idle) {\n logging_1.logger.info('document idle at ' + (Date.now() - this._init_timestamp) + ' ms');\n this.idle.emit();\n }\n };\n Document.prototype.clear = function () {\n this._push_all_models_freeze();\n try {\n while (this._roots.length > 0) {\n this.remove_root(this._roots[0]);\n }\n } finally {\n this._pop_all_models_freeze();\n }\n };\n Document.prototype.interactive_start = function (plot) {\n if (this._interactive_plot == null) {\n this._interactive_plot = plot;\n this._interactive_plot.trigger_event(new bokeh_events_1.LODStart({}));\n }\n this._interactive_timestamp = Date.now();\n };\n Document.prototype.interactive_stop = function (plot) {\n if (this._interactive_plot != null && this._interactive_plot.id === plot.id) {\n this._interactive_plot.trigger_event(new bokeh_events_1.LODEnd({}));\n }\n this._interactive_plot = null;\n this._interactive_timestamp = null;\n };\n Document.prototype.interactive_duration = function () {\n if (this._interactive_timestamp == null)\n return -1;\n else\n return Date.now() - this._interactive_timestamp;\n };\n Document.prototype.destructively_move = function (dest_doc) {\n if (dest_doc === this) {\n throw new Error('Attempted to overwrite a document with itself');\n }\n dest_doc.clear();\n // we have to remove ALL roots before adding any\n // to the new doc or else models referenced from multiple\n // roots could be in both docs at once, which isn't allowed.\n var roots = array_1.copy(this._roots);\n this.clear();\n for (var _i = 0, roots_1 = roots; _i < roots_1.length; _i++) {\n var root = roots_1[_i];\n if (root.document != null)\n throw new Error('Somehow we didn\\'t detach ' + root);\n }\n if (Object.keys(this._all_models).length !== 0) {\n throw new Error('this._all_models still had stuff in it: ' + this._all_models);\n }\n for (var _a = 0, roots_2 = roots; _a < roots_2.length; _a++) {\n var root = roots_2[_a];\n dest_doc.add_root(root);\n }\n dest_doc.set_title(this._title);\n };\n // TODO other fields of doc\n Document.prototype._push_all_models_freeze = function () {\n this._all_models_freeze_count += 1;\n };\n Document.prototype._pop_all_models_freeze = function () {\n this._all_models_freeze_count -= 1;\n if (this._all_models_freeze_count === 0) {\n this._recompute_all_models();\n }\n };\n /*protected*/\n Document.prototype._invalidate_all_models = function () {\n logging_1.logger.debug('invalidating document models');\n // if freeze count is > 0, we'll recompute on unfreeze\n if (this._all_models_freeze_count === 0) {\n this._recompute_all_models();\n }\n };\n Document.prototype._recompute_all_models = function () {\n var new_all_models_set = new data_structures_1.Set();\n for (var _i = 0, _a = this._roots; _i < _a.length; _i++) {\n var r = _a[_i];\n new_all_models_set = new_all_models_set.union(r.references());\n }\n var old_all_models_set = new data_structures_1.Set(object_1.values(this._all_models));\n var to_detach = old_all_models_set.diff(new_all_models_set);\n var to_attach = new_all_models_set.diff(old_all_models_set);\n var recomputed = {};\n for (var _b = 0, _c = new_all_models_set.values; _b < _c.length; _b++) {\n var m = _c[_b];\n recomputed[m.id] = m;\n }\n for (var _d = 0, _e = to_detach.values; _d < _e.length; _d++) {\n var d = _e[_d];\n d.detach_document();\n if (d instanceof model_1.Model && d.name != null)\n this._all_models_by_name.remove_value(d.name, d);\n }\n for (var _f = 0, _g = to_attach.values; _f < _g.length; _f++) {\n var a = _g[_f];\n a.attach_document(this);\n if (a instanceof model_1.Model && a.name != null)\n this._all_models_by_name.add_value(a.name, a);\n }\n this._all_models = recomputed;\n };\n Document.prototype.roots = function () {\n return this._roots;\n };\n Document.prototype.add_root = function (model, setter_id) {\n logging_1.logger.debug('Adding root: ' + model);\n if (array_1.includes(this._roots, model))\n return;\n this._push_all_models_freeze();\n try {\n this._roots.push(model);\n } finally {\n this._pop_all_models_freeze();\n }\n this._trigger_on_change(new RootAddedEvent(this, model, setter_id));\n };\n Document.prototype.remove_root = function (model, setter_id) {\n var i = this._roots.indexOf(model);\n if (i < 0)\n return;\n this._push_all_models_freeze();\n try {\n this._roots.splice(i, 1);\n } finally {\n this._pop_all_models_freeze();\n }\n this._trigger_on_change(new RootRemovedEvent(this, model, setter_id));\n };\n Document.prototype.title = function () {\n return this._title;\n };\n Document.prototype.set_title = function (title, setter_id) {\n if (title !== this._title) {\n this._title = title;\n this._trigger_on_change(new TitleChangedEvent(this, title, setter_id));\n }\n };\n Document.prototype.get_model_by_id = function (model_id) {\n if (model_id in this._all_models) {\n return this._all_models[model_id];\n } else {\n return null;\n }\n };\n Document.prototype.get_model_by_name = function (name) {\n return this._all_models_by_name.get_one(name, 'Multiple models are named \\'' + name + '\\'');\n };\n Document.prototype.on_change = function (callback) {\n if (!array_1.includes(this._callbacks, callback))\n this._callbacks.push(callback);\n };\n Document.prototype.remove_on_change = function (callback) {\n var i = this._callbacks.indexOf(callback);\n if (i >= 0)\n this._callbacks.splice(i, 1);\n };\n Document.prototype._trigger_on_change = function (event) {\n for (var _i = 0, _a = this._callbacks; _i < _a.length; _i++) {\n var cb = _a[_i];\n cb(event);\n }\n };\n // called by the model\n Document.prototype._notify_change = function (model, attr, old, new_, options) {\n if (attr === 'name') {\n this._all_models_by_name.remove_value(old, model);\n if (new_ != null)\n this._all_models_by_name.add_value(new_, model);\n }\n var setter_id = options != null ? options.setter_id : void 0;\n this._trigger_on_change(new ModelChangedEvent(this, model, attr, old, new_, setter_id));\n };\n Document._references_json = function (references, include_defaults) {\n if (include_defaults === void 0) {\n include_defaults = true;\n }\n var references_json = [];\n for (var _i = 0, references_1 = references; _i < references_1.length; _i++) {\n var r = references_1[_i];\n var ref = r.ref();\n ref.attributes = r.attributes_as_json(include_defaults);\n // server doesn't want id in here since it's already in ref above\n delete ref.attributes.id;\n references_json.push(ref);\n }\n return references_json;\n };\n Document._instantiate_object = function (obj_id, obj_type, obj_attrs) {\n var full_attrs = object_1.extend({}, obj_attrs, {\n id: obj_id,\n __deferred__: true\n });\n var model = base_1.Models(obj_type);\n return new model(full_attrs);\n };\n // given a JSON representation of all models in a graph, return a\n // dict of new model objects\n Document._instantiate_references_json = function (references_json, existing_models) {\n // Create all instances, but without setting their props\n var references = {};\n for (var _i = 0, references_json_1 = references_json; _i < references_json_1.length; _i++) {\n var obj = references_json_1[_i];\n var obj_id = obj.id;\n var obj_type = obj.type;\n var obj_attrs = obj.attributes || {};\n var instance = void 0;\n if (obj_id in existing_models)\n instance = existing_models[obj_id];\n else {\n instance = Document._instantiate_object(obj_id, obj_type, obj_attrs);\n if (obj.subtype != null)\n instance.set_subtype(obj.subtype);\n }\n references[instance.id] = instance;\n }\n return references;\n };\n // if v looks like a ref, or a collection, resolve it, otherwise return it unchanged\n // recurse into collections but not into HasProps\n Document._resolve_refs = function (value, old_references, new_references) {\n function resolve_ref(v) {\n if (refs_1.is_ref(v)) {\n if (v.id in old_references)\n return old_references[v.id];\n else if (v.id in new_references)\n return new_references[v.id];\n else\n throw new Error('reference ' + JSON.stringify(v) + ' isn\\'t known (not in Document?)');\n } else if (types_1.isArray(v))\n return resolve_array(v);\n else if (types_1.isObject(v))\n return resolve_dict(v);\n else\n return v;\n }\n function resolve_array(array) {\n var results = [];\n for (var _i = 0, array_2 = array; _i < array_2.length; _i++) {\n var v = array_2[_i];\n results.push(resolve_ref(v));\n }\n return results;\n }\n function resolve_dict(dict) {\n var resolved = {};\n for (var k in dict) {\n var v = dict[k];\n resolved[k] = resolve_ref(v);\n }\n return resolved;\n }\n return resolve_ref(value);\n };\n // given a JSON representation of all models in a graph and new\n // model instances, set the properties on the models from the\n // JSON\n Document._initialize_references_json = function (references_json, old_references, new_references) {\n var to_update = {};\n for (var _i = 0, references_json_2 = references_json; _i < references_json_2.length; _i++) {\n var obj = references_json_2[_i];\n var obj_id = obj.id;\n var obj_attrs = obj.attributes;\n var was_new = !(obj_id in old_references);\n var instance = !was_new ? old_references[obj_id] : new_references[obj_id];\n // replace references with actual instances in obj_attrs\n var resolved_attrs = Document._resolve_refs(obj_attrs, old_references, new_references);\n to_update[instance.id] = [\n instance,\n resolved_attrs,\n was_new\n ];\n }\n function foreach_depth_first(items, f) {\n var already_started = {};\n function foreach_value(v) {\n if (v instanceof has_props_1.HasProps) {\n // note that we ignore instances that aren't updated (not in to_update)\n if (!(v.id in already_started) && v.id in items) {\n already_started[v.id] = true;\n var _a = items[v.id], attrs = _a[1], was_new = _a[2];\n for (var a in attrs) {\n var e = attrs[a];\n foreach_value(e);\n }\n f(v, attrs, was_new);\n }\n } else if (types_1.isArray(v)) {\n for (var _i = 0, v_1 = v; _i < v_1.length; _i++) {\n var e = v_1[_i];\n foreach_value(e);\n }\n } else if (types_1.isObject(v)) {\n for (var k in v) {\n var e = v[k];\n foreach_value(e);\n }\n }\n }\n for (var k in items) {\n var _a = items[k], instance = _a[0];\n foreach_value(instance);\n }\n }\n // this first pass removes all 'refs' replacing them with real instances\n foreach_depth_first(to_update, function (instance, attrs, was_new) {\n if (was_new)\n instance.setv(attrs, { silent: true });\n });\n // after removing all the refs, we can run the initialize code safely\n foreach_depth_first(to_update, function (instance, _attrs, was_new) {\n if (was_new)\n instance.finalize();\n });\n };\n Document._event_for_attribute_change = function (changed_obj, key, new_value, doc, value_refs) {\n var changed_model = doc.get_model_by_id(changed_obj.id);\n // XXX!\n if (!changed_model.attribute_is_serializable(key))\n return null;\n else {\n var event_1 = {\n kind: 'ModelChanged',\n model: {\n id: changed_obj.id,\n type: changed_obj.type\n },\n attr: key,\n new: new_value\n };\n has_props_1.HasProps._json_record_references(doc, new_value, value_refs, true);\n // true = recurse\n return event_1;\n }\n };\n Document._events_to_sync_objects = function (from_obj, to_obj, to_doc, value_refs) {\n var from_keys = Object.keys(from_obj.attributes);\n //XXX!\n var to_keys = Object.keys(to_obj.attributes);\n //XXX!\n var removed = array_1.difference(from_keys, to_keys);\n var added = array_1.difference(to_keys, from_keys);\n var shared = array_1.intersection(from_keys, to_keys);\n var events = [];\n for (var _i = 0, removed_1 = removed; _i < removed_1.length; _i++) {\n var key = removed_1[_i];\n // we don't really have a \"remove\" event - not sure this ever\n // happens even. One way this could happen is if the server\n // does include_defaults=True and we do\n // include_defaults=false ... in that case it'd be best to\n // just ignore this probably. Warn about it, could mean\n // there's a bug if we don't have a key that the server sent.\n logging_1.logger.warn('Server sent key ' + key + ' but we don\\'t seem to have it in our JSON');\n }\n for (var _a = 0, added_1 = added; _a < added_1.length; _a++) {\n var key = added_1[_a];\n var new_value = to_obj.attributes[key];\n // XXX!\n events.push(Document._event_for_attribute_change(from_obj, key, new_value, to_doc, value_refs));\n }\n for (var _b = 0, shared_1 = shared; _b < shared_1.length; _b++) {\n var key = shared_1[_b];\n var old_value = from_obj.attributes[key];\n // XXX!\n var new_value = to_obj.attributes[key];\n // XXX!\n if (old_value == null && new_value == null) {\n } else if (old_value == null || new_value == null) {\n events.push(Document._event_for_attribute_change(from_obj, key, new_value, to_doc, value_refs));\n } else {\n if (!eq_1.isEqual(old_value, new_value))\n events.push(Document._event_for_attribute_change(from_obj, key, new_value, to_doc, value_refs));\n }\n }\n return events.filter(function (e) {\n return e != null;\n });\n };\n // we use this to detect changes during document deserialization\n // (in model constructors and initializers)\n Document._compute_patch_since_json = function (from_json, to_doc) {\n var to_json = to_doc.to_json(false);\n // include_defaults=false\n function refs(json) {\n var result = {};\n for (var _i = 0, _a = json.roots.references; _i < _a.length; _i++) {\n var obj = _a[_i];\n result[obj.id] = obj;\n }\n return result;\n }\n var from_references = refs(from_json);\n var from_roots = {};\n var from_root_ids = [];\n for (var _i = 0, _a = from_json.roots.root_ids; _i < _a.length; _i++) {\n var r = _a[_i];\n from_roots[r] = from_references[r];\n from_root_ids.push(r);\n }\n var to_references = refs(to_json);\n var to_roots = {};\n var to_root_ids = [];\n for (var _b = 0, _c = to_json.roots.root_ids; _b < _c.length; _b++) {\n var r = _c[_b];\n to_roots[r] = to_references[r];\n to_root_ids.push(r);\n }\n from_root_ids.sort();\n to_root_ids.sort();\n if (array_1.difference(from_root_ids, to_root_ids).length > 0 || array_1.difference(to_root_ids, from_root_ids).length > 0) {\n // this would arise if someone does add_root/remove_root during\n // document deserialization, hopefully they won't ever do so.\n throw new Error('Not implemented: computing add/remove of document roots');\n }\n var value_refs = {};\n var events = [];\n for (var id in to_doc._all_models) {\n if (id in from_references) {\n var update_model_events = Document._events_to_sync_objects(from_references[id], to_references[id], to_doc, value_refs);\n events = events.concat(update_model_events);\n }\n }\n return {\n references: Document._references_json(object_1.values(value_refs), false),\n events: events\n };\n };\n Document.prototype.to_json_string = function (include_defaults) {\n if (include_defaults === void 0) {\n include_defaults = true;\n }\n return JSON.stringify(this.to_json(include_defaults));\n };\n Document.prototype.to_json = function (include_defaults) {\n if (include_defaults === void 0) {\n include_defaults = true;\n }\n var root_ids = this._roots.map(function (r) {\n return r.id;\n });\n var root_references = object_1.values(this._all_models);\n return {\n title: this._title,\n roots: {\n root_ids: root_ids,\n references: Document._references_json(root_references, include_defaults)\n }\n };\n };\n Document.from_json_string = function (s) {\n var json = JSON.parse(s);\n return Document.from_json(json);\n };\n Document.from_json = function (json) {\n logging_1.logger.debug('Creating Document from JSON');\n var py_version = json.version;\n // XXX!\n var is_dev = py_version.indexOf('+') !== -1 || py_version.indexOf('-') !== -1;\n var versions_string = 'Library versions: JS (' + version_1.version + ') / Python (' + py_version + ')';\n if (!is_dev && version_1.version !== py_version) {\n logging_1.logger.warn('JS/Python version mismatch');\n logging_1.logger.warn(versions_string);\n } else\n logging_1.logger.debug(versions_string);\n var roots_json = json.roots;\n var root_ids = roots_json.root_ids;\n var references_json = roots_json.references;\n var references = Document._instantiate_references_json(references_json, {});\n Document._initialize_references_json(references_json, {}, references);\n var doc = new Document();\n for (var _i = 0, root_ids_1 = root_ids; _i < root_ids_1.length; _i++) {\n var r = root_ids_1[_i];\n doc.add_root(references[r]);\n }\n // XXX: HasProps\n doc.set_title(json.title);\n // XXX!\n return doc;\n };\n Document.prototype.replace_with_json = function (json) {\n var replacement = Document.from_json(json);\n replacement.destructively_move(this);\n };\n Document.prototype.create_json_patch_string = function (events) {\n return JSON.stringify(this.create_json_patch(events));\n };\n Document.prototype.create_json_patch = function (events) {\n var references = {};\n var json_events = [];\n for (var _i = 0, events_1 = events; _i < events_1.length; _i++) {\n var event_2 = events_1[_i];\n if (event_2.document !== this) {\n logging_1.logger.warn('Cannot create a patch using events from a different document, event had ', event_2.document, ' we are ', this);\n throw new Error('Cannot create a patch using events from a different document');\n }\n json_events.push(event_2.json(references));\n }\n return {\n events: json_events,\n references: Document._references_json(object_1.values(references))\n };\n };\n Document.prototype.apply_json_patch = function (patch, buffers, setter_id) {\n var references_json = patch.references;\n var events_json = patch.events;\n var references = Document._instantiate_references_json(references_json, this._all_models);\n // The model being changed isn't always in references so add it in\n for (var _i = 0, events_json_1 = events_json; _i < events_json_1.length; _i++) {\n var event_json = events_json_1[_i];\n switch (event_json.kind) {\n case 'RootAdded':\n case 'RootRemoved':\n case 'ModelChanged': {\n var model_id = event_json.model.id;\n if (model_id in this._all_models) {\n references[model_id] = this._all_models[model_id];\n } else {\n if (!(model_id in references)) {\n logging_1.logger.warn('Got an event for unknown model ', event_json.model);\n throw new Error('event model wasn\\'t known');\n }\n }\n break;\n }\n }\n }\n // split references into old and new so we know whether to initialize or update\n var old_references = {};\n var new_references = {};\n for (var id in references) {\n var value = references[id];\n if (id in this._all_models)\n old_references[id] = value;\n else\n new_references[id] = value;\n }\n Document._initialize_references_json(references_json, old_references, new_references);\n for (var _a = 0, events_json_2 = events_json; _a < events_json_2.length; _a++) {\n var event_json = events_json_2[_a];\n switch (event_json.kind) {\n case 'ModelChanged': {\n var patched_id = event_json.model.id;\n if (!(patched_id in this._all_models)) {\n throw new Error('Cannot apply patch to ' + patched_id + ' which is not in the document');\n }\n var patched_obj = this._all_models[patched_id];\n var attr = event_json.attr;\n var model_type = event_json.model.type;\n // XXXX currently still need this first branch, some updates (initial?) go through here\n if (attr === 'data' && model_type === 'ColumnDataSource') {\n var _b = serialization_1.decode_column_data(event_json.new, buffers), data = _b[0], shapes = _b[1];\n patched_obj.setv({\n _shapes: shapes,\n data: data\n }, { setter_id: setter_id });\n } else {\n var value = Document._resolve_refs(event_json.new, old_references, new_references);\n patched_obj.setv((_c = {}, _c[attr] = value, _c), { setter_id: setter_id });\n }\n break;\n }\n case 'ColumnDataChanged': {\n var column_source_id = event_json.column_source.id;\n if (!(column_source_id in this._all_models)) {\n throw new Error('Cannot stream to ' + column_source_id + ' which is not in the document');\n }\n var column_source = this._all_models[column_source_id];\n var _d = serialization_1.decode_column_data(event_json.new, buffers), data = _d[0], shapes = _d[1];\n if (event_json.cols != null) {\n for (var k in column_source.data) {\n if (!(k in data)) {\n data[k] = column_source.data[k];\n }\n }\n for (var k in column_source._shapes) {\n if (!(k in shapes)) {\n shapes[k] = column_source._shapes[k];\n }\n }\n }\n column_source.setv({\n _shapes: shapes,\n data: data\n }, {\n setter_id: setter_id,\n check_eq: false\n });\n break;\n }\n case 'ColumnsStreamed': {\n var column_source_id = event_json.column_source.id;\n if (!(column_source_id in this._all_models)) {\n throw new Error('Cannot stream to ' + column_source_id + ' which is not in the document');\n }\n var column_source = this._all_models[column_source_id];\n if (!(column_source instanceof column_data_source_1.ColumnDataSource)) {\n throw new Error('Cannot stream to non-ColumnDataSource');\n }\n var data = event_json.data;\n var rollover = event_json.rollover;\n column_source.stream(data, rollover);\n break;\n }\n case 'ColumnsPatched': {\n var column_source_id = event_json.column_source.id;\n if (!(column_source_id in this._all_models)) {\n throw new Error('Cannot patch ' + column_source_id + ' which is not in the document');\n }\n var column_source = this._all_models[column_source_id];\n if (!(column_source instanceof column_data_source_1.ColumnDataSource)) {\n throw new Error('Cannot patch non-ColumnDataSource');\n }\n var patches = event_json.patches;\n column_source.patch(patches);\n break;\n }\n case 'RootAdded': {\n var root_id = event_json.model.id;\n var root_obj = references[root_id];\n this.add_root(root_obj, setter_id);\n // XXX: HasProps\n break;\n }\n case 'RootRemoved': {\n var root_id = event_json.model.id;\n var root_obj = references[root_id];\n this.remove_root(root_obj, setter_id);\n // XXX: HasProps\n break;\n }\n case 'TitleChanged': {\n this.set_title(event_json.title, setter_id);\n break;\n }\n default:\n throw new Error('Unknown patch event ' + JSON.stringify(event_json));\n }\n }\n var _c;\n };\n return Document;\n }();\n exports.Document = Document; \n}","/*embed*/\nfunction _(require, module, exports) {\n var base = require(0 /* ./base */);\n var logging_1 = require(14 /* ./core/logging */);\n var document_1 = require(50 /* ./document */);\n var dom_1 = require(5 /* ./core/dom */);\n var callback_1 = require(25 /* ./core/util/callback */);\n var string_1 = require(38 /* ./core/util/string */);\n var object_1 = require(32 /* ./core/util/object */);\n var types_1 = require(44 /* ./core/util/types */);\n var receiver_1 = require(263 /* ./protocol/receiver */);\n var connection_1 = require(1 /* ./client/connection */);\n exports.kernels = {};\n // Matches Bokeh CSS class selector. Setting all Bokeh parent element class names\n // with this var prevents user configurations where css styling is unset.\n exports.BOKEH_ROOT = 'bk-root';\n function _handle_notebook_comms(receiver, comm_msg) {\n if (comm_msg.buffers.length > 0)\n receiver.consume(comm_msg.buffers[0].buffer);\n else\n receiver.consume(comm_msg.content.data);\n var msg = receiver.message;\n if (msg != null)\n this.apply_json_patch(msg.content, msg.buffers);\n }\n function _init_comms(target, doc) {\n if (typeof Jupyter !== 'undefined' && Jupyter.notebook.kernel != null) {\n logging_1.logger.info('Registering Jupyter comms for target ' + target);\n var comm_manager = Jupyter.notebook.kernel.comm_manager;\n try {\n comm_manager.register_target(target, function (comm) {\n logging_1.logger.info('Registering Jupyter comms for target ' + target);\n var r = new receiver_1.Receiver();\n comm.on_msg(_handle_notebook_comms.bind(doc, r));\n });\n } catch (e) {\n logging_1.logger.warn('Jupyter comms failed to register. push_notebook() will not function. (exception reported: ' + e + ')');\n }\n } else if (doc.roots()[0].id in exports.kernels) {\n logging_1.logger.info('Registering JupyterLab comms for target ' + target);\n var kernel = exports.kernels[doc.roots()[0].id];\n try {\n kernel.registerCommTarget(target, function (comm) {\n logging_1.logger.info('Registering JupyterLab comms for target ' + target);\n var r = new receiver_1.Receiver();\n comm.onMsg = _handle_notebook_comms.bind(doc, r);\n });\n } catch (e) {\n logging_1.logger.warn('Jupyter comms failed to register. push_notebook() will not function. (exception reported: ' + e + ')');\n }\n } else {\n console.warn('Jupyter notebooks comms not available. push_notebook() will not function. If running JupyterLab ensure the latest jupyterlab_bokeh extension is installed. In an exported notebook this warning is expected.');\n }\n }\n function _create_view(model) {\n var view = new model.default_view({\n model: model,\n parent: null\n });\n base.index[model.id] = view;\n return view;\n }\n function _get_element(item) {\n var element_id = item.elementid;\n var elem = document.getElementById(element_id);\n if (elem == null)\n throw new Error('Error rendering Bokeh model: could not find tag with id: ' + element_id);\n if (!document.body.contains(elem))\n throw new Error('Error rendering Bokeh model: element with id \\'' + element_id + '\\' must be under
');\n // if autoload script, replace script tag with div for embedding\n if (elem.tagName == 'SCRIPT') {\n fill_render_item_from_script_tag(elem, item);\n var container = dom_1.div({ class: exports.BOKEH_ROOT });\n dom_1.replaceWith(elem, container);\n var child = dom_1.div();\n container.appendChild(child);\n elem = child;\n }\n return elem;\n }\n // Replace element with a view of model_id from document\n function add_model_standalone(model_id, element, doc) {\n var model = doc.get_model_by_id(model_id);\n if (model == null)\n throw new Error('Model ' + model_id + ' was not in document ' + doc);\n var view = _create_view(model);\n view.renderTo(element, true);\n return view;\n }\n exports.add_model_standalone = add_model_standalone;\n // Fill element with the roots from doc\n function add_document_standalone(document, element, use_for_title) {\n if (use_for_title === void 0) {\n use_for_title = false;\n }\n // this is a LOCAL index of views used only by this particular rendering\n // call, so we can remove the views we create.\n var views = {};\n function render_model(model) {\n var view = _create_view(model);\n view.renderTo(element);\n views[model.id] = view;\n }\n function unrender_model(model) {\n if (model.id in views) {\n var view = views[model.id];\n element.removeChild(view.el);\n delete views[model.id];\n delete base.index[model.id];\n }\n }\n for (var _i = 0, _a = document.roots(); _i < _a.length; _i++) {\n var model = _a[_i];\n render_model(model);\n }\n if (use_for_title)\n window.document.title = document.title();\n document.on_change(function (event) {\n if (event instanceof document_1.RootAddedEvent)\n render_model(event.model);\n else if (event instanceof document_1.RootRemovedEvent)\n unrender_model(event.model);\n else if (use_for_title && event instanceof document_1.TitleChangedEvent)\n window.document.title = event.title;\n });\n return views;\n }\n exports.add_document_standalone = add_document_standalone;\n // map { websocket url to map { session id to promise of ClientSession } }\n var _sessions = {};\n function _get_session(websocket_url, session_id, args_string) {\n if (!(websocket_url in _sessions))\n _sessions[websocket_url] = {};\n var subsessions = _sessions[websocket_url];\n if (!(session_id in subsessions))\n subsessions[session_id] = connection_1.pull_session(websocket_url, session_id, args_string);\n return subsessions[session_id];\n }\n // Fill element with the roots from session_id\n function add_document_from_session(element, websocket_url, session_id, use_for_title) {\n var args_string = window.location.search.substr(1);\n var promise = _get_session(websocket_url, session_id, args_string);\n return promise.then(function (session) {\n return add_document_standalone(session.document, element, use_for_title);\n }, function (error) {\n logging_1.logger.error('Failed to load Bokeh session ' + session_id + ': ' + error);\n throw error;\n });\n }\n exports.add_document_from_session = add_document_from_session;\n // Replace element with a view of model_id from the given session\n function add_model_from_session(element, websocket_url, model_id, session_id) {\n var args_string = window.location.search.substr(1);\n var promise = _get_session(websocket_url, session_id, args_string);\n return promise.then(function (session) {\n var model = session.document.get_model_by_id(model_id);\n if (model == null)\n throw new Error('Did not find model ' + model_id + ' in session');\n var view = _create_view(model);\n view.renderTo(element, true);\n return view;\n }, function (error) {\n logging_1.logger.error('Failed to load Bokeh session ' + session_id + ': ' + error);\n throw error;\n });\n }\n exports.add_model_from_session = add_model_from_session;\n function inject_css(url) {\n var element = dom_1.link({\n href: url,\n rel: 'stylesheet',\n type: 'text/css'\n });\n document.body.appendChild(element);\n }\n exports.inject_css = inject_css;\n function inject_raw_css(css) {\n var element = dom_1.style({}, css);\n document.body.appendChild(element);\n }\n exports.inject_raw_css = inject_raw_css;\n // pull missing render item fields from data- attributes\n function fill_render_item_from_script_tag(script, item) {\n var _a = script.dataset, bokehLogLevel = _a.bokehLogLevel, bokehDocId = _a.bokehDocId, bokehModelId = _a.bokehModelId, bokehSessionId = _a.bokehSessionId;\n // length checks are because we put all the attributes on the tag\n // but sometimes set them to empty string\n if (bokehLogLevel != null && bokehLogLevel.length > 0)\n logging_1.set_log_level(bokehLogLevel);\n if (bokehDocId != null && bokehDocId.length > 0)\n item.docid = bokehDocId;\n if (bokehModelId != null && bokehModelId.length > 0)\n item.modelid = bokehModelId;\n if (bokehSessionId != null && bokehSessionId.length > 0)\n item.sessionid = bokehSessionId;\n logging_1.logger.info('Will inject Bokeh script tag with params ' + JSON.stringify(item));\n }\n function embed_items_notebook(docs_json, render_items) {\n if (object_1.size(docs_json) != 1)\n throw new Error('embed_items_notebook expects exactly one document in docs_json');\n var doc = document_1.Document.from_json(object_1.values(docs_json)[0]);\n for (var _i = 0, render_items_1 = render_items; _i < render_items_1.length; _i++) {\n var item = render_items_1[_i];\n if (item.notebook_comms_target != null)\n _init_comms(item.notebook_comms_target, doc);\n var elem = _get_element(item);\n if (item.modelid != null)\n add_model_standalone(item.modelid, elem, doc);\n else\n add_document_standalone(doc, elem, false);\n }\n }\n exports.embed_items_notebook = embed_items_notebook;\n function _get_ws_url(app_path, absolute_url) {\n var protocol = 'ws:';\n if (window.location.protocol == 'https:')\n protocol = 'wss:';\n var loc;\n if (absolute_url != null) {\n loc = document.createElement('a');\n loc.href = absolute_url;\n } else\n loc = window.location;\n if (app_path != null) {\n if (app_path == '/')\n app_path = '';\n } else\n app_path = loc.pathname.replace(/\\/+$/, '');\n return protocol + '//' + loc.host + app_path + '/ws';\n }\n // TODO (bev) this is currently clunky. Standalone embeds only provide\n // the first two args, whereas server provide the app_app, and *may* prove and\n // absolute_url as well if non-relative links are needed for resources. This function\n // should probably be split in to two pieces to reflect the different usage patterns\n function embed_items(docs_json, render_items, app_path, absolute_url) {\n callback_1.defer(function () {\n return _embed_items(docs_json, render_items, app_path, absolute_url);\n });\n }\n exports.embed_items = embed_items;\n function _embed_items(docs_json, render_items, app_path, absolute_url) {\n if (types_1.isString(docs_json))\n docs_json = JSON.parse(string_1.unescape(docs_json));\n var docs = {};\n for (var docid in docs_json) {\n var doc_json = docs_json[docid];\n docs[docid] = document_1.Document.from_json(doc_json);\n }\n for (var _i = 0, render_items_2 = render_items; _i < render_items_2.length; _i++) {\n var item = render_items_2[_i];\n var elem = _get_element(item);\n var use_for_title = item.use_for_title != null && item.use_for_title;\n // handle server session cases\n if (item.sessionid != null) {\n var websocket_url = _get_ws_url(app_path, absolute_url);\n logging_1.logger.debug('embed: computed ws url: ' + websocket_url);\n var promise = void 0;\n if (item.modelid != null)\n promise = add_model_from_session(elem, websocket_url, item.modelid, item.sessionid);\n else\n promise = add_document_from_session(elem, websocket_url, item.sessionid, use_for_title);\n promise.then(function () {\n console.log('Bokeh items were rendered successfully');\n }, function (error) {\n console.log('Error rendering Bokeh items ', error);\n }); // handle standalone document cases\n } else if (item.docid != null) {\n if (item.modelid != null)\n add_model_standalone(item.modelid, elem, docs[item.docid]);\n else\n add_document_standalone(docs[item.docid], elem, use_for_title);\n } else\n throw new Error('Error rendering Bokeh items to element ' + item.elementid + ': no document ID or session ID specified');\n }\n } \n}","/*main*/\nfunction _(require, module, exports) {\n require(260 /* ./polyfill */);\n var version_1 = require(265 /* ./version */);\n exports.version = version_1.version;\n var embed = require(51 /* ./embed */);\n exports.embed = embed;\n var protocol = require(261 /* ./protocol */);\n exports.protocol = protocol;\n var logging_1 = require(14 /* ./core/logging */);\n exports.logger = logging_1.logger;\n exports.set_log_level = logging_1.set_log_level;\n var settings_1 = require(18 /* ./core/settings */);\n exports.settings = settings_1.settings;\n var base_1 = require(0 /* ./base */);\n exports.Models = base_1.Models;\n exports.index = base_1.index;\n var document_1 = require(50 /* ./document */);\n exports.documents = document_1.documents;\n var safely_1 = require(264 /* ./safely */);\n exports.safely = safely_1.safely; \n}","/*model*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var has_props_1 = require(8 /* ./core/has_props */);\n var p = require(15 /* ./core/properties */);\n var types_1 = require(44 /* ./core/util/types */);\n var object_1 = require(32 /* ./core/util/object */);\n var logging_1 = require(14 /* ./core/logging */);\n var Model = function (_super) {\n tslib_1.__extends(Model, _super);\n function Model(attrs) {\n return _super.call(this, attrs) || this;\n }\n Model.initClass = function () {\n this.prototype.type = 'Model';\n this.define({\n tags: [\n p.Array,\n []\n ],\n name: [p.String],\n js_property_callbacks: [\n p.Any,\n {}\n ],\n js_event_callbacks: [\n p.Any,\n {}\n ],\n subscribed_events: [\n p.Array,\n []\n ]\n });\n };\n Model.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n for (var base_evt in this.js_property_callbacks) {\n var callbacks = this.js_property_callbacks[base_evt];\n var _a = base_evt.split(':'), evt = _a[0], _b = _a[1], attr = _b === void 0 ? null : _b;\n var _loop_1 = function (cb) {\n var signal = attr != null ? this_1.properties[attr][evt] : this_1[evt];\n this_1.connect(signal, function () {\n return cb.execute(_this, {});\n });\n };\n var this_1 = this;\n for (var _i = 0, callbacks_1 = callbacks; _i < callbacks_1.length; _i++) {\n var cb = callbacks_1[_i];\n _loop_1(cb);\n }\n }\n this.connect(this.properties.js_event_callbacks.change, function () {\n return _this._update_event_callbacks;\n });\n this.connect(this.properties.subscribed_events.change, function () {\n return _this._update_event_callbacks;\n });\n };\n /*protected*/\n Model.prototype._process_event = function (event) {\n if (event.is_applicable_to(this)) {\n event = event._customize_event(this);\n for (var _i = 0, _a = this.js_event_callbacks[event.event_name] || []; _i < _a.length; _i++) {\n var callback = _a[_i];\n callback.execute(event, {});\n }\n if (this.document != null) {\n if (this.subscribed_events.some(function (m) {\n return m == event.event_name;\n }))\n this.document.event_manager.send_event(event);\n }\n }\n };\n Model.prototype.trigger_event = function (event) {\n if (this.document != null)\n this.document.event_manager.trigger(event.set_model_id(this.id));\n };\n Model.prototype._update_event_callbacks = function () {\n if (this.document == null) {\n // File an issue: SidePanel in particular seems to have this issue\n logging_1.logger.warn('WARNING: Document not defined for updating event callbacks');\n return;\n }\n this.document.event_manager.subscribed_models.push(this.id);\n };\n Model.prototype._doc_attached = function () {\n if (!object_1.isEmpty(this.js_event_callbacks) || !object_1.isEmpty(this.subscribed_events))\n this._update_event_callbacks();\n };\n Model.prototype.select = function (selector) {\n if (types_1.isString(selector))\n return this.references().filter(function (ref) {\n return ref instanceof Model && ref.name === selector;\n });\n else if (selector.prototype instanceof has_props_1.HasProps)\n return this.references().filter(function (ref) {\n return ref instanceof selector;\n });\n else\n throw new Error('invalid selector');\n };\n Model.prototype.select_one = function (selector) {\n var result = this.select(selector);\n switch (result.length) {\n case 0:\n return null;\n case 1:\n return result[0];\n default:\n throw new Error('found more than one object matching given selector');\n }\n };\n return Model;\n }(has_props_1.HasProps);\n exports.Model = Model;\n Model.initClass(); \n}","/*models/annotations/annotation*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var side_panel_1 = require(12 /* core/layout/side_panel */);\n var p = require(15 /* core/properties */);\n var proj = require(33 /* core/util/projections */);\n var object_1 = require(32 /* core/util/object */);\n var renderer_1 = require(173 /* ../renderers/renderer */);\n var AnnotationView = function (_super) {\n tslib_1.__extends(AnnotationView, _super);\n function AnnotationView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n AnnotationView.prototype._get_size = function () {\n throw new Error('not implemented');\n };\n AnnotationView.prototype.get_size = function () {\n return this.model.visible ? Math.round(this._get_size()) : 0;\n };\n AnnotationView.prototype.set_data = function (source) {\n var data = this.model.materialize_dataspecs(source);\n object_1.extend(this, data);\n if (this.plot_model.use_map) {\n var self_1 = this;\n if (self_1._x != null)\n _a = proj.project_xy(self_1._x, self_1._y), self_1._x = _a[0], self_1._y = _a[1];\n if (self_1._xs != null)\n _b = proj.project_xsys(self_1._xs, self_1._ys), self_1._xs = _b[0], self_1._ys = _b[1];\n }\n var _a, _b;\n };\n return AnnotationView;\n }(renderer_1.RendererView);\n exports.AnnotationView = AnnotationView;\n var Annotation = function (_super) {\n tslib_1.__extends(Annotation, _super);\n function Annotation(attrs) {\n return _super.call(this, attrs) || this;\n }\n Annotation.initClass = function () {\n this.prototype.type = 'Annotation';\n this.define({ plot: [p.Instance] });\n this.override({ level: 'annotation' });\n };\n Annotation.prototype.add_panel = function (side) {\n if (this.panel == null || side !== this.panel.side) {\n var panel = new side_panel_1.SidePanel({ side: side });\n panel.attach_document(this.document);\n this.set_panel(panel);\n }\n };\n Annotation.prototype.set_panel = function (panel) {\n this.panel = panel;\n // If the annotation is in a side panel, we need to set level to overlay, so it is visible.\n this.level = 'overlay';\n };\n return Annotation;\n }(renderer_1.Renderer);\n exports.Annotation = Annotation;\n Annotation.initClass(); \n}","/*models/annotations/arrow*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var annotation_1 = require(54 /* ./annotation */);\n var arrow_head_1 = require(56 /* ./arrow_head */);\n var column_data_source_1 = require(184 /* ../sources/column_data_source */);\n var p = require(15 /* core/properties */);\n var math_1 = require(31 /* core/util/math */);\n var ArrowView = function (_super) {\n tslib_1.__extends(ArrowView, _super);\n function ArrowView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n ArrowView.prototype.initialize = function (options) {\n _super.prototype.initialize.call(this, options);\n if (this.model.source == null)\n this.model.source = new column_data_source_1.ColumnDataSource();\n this.set_data(this.model.source);\n };\n ArrowView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.model.change, function () {\n return _this.plot_view.request_render();\n });\n this.connect(this.model.source.streaming, function () {\n return _this.set_data(_this.model.source);\n });\n this.connect(this.model.source.patching, function () {\n return _this.set_data(_this.model.source);\n });\n this.connect(this.model.source.change, function () {\n return _this.set_data(_this.model.source);\n });\n };\n ArrowView.prototype.set_data = function (source) {\n _super.prototype.set_data.call(this, source);\n this.visuals.warm_cache(source);\n this.plot_view.request_render();\n };\n ArrowView.prototype._map_data = function () {\n var frame = this.plot_view.frame;\n var sx_start, sy_start;\n if (this.model.start_units == 'data') {\n sx_start = frame.xscales[this.model.x_range_name].v_compute(this._x_start);\n sy_start = frame.yscales[this.model.y_range_name].v_compute(this._y_start);\n } else {\n sx_start = frame.xview.v_compute(this._x_start);\n sy_start = frame.yview.v_compute(this._y_start);\n }\n var sx_end, sy_end;\n if (this.model.end_units == 'data') {\n sx_end = frame.xscales[this.model.x_range_name].v_compute(this._x_end);\n sy_end = frame.yscales[this.model.y_range_name].v_compute(this._y_end);\n } else {\n sx_end = frame.xview.v_compute(this._x_end);\n sy_end = frame.yview.v_compute(this._y_end);\n }\n return [\n [\n sx_start,\n sy_start\n ],\n [\n sx_end,\n sy_end\n ]\n ];\n };\n ArrowView.prototype.render = function () {\n if (!this.model.visible)\n return;\n var ctx = this.plot_view.canvas_view.ctx;\n ctx.save();\n // Order in this function is important. First we draw all the arrow heads.\n var _a = this._map_data(), start = _a[0], end = _a[1];\n if (this.model.end != null)\n this._arrow_head(ctx, 'render', this.model.end, start, end);\n if (this.model.start != null)\n this._arrow_head(ctx, 'render', this.model.start, end, start);\n // Next we call .clip on all the arrow heads, inside an initial canvas sized\n // rect, to create an \"inverted\" clip region for the arrow heads\n ctx.beginPath();\n var _b = this.plot_model.canvas.bbox.rect, x = _b.x, y = _b.y, width = _b.width, height = _b.height;\n ctx.rect(x, y, width, height);\n if (this.model.end != null)\n this._arrow_head(ctx, 'clip', this.model.end, start, end);\n if (this.model.start != null)\n this._arrow_head(ctx, 'clip', this.model.start, end, start);\n ctx.closePath();\n ctx.clip();\n // Finally we draw the arrow body, with the clipping regions set up. This prevents\n // \"fat\" arrows from overlapping the arrow head in a bad way.\n this._arrow_body(ctx, start, end);\n ctx.restore();\n };\n ArrowView.prototype._arrow_head = function (ctx, action, head, start, end) {\n for (var i = 0, _end = this._x_start.length; i < _end; i++) {\n // arrow head runs orthogonal to arrow body\n var angle = Math.PI / 2 + math_1.atan2([\n start[0][i],\n start[1][i]\n ], [\n end[0][i],\n end[1][i]\n ]);\n ctx.save();\n ctx.translate(end[0][i], end[1][i]);\n ctx.rotate(angle);\n if (action == 'render')\n head.render(ctx, i);\n else if (action == 'clip')\n head.clip(ctx, i);\n ctx.restore();\n }\n };\n ArrowView.prototype._arrow_body = function (ctx, start, end) {\n if (!this.visuals.line.doit)\n return;\n for (var i = 0, n = this._x_start.length; i < n; i++) {\n this.visuals.line.set_vectorize(ctx, i);\n ctx.beginPath();\n ctx.moveTo(start[0][i], start[1][i]);\n ctx.lineTo(end[0][i], end[1][i]);\n ctx.stroke();\n }\n };\n return ArrowView;\n }(annotation_1.AnnotationView);\n exports.ArrowView = ArrowView;\n var Arrow = function (_super) {\n tslib_1.__extends(Arrow, _super);\n function Arrow(attrs) {\n return _super.call(this, attrs) || this;\n }\n Arrow.initClass = function () {\n this.prototype.type = 'Arrow';\n this.prototype.default_view = ArrowView;\n this.mixins(['line']);\n this.define({\n x_start: [p.NumberSpec],\n y_start: [p.NumberSpec],\n start_units: [\n p.String,\n 'data'\n ],\n start: [\n p.Instance,\n null\n ],\n x_end: [p.NumberSpec],\n y_end: [p.NumberSpec],\n end_units: [\n p.String,\n 'data'\n ],\n end: [\n p.Instance,\n function () {\n return new arrow_head_1.OpenHead({});\n }\n ],\n source: [p.Instance],\n x_range_name: [\n p.String,\n 'default'\n ],\n y_range_name: [\n p.String,\n 'default'\n ]\n });\n };\n return Arrow;\n }(annotation_1.Annotation);\n exports.Arrow = Arrow;\n Arrow.initClass(); \n}","/*models/annotations/arrow_head*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var annotation_1 = require(54 /* ./annotation */);\n var visuals_1 = require(49 /* core/visuals */);\n var p = require(15 /* core/properties */);\n var ArrowHead = function (_super) {\n tslib_1.__extends(ArrowHead, _super);\n function ArrowHead(attrs) {\n return _super.call(this, attrs) || this;\n }\n ArrowHead.initClass = function () {\n this.prototype.type = 'ArrowHead';\n this.define({\n size: [\n p.Number,\n 25\n ]\n });\n };\n ArrowHead.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n this.visuals = new visuals_1.Visuals(this);\n };\n return ArrowHead;\n }(annotation_1.Annotation);\n exports.ArrowHead = ArrowHead;\n ArrowHead.initClass();\n var OpenHead = function (_super) {\n tslib_1.__extends(OpenHead, _super);\n function OpenHead(attrs) {\n return _super.call(this, attrs) || this;\n }\n OpenHead.initClass = function () {\n this.prototype.type = 'OpenHead';\n this.mixins(['line']);\n };\n OpenHead.prototype.clip = function (ctx, i) {\n // This method should not begin or close a path\n this.visuals.line.set_vectorize(ctx, i);\n ctx.moveTo(0.5 * this.size, this.size);\n ctx.lineTo(0.5 * this.size, -2);\n ctx.lineTo(-0.5 * this.size, -2);\n ctx.lineTo(-0.5 * this.size, this.size);\n ctx.lineTo(0, 0);\n ctx.lineTo(0.5 * this.size, this.size);\n };\n OpenHead.prototype.render = function (ctx, i) {\n if (this.visuals.line.doit) {\n this.visuals.line.set_vectorize(ctx, i);\n ctx.beginPath();\n ctx.moveTo(0.5 * this.size, this.size);\n ctx.lineTo(0, 0);\n ctx.lineTo(-0.5 * this.size, this.size);\n ctx.stroke();\n }\n };\n return OpenHead;\n }(ArrowHead);\n exports.OpenHead = OpenHead;\n OpenHead.initClass();\n var NormalHead = function (_super) {\n tslib_1.__extends(NormalHead, _super);\n function NormalHead(attrs) {\n return _super.call(this, attrs) || this;\n }\n NormalHead.initClass = function () {\n this.prototype.type = 'NormalHead';\n this.mixins([\n 'line',\n 'fill'\n ]);\n this.override({ fill_color: 'black' });\n };\n NormalHead.prototype.clip = function (ctx, i) {\n // This method should not begin or close a path\n this.visuals.line.set_vectorize(ctx, i);\n ctx.moveTo(0.5 * this.size, this.size);\n ctx.lineTo(0.5 * this.size, -2);\n ctx.lineTo(-0.5 * this.size, -2);\n ctx.lineTo(-0.5 * this.size, this.size);\n ctx.lineTo(0.5 * this.size, this.size);\n };\n NormalHead.prototype.render = function (ctx, i) {\n if (this.visuals.fill.doit) {\n this.visuals.fill.set_vectorize(ctx, i);\n this._normal(ctx, i);\n ctx.fill();\n }\n if (this.visuals.line.doit) {\n this.visuals.line.set_vectorize(ctx, i);\n this._normal(ctx, i);\n ctx.stroke();\n }\n };\n NormalHead.prototype._normal = function (ctx, _i) {\n ctx.beginPath();\n ctx.moveTo(0.5 * this.size, this.size);\n ctx.lineTo(0, 0);\n ctx.lineTo(-0.5 * this.size, this.size);\n ctx.closePath();\n };\n return NormalHead;\n }(ArrowHead);\n exports.NormalHead = NormalHead;\n NormalHead.initClass();\n var VeeHead = function (_super) {\n tslib_1.__extends(VeeHead, _super);\n function VeeHead(attrs) {\n return _super.call(this, attrs) || this;\n }\n VeeHead.initClass = function () {\n this.prototype.type = 'VeeHead';\n this.mixins([\n 'line',\n 'fill'\n ]);\n this.override({ fill_color: 'black' });\n };\n VeeHead.prototype.clip = function (ctx, i) {\n // This method should not begin or close a path\n this.visuals.line.set_vectorize(ctx, i);\n ctx.moveTo(0.5 * this.size, this.size);\n ctx.lineTo(0.5 * this.size, -2);\n ctx.lineTo(-0.5 * this.size, -2);\n ctx.lineTo(-0.5 * this.size, this.size);\n ctx.lineTo(0, 0.5 * this.size);\n ctx.lineTo(0.5 * this.size, this.size);\n };\n VeeHead.prototype.render = function (ctx, i) {\n if (this.visuals.fill.doit) {\n this.visuals.fill.set_vectorize(ctx, i);\n this._vee(ctx, i);\n ctx.fill();\n }\n if (this.visuals.line.doit) {\n this.visuals.line.set_vectorize(ctx, i);\n this._vee(ctx, i);\n ctx.stroke();\n }\n };\n VeeHead.prototype._vee = function (ctx, _i) {\n ctx.beginPath();\n ctx.moveTo(0.5 * this.size, this.size);\n ctx.lineTo(0, 0);\n ctx.lineTo(-0.5 * this.size, this.size);\n ctx.lineTo(0, 0.5 * this.size);\n ctx.closePath();\n };\n return VeeHead;\n }(ArrowHead);\n exports.VeeHead = VeeHead;\n VeeHead.initClass();\n var TeeHead = function (_super) {\n tslib_1.__extends(TeeHead, _super);\n function TeeHead(attrs) {\n return _super.call(this, attrs) || this;\n }\n TeeHead.initClass = function () {\n this.prototype.type = 'TeeHead';\n this.mixins(['line']);\n };\n TeeHead.prototype.render = function (ctx, i) {\n if (this.visuals.line.doit) {\n this.visuals.line.set_vectorize(ctx, i);\n ctx.beginPath();\n ctx.moveTo(0.5 * this.size, 0);\n ctx.lineTo(-0.5 * this.size, 0);\n ctx.stroke();\n }\n };\n TeeHead.prototype.clip = function (_ctx, _i) {\n };\n return TeeHead;\n }(ArrowHead);\n exports.TeeHead = TeeHead;\n TeeHead.initClass(); \n}","/*models/annotations/band*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var annotation_1 = require(54 /* ./annotation */);\n var column_data_source_1 = require(184 /* ../sources/column_data_source */);\n var p = require(15 /* core/properties */);\n var BandView = function (_super) {\n tslib_1.__extends(BandView, _super);\n function BandView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n BandView.prototype.initialize = function (options) {\n _super.prototype.initialize.call(this, options);\n this.set_data(this.model.source);\n };\n BandView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.model.source.streaming, function () {\n return _this.set_data(_this.model.source);\n });\n this.connect(this.model.source.patching, function () {\n return _this.set_data(_this.model.source);\n });\n this.connect(this.model.source.change, function () {\n return _this.set_data(_this.model.source);\n });\n };\n BandView.prototype.set_data = function (source) {\n _super.prototype.set_data.call(this, source);\n this.visuals.warm_cache(source);\n this.plot_view.request_render();\n };\n BandView.prototype._map_data = function () {\n var frame = this.plot_view.frame;\n var dim = this.model.dimension;\n var xscale = frame.xscales[this.model.x_range_name];\n var yscale = frame.yscales[this.model.y_range_name];\n var limit_scale = dim == 'height' ? yscale : xscale;\n var base_scale = dim == 'height' ? xscale : yscale;\n var limit_view = dim == 'height' ? frame.yview : frame.xview;\n var base_view = dim == 'height' ? frame.xview : frame.yview;\n var _lower_sx;\n if (this.model.lower.units == 'data')\n _lower_sx = limit_scale.v_compute(this._lower);\n else\n _lower_sx = limit_view.v_compute(this._lower);\n var _upper_sx;\n if (this.model.upper.units == 'data')\n _upper_sx = limit_scale.v_compute(this._upper);\n else\n _upper_sx = limit_view.v_compute(this._upper);\n var _base_sx;\n if (this.model.base.units == 'data')\n _base_sx = base_scale.v_compute(this._base);\n else\n _base_sx = base_view.v_compute(this._base);\n var _a = dim == 'height' ? [\n 1,\n 0\n ] : [\n 0,\n 1\n ], i = _a[0], j = _a[1];\n var _lower = [\n _lower_sx,\n _base_sx\n ];\n var _upper = [\n _upper_sx,\n _base_sx\n ];\n this._lower_sx = _lower[i];\n this._lower_sy = _lower[j];\n this._upper_sx = _upper[i];\n this._upper_sy = _upper[j];\n };\n BandView.prototype.render = function () {\n if (!this.model.visible)\n return;\n this._map_data();\n var ctx = this.plot_view.canvas_view.ctx;\n // Draw the band body\n ctx.beginPath();\n ctx.moveTo(this._lower_sx[0], this._lower_sy[0]);\n for (var i = 0, end = this._lower_sx.length; i < end; i++) {\n ctx.lineTo(this._lower_sx[i], this._lower_sy[i]);\n }\n // iterate backwards so that the upper end is below the lower start\n for (var start = this._upper_sx.length - 1, i = start; i >= 0; i--) {\n ctx.lineTo(this._upper_sx[i], this._upper_sy[i]);\n }\n ctx.closePath();\n if (this.visuals.fill.doit) {\n this.visuals.fill.set_value(ctx);\n ctx.fill();\n }\n // Draw the lower band edge\n ctx.beginPath();\n ctx.moveTo(this._lower_sx[0], this._lower_sy[0]);\n for (var i = 0, end = this._lower_sx.length; i < end; i++) {\n ctx.lineTo(this._lower_sx[i], this._lower_sy[i]);\n }\n if (this.visuals.line.doit) {\n this.visuals.line.set_value(ctx);\n ctx.stroke();\n }\n // Draw the upper band edge\n ctx.beginPath();\n ctx.moveTo(this._upper_sx[0], this._upper_sy[0]);\n for (var i = 0, end = this._upper_sx.length; i < end; i++) {\n ctx.lineTo(this._upper_sx[i], this._upper_sy[i]);\n }\n if (this.visuals.line.doit) {\n this.visuals.line.set_value(ctx);\n ctx.stroke();\n }\n };\n return BandView;\n }(annotation_1.AnnotationView);\n exports.BandView = BandView;\n var Band = function (_super) {\n tslib_1.__extends(Band, _super);\n function Band(attrs) {\n return _super.call(this, attrs) || this;\n }\n Band.initClass = function () {\n this.prototype.type = 'Band';\n this.prototype.default_view = BandView;\n this.mixins([\n 'line',\n 'fill'\n ]);\n this.define({\n lower: [p.DistanceSpec],\n upper: [p.DistanceSpec],\n base: [p.DistanceSpec],\n dimension: [\n p.Dimension,\n 'height'\n ],\n source: [\n p.Instance,\n function () {\n return new column_data_source_1.ColumnDataSource();\n }\n ],\n x_range_name: [\n p.String,\n 'default'\n ],\n y_range_name: [\n p.String,\n 'default'\n ]\n });\n this.override({\n fill_color: '#fff9ba',\n fill_alpha: 0.4,\n line_color: '#cccccc',\n line_alpha: 0.3\n });\n };\n return Band;\n }(annotation_1.Annotation);\n exports.Band = Band;\n Band.initClass(); \n}","/*models/annotations/box_annotation*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var annotation_1 = require(54 /* ./annotation */);\n var signaling_1 = require(19 /* core/signaling */);\n var dom_1 = require(5 /* core/dom */);\n var p = require(15 /* core/properties */);\n var BoxAnnotationView = function (_super) {\n tslib_1.__extends(BoxAnnotationView, _super);\n function BoxAnnotationView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n BoxAnnotationView.prototype.initialize = function (options) {\n _super.prototype.initialize.call(this, options);\n this.plot_view.canvas_overlays.appendChild(this.el);\n this.el.classList.add('bk-shading');\n dom_1.hide(this.el);\n };\n BoxAnnotationView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n // need to respond to either normal BB change events or silent\n // \"data only updates\" that tools might want to use\n if (this.model.render_mode == 'css') {\n // dispatch CSS update immediately\n this.connect(this.model.change, function () {\n return _this.render();\n });\n this.connect(this.model.data_update, function () {\n return _this.render();\n });\n } else {\n this.connect(this.model.change, function () {\n return _this.plot_view.request_render();\n });\n this.connect(this.model.data_update, function () {\n return _this.plot_view.request_render();\n });\n }\n };\n BoxAnnotationView.prototype.render = function () {\n var _this = this;\n if (!this.model.visible && this.model.render_mode == 'css')\n dom_1.hide(this.el);\n if (!this.model.visible)\n return;\n // don't render if *all* position are null\n if (this.model.left == null && this.model.right == null && this.model.top == null && this.model.bottom == null) {\n dom_1.hide(this.el);\n return;\n }\n var frame = this.plot_model.frame;\n var xscale = frame.xscales[this.model.x_range_name];\n var yscale = frame.yscales[this.model.y_range_name];\n var _calc_dim = function (dim, dim_units, scale, view, frame_extrema) {\n var sdim;\n if (dim != null) {\n if (_this.model.screen)\n sdim = dim;\n else {\n if (dim_units == 'data')\n sdim = scale.compute(dim);\n else\n sdim = view.compute(dim);\n }\n } else\n sdim = frame_extrema;\n return sdim;\n };\n var sleft = _calc_dim(this.model.left, this.model.left_units, xscale, frame.xview, frame._left.value);\n var sright = _calc_dim(this.model.right, this.model.right_units, xscale, frame.xview, frame._right.value);\n var stop = _calc_dim(this.model.top, this.model.top_units, yscale, frame.yview, frame._top.value);\n var sbottom = _calc_dim(this.model.bottom, this.model.bottom_units, yscale, frame.yview, frame._bottom.value);\n var draw = this.model.render_mode == 'css' ? this._css_box.bind(this) : this._canvas_box.bind(this);\n draw(sleft, sright, sbottom, stop);\n };\n BoxAnnotationView.prototype._css_box = function (sleft, sright, sbottom, stop) {\n var sw = Math.abs(sright - sleft);\n var sh = Math.abs(sbottom - stop);\n this.el.style.left = sleft + 'px';\n this.el.style.width = sw + 'px';\n this.el.style.top = stop + 'px';\n this.el.style.height = sh + 'px';\n this.el.style.borderWidth = this.model.properties.line_width.value() + 'px';\n this.el.style.borderColor = this.model.properties.line_color.value();\n this.el.style.backgroundColor = this.model.properties.fill_color.value();\n this.el.style.opacity = this.model.properties.fill_alpha.value();\n // try our best to honor line dashing in some way, if we can\n var ld = this.model.properties.line_dash.value().length < 2 ? 'solid' : 'dashed';\n this.el.style.borderStyle = ld;\n dom_1.show(this.el);\n };\n BoxAnnotationView.prototype._canvas_box = function (sleft, sright, sbottom, stop) {\n var ctx = this.plot_view.canvas_view.ctx;\n ctx.save();\n ctx.beginPath();\n ctx.rect(sleft, stop, sright - sleft, sbottom - stop);\n this.visuals.fill.set_value(ctx);\n ctx.fill();\n this.visuals.line.set_value(ctx);\n ctx.stroke();\n ctx.restore();\n };\n return BoxAnnotationView;\n }(annotation_1.AnnotationView);\n exports.BoxAnnotationView = BoxAnnotationView;\n var BoxAnnotation = function (_super) {\n tslib_1.__extends(BoxAnnotation, _super);\n function BoxAnnotation(attrs) {\n return _super.call(this, attrs) || this;\n }\n BoxAnnotation.initClass = function () {\n this.prototype.type = 'BoxAnnotation';\n this.prototype.default_view = BoxAnnotationView;\n this.mixins([\n 'line',\n 'fill'\n ]);\n this.define({\n render_mode: [\n p.RenderMode,\n 'canvas'\n ],\n x_range_name: [\n p.String,\n 'default'\n ],\n y_range_name: [\n p.String,\n 'default'\n ],\n top: [\n p.Number,\n null\n ],\n top_units: [\n p.SpatialUnits,\n 'data'\n ],\n bottom: [\n p.Number,\n null\n ],\n bottom_units: [\n p.SpatialUnits,\n 'data'\n ],\n left: [\n p.Number,\n null\n ],\n left_units: [\n p.SpatialUnits,\n 'data'\n ],\n right: [\n p.Number,\n null\n ],\n right_units: [\n p.SpatialUnits,\n 'data'\n ]\n });\n this.internal({\n screen: [\n p.Boolean,\n false\n ]\n });\n this.override({\n fill_color: '#fff9ba',\n fill_alpha: 0.4,\n line_color: '#cccccc',\n line_alpha: 0.3\n });\n };\n BoxAnnotation.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n this.data_update = new signaling_1.Signal0(this, 'data_update');\n };\n BoxAnnotation.prototype.update = function (_a) {\n var left = _a.left, right = _a.right, top = _a.top, bottom = _a.bottom;\n this.setv({\n left: left,\n right: right,\n top: top,\n bottom: bottom,\n screen: true\n }, { silent: true });\n this.data_update.emit();\n };\n return BoxAnnotation;\n }(annotation_1.Annotation);\n exports.BoxAnnotation = BoxAnnotation;\n BoxAnnotation.initClass(); \n}","/*models/annotations/color_bar*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var annotation_1 = require(54 /* ./annotation */);\n var basic_ticker_1 = require(191 /* ../tickers/basic_ticker */);\n var basic_tick_formatter_1 = require(96 /* ../formatters/basic_tick_formatter */);\n var linear_color_mapper_1 = require(154 /* ../mappers/linear_color_mapper */);\n var linear_scale_1 = require(176 /* ../scales/linear_scale */);\n var log_scale_1 = require(177 /* ../scales/log_scale */);\n var range1d_1 = require(168 /* ../ranges/range1d */);\n var p = require(15 /* core/properties */);\n var text_util = require(41 /* core/util/text */);\n var array_1 = require(21 /* core/util/array */);\n var arrayable_1 = require(22 /* core/util/arrayable */);\n var object_1 = require(32 /* core/util/object */);\n var types_1 = require(44 /* core/util/types */);\n var SHORT_DIM = 25;\n var LONG_DIM_MIN_SCALAR = 0.3;\n var LONG_DIM_MAX_SCALAR = 0.8;\n var ColorBarView = function (_super) {\n tslib_1.__extends(ColorBarView, _super);\n function ColorBarView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n ColorBarView.prototype.initialize = function (options) {\n _super.prototype.initialize.call(this, options);\n this._set_canvas_image();\n };\n ColorBarView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.model.properties.visible.change, function () {\n return _this.plot_view.request_render();\n });\n this.connect(this.model.ticker.change, function () {\n return _this.plot_view.request_render();\n });\n this.connect(this.model.formatter.change, function () {\n return _this.plot_view.request_render();\n });\n if (this.model.color_mapper != null) {\n this.connect(this.model.color_mapper.change, function () {\n _this._set_canvas_image();\n _this.plot_view.request_render();\n });\n }\n };\n ColorBarView.prototype._get_size = function () {\n if (this.model.color_mapper == null)\n return 0;\n var bbox = this.compute_legend_dimensions();\n var side = this.model.panel.side;\n switch (side) {\n case 'above':\n case 'below':\n return bbox.height;\n case 'left':\n case 'right':\n return bbox.width;\n default:\n throw new Error('unreachable code');\n }\n };\n ColorBarView.prototype._set_canvas_image = function () {\n if (this.model.color_mapper == null)\n return;\n var palette = this.model.color_mapper.palette;\n if (this.model.orientation == 'vertical')\n palette = array_1.reversed(palette);\n var w, h;\n switch (this.model.orientation) {\n case 'vertical': {\n _a = [\n 1,\n palette.length\n ], w = _a[0], h = _a[1];\n break;\n }\n case 'horizontal': {\n _b = [\n palette.length,\n 1\n ], w = _b[0], h = _b[1];\n break;\n }\n default:\n throw new Error('unreachable code');\n }\n var canvas = document.createElement('canvas');\n canvas.width = w;\n canvas.height = h;\n var image_ctx = canvas.getContext('2d');\n var image_data = image_ctx.getImageData(0, 0, w, h);\n // We always want to draw the entire palette linearly, so we create a new\n // LinearColorMapper instance and map a monotonic range of values with\n // length = palette.length to get each palette color in order.\n var cmap = new linear_color_mapper_1.LinearColorMapper({ palette: palette }).rgba_mapper;\n var buf8 = cmap.v_compute(array_1.range(0, palette.length));\n image_data.data.set(buf8);\n image_ctx.putImageData(image_data, 0, 0);\n this.image = canvas;\n var _a, _b;\n };\n ColorBarView.prototype.compute_legend_dimensions = function () {\n var image_dimensions = this.model._computed_image_dimensions();\n var _a = [\n image_dimensions.height,\n image_dimensions.width\n ], image_height = _a[0], image_width = _a[1];\n var label_extent = this._get_label_extent();\n var title_extent = this.model._title_extent();\n var tick_extent = this.model._tick_extent();\n var padding = this.model.padding;\n var legend_height, legend_width;\n switch (this.model.orientation) {\n case 'vertical':\n legend_height = image_height + title_extent + 2 * padding;\n legend_width = image_width + tick_extent + label_extent + 2 * padding;\n break;\n case 'horizontal':\n legend_height = image_height + title_extent + tick_extent + label_extent + 2 * padding;\n legend_width = image_width + 2 * padding;\n break;\n default:\n throw new Error('unreachable code');\n }\n return {\n width: legend_width,\n height: legend_height\n };\n };\n ColorBarView.prototype.compute_legend_location = function () {\n var legend_dimensions = this.compute_legend_dimensions();\n var _a = [\n legend_dimensions.height,\n legend_dimensions.width\n ], legend_height = _a[0], legend_width = _a[1];\n var legend_margin = this.model.margin;\n var panel = this.model.panel != null ? this.model.panel : this.plot_view.frame;\n var _b = panel.bbox.ranges, hr = _b[0], vr = _b[1];\n var location = this.model.location;\n var sx, sy;\n if (types_1.isString(location)) {\n switch (location) {\n case 'top_left':\n sx = hr.start + legend_margin;\n sy = vr.start + legend_margin;\n break;\n case 'top_center':\n sx = (hr.end + hr.start) / 2 - legend_width / 2;\n sy = vr.start + legend_margin;\n break;\n case 'top_right':\n sx = hr.end - legend_margin - legend_width;\n sy = vr.start + legend_margin;\n break;\n case 'bottom_right':\n sx = hr.end - legend_margin - legend_width;\n sy = vr.end - legend_margin - legend_height;\n break;\n case 'bottom_center':\n sx = (hr.end + hr.start) / 2 - legend_width / 2;\n sy = vr.end - legend_margin - legend_height;\n break;\n case 'bottom_left':\n sx = hr.start + legend_margin;\n sy = vr.end - legend_margin - legend_height;\n break;\n case 'center_left':\n sx = hr.start + legend_margin;\n sy = (vr.end + vr.start) / 2 - legend_height / 2;\n break;\n case 'center':\n sx = (hr.end + hr.start) / 2 - legend_width / 2;\n sy = (vr.end + vr.start) / 2 - legend_height / 2;\n break;\n case 'center_right':\n sx = hr.end - legend_margin - legend_width;\n sy = (vr.end + vr.start) / 2 - legend_height / 2;\n break;\n default:\n throw new Error('unreachable code');\n }\n } else if (types_1.isArray(location) && location.length == 2) {\n var vx = location[0], vy = location[1];\n sx = panel.xview.compute(vx);\n sy = panel.yview.compute(vy) - legend_height;\n } else\n throw new Error('unreachable code');\n return {\n sx: sx,\n sy: sy\n };\n };\n ColorBarView.prototype.render = function () {\n if (!this.model.visible || this.model.color_mapper == null)\n return;\n var ctx = this.plot_view.canvas_view.ctx;\n ctx.save();\n var _a = this.compute_legend_location(), sx = _a.sx, sy = _a.sy;\n ctx.translate(sx, sy);\n this._draw_bbox(ctx);\n var image_offset = this._get_image_offset();\n ctx.translate(image_offset.x, image_offset.y);\n this._draw_image(ctx);\n if (this.model.color_mapper.low != null && this.model.color_mapper.high != null) {\n var tick_info = this.model.tick_info();\n this._draw_major_ticks(ctx, tick_info);\n this._draw_minor_ticks(ctx, tick_info);\n this._draw_major_labels(ctx, tick_info);\n }\n if (this.model.title)\n this._draw_title(ctx);\n ctx.restore();\n };\n ColorBarView.prototype._draw_bbox = function (ctx) {\n var bbox = this.compute_legend_dimensions();\n ctx.save();\n if (this.visuals.background_fill.doit) {\n this.visuals.background_fill.set_value(ctx);\n ctx.fillRect(0, 0, bbox.width, bbox.height);\n }\n if (this.visuals.border_line.doit) {\n this.visuals.border_line.set_value(ctx);\n ctx.strokeRect(0, 0, bbox.width, bbox.height);\n }\n ctx.restore();\n };\n ColorBarView.prototype._draw_image = function (ctx) {\n var image = this.model._computed_image_dimensions();\n ctx.save();\n ctx.setImageSmoothingEnabled(false);\n ctx.globalAlpha = this.model.scale_alpha;\n ctx.drawImage(this.image, 0, 0, image.width, image.height);\n if (this.visuals.bar_line.doit) {\n this.visuals.bar_line.set_value(ctx);\n ctx.strokeRect(0, 0, image.width, image.height);\n }\n ctx.restore();\n };\n ColorBarView.prototype._draw_major_ticks = function (ctx, tick_info) {\n if (!this.visuals.major_tick_line.doit)\n return;\n var _a = this.model._normals(), nx = _a[0], ny = _a[1];\n var image = this.model._computed_image_dimensions();\n var _b = [\n image.width * nx,\n image.height * ny\n ], x_offset = _b[0], y_offset = _b[1];\n var _c = tick_info.coords.major, sx = _c[0], sy = _c[1];\n var tin = this.model.major_tick_in;\n var tout = this.model.major_tick_out;\n ctx.save();\n ctx.translate(x_offset, y_offset);\n this.visuals.major_tick_line.set_value(ctx);\n for (var i = 0, end = sx.length; i < end; i++) {\n ctx.beginPath();\n ctx.moveTo(Math.round(sx[i] + nx * tout), Math.round(sy[i] + ny * tout));\n ctx.lineTo(Math.round(sx[i] - nx * tin), Math.round(sy[i] - ny * tin));\n ctx.stroke();\n }\n ctx.restore();\n };\n ColorBarView.prototype._draw_minor_ticks = function (ctx, tick_info) {\n if (!this.visuals.minor_tick_line.doit)\n return;\n var _a = this.model._normals(), nx = _a[0], ny = _a[1];\n var image = this.model._computed_image_dimensions();\n var _b = [\n image.width * nx,\n image.height * ny\n ], x_offset = _b[0], y_offset = _b[1];\n var _c = tick_info.coords.minor, sx = _c[0], sy = _c[1];\n var tin = this.model.minor_tick_in;\n var tout = this.model.minor_tick_out;\n ctx.save();\n ctx.translate(x_offset, y_offset);\n this.visuals.minor_tick_line.set_value(ctx);\n for (var i = 0, end = sx.length; i < end; i++) {\n ctx.beginPath();\n ctx.moveTo(Math.round(sx[i] + nx * tout), Math.round(sy[i] + ny * tout));\n ctx.lineTo(Math.round(sx[i] - nx * tin), Math.round(sy[i] - ny * tin));\n ctx.stroke();\n }\n ctx.restore();\n };\n ColorBarView.prototype._draw_major_labels = function (ctx, tick_info) {\n if (!this.visuals.major_label_text.doit)\n return;\n var _a = this.model._normals(), nx = _a[0], ny = _a[1];\n var image = this.model._computed_image_dimensions();\n var _b = [\n image.width * nx,\n image.height * ny\n ], x_offset = _b[0], y_offset = _b[1];\n var standoff = this.model.label_standoff + this.model._tick_extent();\n var _c = [\n standoff * nx,\n standoff * ny\n ], x_standoff = _c[0], y_standoff = _c[1];\n var _d = tick_info.coords.major, sx = _d[0], sy = _d[1];\n var formatted_labels = tick_info.labels.major;\n this.visuals.major_label_text.set_value(ctx);\n ctx.save();\n ctx.translate(x_offset + x_standoff, y_offset + y_standoff);\n for (var i = 0, end = sx.length; i < end; i++) {\n ctx.fillText(formatted_labels[i], Math.round(sx[i] + nx * this.model.label_standoff), Math.round(sy[i] + ny * this.model.label_standoff));\n }\n ctx.restore();\n };\n ColorBarView.prototype._draw_title = function (ctx) {\n if (!this.visuals.title_text.doit)\n return;\n ctx.save();\n this.visuals.title_text.set_value(ctx);\n ctx.fillText(this.model.title, 0, -this.model.title_standoff);\n ctx.restore();\n };\n ColorBarView.prototype._get_label_extent = function () {\n var major_labels = this.model.tick_info().labels.major;\n var label_extent;\n if (this.model.color_mapper.low != null && this.model.color_mapper.high != null && !object_1.isEmpty(major_labels)) {\n var ctx_1 = this.plot_view.canvas_view.ctx;\n ctx_1.save();\n this.visuals.major_label_text.set_value(ctx_1);\n switch (this.model.orientation) {\n case 'vertical':\n label_extent = array_1.max(major_labels.map(function (label) {\n return ctx_1.measureText(label.toString()).width;\n }));\n break;\n case 'horizontal':\n label_extent = text_util.get_text_height(this.visuals.major_label_text.font_value()).height;\n break;\n default:\n throw new Error('unreachable code');\n }\n label_extent += this.model.label_standoff;\n ctx_1.restore();\n } else\n label_extent = 0;\n return label_extent;\n };\n ColorBarView.prototype._get_image_offset = function () {\n // Returns image offset relative to legend bounding box\n var x = this.model.padding;\n var y = this.model.padding + this.model._title_extent();\n return {\n x: x,\n y: y\n };\n };\n return ColorBarView;\n }(annotation_1.AnnotationView);\n exports.ColorBarView = ColorBarView;\n var ColorBar = function (_super) {\n tslib_1.__extends(ColorBar, _super);\n function ColorBar(attrs) {\n return _super.call(this, attrs) || this;\n }\n ColorBar.initClass = function () {\n this.prototype.type = 'ColorBar';\n this.prototype.default_view = ColorBarView;\n this.mixins([\n 'text:major_label_',\n 'text:title_',\n 'line:major_tick_',\n 'line:minor_tick_',\n 'line:border_',\n 'line:bar_',\n 'fill:background_'\n ]);\n this.define({\n location: [\n p.Any,\n 'top_right'\n ],\n orientation: [\n p.Orientation,\n 'vertical'\n ],\n title: [p.String],\n title_standoff: [\n p.Number,\n 2\n ],\n width: [\n p.Any,\n 'auto'\n ],\n height: [\n p.Any,\n 'auto'\n ],\n scale_alpha: [\n p.Number,\n 1\n ],\n ticker: [\n p.Instance,\n function () {\n return new basic_ticker_1.BasicTicker();\n }\n ],\n formatter: [\n p.Instance,\n function () {\n return new basic_tick_formatter_1.BasicTickFormatter();\n }\n ],\n major_label_overrides: [\n p.Any,\n {}\n ],\n color_mapper: [p.Instance],\n label_standoff: [\n p.Number,\n 5\n ],\n margin: [\n p.Number,\n 30\n ],\n padding: [\n p.Number,\n 10\n ],\n major_tick_in: [\n p.Number,\n 5\n ],\n major_tick_out: [\n p.Number,\n 0\n ],\n minor_tick_in: [\n p.Number,\n 0\n ],\n minor_tick_out: [\n p.Number,\n 0\n ]\n });\n this.override({\n background_fill_color: '#ffffff',\n background_fill_alpha: 0.95,\n bar_line_color: null,\n border_line_color: null,\n major_label_text_align: 'center',\n major_label_text_baseline: 'middle',\n major_label_text_font_size: '8pt',\n major_tick_line_color: '#ffffff',\n minor_tick_line_color: null,\n title_text_font_size: '10pt',\n title_text_font_style: 'italic'\n });\n };\n ColorBar.prototype._normals = function () {\n return this.orientation == 'vertical' ? [\n 1,\n 0\n ] : [\n 0,\n 1\n ];\n };\n ColorBar.prototype._title_extent = function () {\n var font_value = this.title_text_font + ' ' + this.title_text_font_size + ' ' + this.title_text_font_style;\n var title_extent = this.title ? text_util.get_text_height(font_value).height + this.title_standoff : 0;\n return title_extent;\n };\n ColorBar.prototype._tick_extent = function () {\n if (this.color_mapper.low != null && this.color_mapper.high != null)\n return array_1.max([\n this.major_tick_out,\n this.minor_tick_out\n ]);\n else\n return 0;\n };\n ColorBar.prototype._computed_image_dimensions = function () {\n /*\n Heuristics to determine ColorBar image dimensions if set to \"auto\"\n \n Note: Returns the height/width values for the ColorBar's scale image, not\n the dimensions of the entire ColorBar.\n \n If the short dimension (the width of a vertical bar or height of a\n horizontal bar) is set to \"auto\", the resulting dimension will be set to\n 25 px.\n \n For a ColorBar in a side panel with the long dimension (the height of a\n vertical bar or width of a horizontal bar) set to \"auto\", the\n resulting dimension will be as long as the adjacent frame edge, so that the\n bar \"fits\" to the plot.\n \n For a ColorBar in the plot frame with the long dimension set to \"auto\", the\n resulting dimension will be the greater of:\n * The length of the color palette * 25px\n * The parallel frame dimension * 0.30\n (i.e the frame height for a vertical ColorBar)\n But not greater than:\n * The parallel frame dimension * 0.80\n */\n var frame_height = this.plot.plot_canvas.frame._height.value;\n var frame_width = this.plot.plot_canvas.frame._width.value;\n var title_extent = this._title_extent();\n var height, width;\n switch (this.orientation) {\n case 'vertical': {\n if (this.height == 'auto') {\n if (this.panel != null)\n height = frame_height - 2 * this.padding - title_extent;\n else {\n height = array_1.max([\n this.color_mapper.palette.length * SHORT_DIM,\n frame_height * LONG_DIM_MIN_SCALAR\n ]);\n height = array_1.min([\n height,\n frame_height * LONG_DIM_MAX_SCALAR - 2 * this.padding - title_extent\n ]);\n }\n } else\n height = this.height;\n width = this.width == 'auto' ? SHORT_DIM : this.width;\n break;\n }\n case 'horizontal': {\n height = this.height == 'auto' ? SHORT_DIM : this.height;\n if (this.width == 'auto') {\n if (this.panel != null)\n width = frame_width - 2 * this.padding;\n else {\n width = array_1.max([\n this.color_mapper.palette.length * SHORT_DIM,\n frame_width * LONG_DIM_MIN_SCALAR\n ]);\n width = array_1.min([\n width,\n frame_width * LONG_DIM_MAX_SCALAR - 2 * this.padding\n ]);\n }\n } else\n width = this.width;\n break;\n }\n default:\n throw new Error('unreachable code');\n }\n return {\n width: width,\n height: height\n };\n };\n ColorBar.prototype._tick_coordinate_scale = function (scale_length) {\n /*\n Creates and returns a scale instance that maps the `color_mapper` range\n (low to high) to a screen space range equal to the length of the ColorBar's\n scale image. The scale is used to calculate the tick coordinates in screen\n coordinates for plotting purposes.\n \n Note: the type of color_mapper has to match the type of scale (i.e.\n a LinearColorMapper will require a corresponding LinearScale instance).\n */\n var ranges = {\n source_range: new range1d_1.Range1d({\n start: this.color_mapper.low,\n end: this.color_mapper.high\n }),\n target_range: new range1d_1.Range1d({\n start: 0,\n end: scale_length\n })\n };\n switch (this.color_mapper.type) {\n case 'LinearColorMapper':\n return new linear_scale_1.LinearScale(ranges);\n case 'LogColorMapper':\n return new log_scale_1.LogScale(ranges);\n default:\n throw new Error('unreachable code');\n }\n };\n ColorBar.prototype._format_major_labels = function (initial_labels, major_ticks) {\n // XXX: passing null as cross_loc probably means MercatorTickFormatters, etc\n // will not function properly in conjunction with colorbars\n var formatted_labels = this.formatter.doFormat(initial_labels, null);\n for (var i = 0, end = major_ticks.length; i < end; i++) {\n if (major_ticks[i] in this.major_label_overrides)\n formatted_labels[i] = this.major_label_overrides[major_ticks[i]];\n }\n return formatted_labels;\n };\n ColorBar.prototype.tick_info = function () {\n var image_dimensions = this._computed_image_dimensions();\n var scale_length;\n switch (this.orientation) {\n case 'vertical': {\n scale_length = image_dimensions.height;\n break;\n }\n case 'horizontal': {\n scale_length = image_dimensions.width;\n break;\n }\n default:\n throw new Error('unreachable code');\n }\n var scale = this._tick_coordinate_scale(scale_length);\n var _a = this._normals(), i = _a[0], j = _a[1];\n var _b = [\n this.color_mapper.low,\n this.color_mapper.high\n ], start = _b[0], end = _b[1];\n // XXX: passing null as cross_loc probably means MercatorTickers, etc\n // will not function properly in conjunction with colorbars\n var ticks = this.ticker.get_ticks(start, end, null, null, this.ticker.desired_num_ticks);\n var majors = ticks.major;\n var minors = ticks.minor;\n var major_coords = [\n [],\n []\n ];\n var minor_coords = [\n [],\n []\n ];\n for (var ii = 0, _end = majors.length; ii < _end; ii++) {\n if (majors[ii] < start || majors[ii] > end)\n continue;\n major_coords[i].push(majors[ii]);\n major_coords[j].push(0);\n }\n for (var ii = 0, _end = minors.length; ii < _end; ii++) {\n if (minors[ii] < start || minors[ii] > end)\n continue;\n minor_coords[i].push(minors[ii]);\n minor_coords[j].push(0);\n }\n var labels = { major: this._format_major_labels(major_coords[i], majors) };\n var coords = {\n major: [\n [],\n []\n ],\n minor: [\n [],\n []\n ]\n };\n coords.major[i] = scale.v_compute(major_coords[i]);\n coords.minor[i] = scale.v_compute(minor_coords[i]);\n coords.major[j] = major_coords[j];\n coords.minor[j] = minor_coords[j];\n // Because we want the scale to be reversed\n if (this.orientation == 'vertical') {\n coords.major[i] = arrayable_1.map(coords.major[i], function (coord) {\n return scale_length - coord;\n });\n coords.minor[i] = arrayable_1.map(coords.minor[i], function (coord) {\n return scale_length - coord;\n });\n }\n return {\n coords: coords,\n labels: labels\n };\n };\n return ColorBar;\n }(annotation_1.Annotation);\n exports.ColorBar = ColorBar;\n ColorBar.initClass(); \n}","/*models/annotations/index*/\nfunction _(require, module, exports) {\n var annotation_1 = require(54 /* ./annotation */);\n exports.Annotation = annotation_1.Annotation;\n var arrow_1 = require(55 /* ./arrow */);\n exports.Arrow = arrow_1.Arrow;\n var arrow_head_1 = require(56 /* ./arrow_head */);\n exports.ArrowHead = arrow_head_1.ArrowHead;\n var arrow_head_2 = require(56 /* ./arrow_head */);\n exports.OpenHead = arrow_head_2.OpenHead;\n var arrow_head_3 = require(56 /* ./arrow_head */);\n exports.NormalHead = arrow_head_3.NormalHead;\n var arrow_head_4 = require(56 /* ./arrow_head */);\n exports.TeeHead = arrow_head_4.TeeHead;\n var arrow_head_5 = require(56 /* ./arrow_head */);\n exports.VeeHead = arrow_head_5.VeeHead;\n var band_1 = require(57 /* ./band */);\n exports.Band = band_1.Band;\n var box_annotation_1 = require(58 /* ./box_annotation */);\n exports.BoxAnnotation = box_annotation_1.BoxAnnotation;\n var color_bar_1 = require(59 /* ./color_bar */);\n exports.ColorBar = color_bar_1.ColorBar;\n var label_1 = require(61 /* ./label */);\n exports.Label = label_1.Label;\n var label_set_1 = require(62 /* ./label_set */);\n exports.LabelSet = label_set_1.LabelSet;\n var legend_1 = require(63 /* ./legend */);\n exports.Legend = legend_1.Legend;\n var legend_item_1 = require(64 /* ./legend_item */);\n exports.LegendItem = legend_item_1.LegendItem;\n var poly_annotation_1 = require(65 /* ./poly_annotation */);\n exports.PolyAnnotation = poly_annotation_1.PolyAnnotation;\n var span_1 = require(66 /* ./span */);\n exports.Span = span_1.Span;\n var text_annotation_1 = require(67 /* ./text_annotation */);\n exports.TextAnnotation = text_annotation_1.TextAnnotation;\n var title_1 = require(68 /* ./title */);\n exports.Title = title_1.Title;\n var toolbar_panel_1 = require(69 /* ./toolbar_panel */);\n exports.ToolbarPanel = toolbar_panel_1.ToolbarPanel;\n var tooltip_1 = require(70 /* ./tooltip */);\n exports.Tooltip = tooltip_1.Tooltip;\n var whisker_1 = require(71 /* ./whisker */);\n exports.Whisker = whisker_1.Whisker; \n}","/*models/annotations/label*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var text_annotation_1 = require(67 /* ./text_annotation */);\n var dom_1 = require(5 /* core/dom */);\n var p = require(15 /* core/properties */);\n var LabelView = function (_super) {\n tslib_1.__extends(LabelView, _super);\n function LabelView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n LabelView.prototype.initialize = function (options) {\n _super.prototype.initialize.call(this, options);\n this.visuals.warm_cache();\n };\n LabelView.prototype._get_size = function () {\n var ctx = this.plot_view.canvas_view.ctx;\n this.visuals.text.set_value(ctx);\n if (this.model.panel.is_horizontal) {\n var height = ctx.measureText(this.model.text).ascent;\n return height;\n } else {\n var width = ctx.measureText(this.model.text).width;\n return width;\n }\n };\n LabelView.prototype.render = function () {\n if (!this.model.visible && this.model.render_mode == 'css')\n dom_1.hide(this.el);\n if (!this.model.visible)\n return;\n // Here because AngleSpec does units tranform and label doesn't support specs\n var angle;\n switch (this.model.angle_units) {\n case 'rad': {\n angle = -this.model.angle;\n break;\n }\n case 'deg': {\n angle = -this.model.angle * Math.PI / 180;\n break;\n }\n default:\n throw new Error('unreachable code');\n }\n var panel = this.model.panel != null ? this.model.panel : this.plot_view.frame;\n var xscale = this.plot_view.frame.xscales[this.model.x_range_name];\n var yscale = this.plot_view.frame.yscales[this.model.y_range_name];\n var sx = this.model.x_units == 'data' ? xscale.compute(this.model.x) : panel.xview.compute(this.model.x);\n var sy = this.model.y_units == 'data' ? yscale.compute(this.model.y) : panel.yview.compute(this.model.y);\n sx += this.model.x_offset;\n sy -= this.model.y_offset;\n var draw = this.model.render_mode == 'canvas' ? this._canvas_text.bind(this) : this._css_text.bind(this);\n draw(this.plot_view.canvas_view.ctx, this.model.text, sx, sy, angle);\n };\n return LabelView;\n }(text_annotation_1.TextAnnotationView);\n exports.LabelView = LabelView;\n var Label = function (_super) {\n tslib_1.__extends(Label, _super);\n function Label(attrs) {\n return _super.call(this, attrs) || this;\n }\n Label.initClass = function () {\n this.prototype.type = 'Label';\n this.prototype.default_view = LabelView;\n this.mixins([\n 'text',\n 'line:border_',\n 'fill:background_'\n ]);\n this.define({\n x: [p.Number],\n x_units: [\n p.SpatialUnits,\n 'data'\n ],\n y: [p.Number],\n y_units: [\n p.SpatialUnits,\n 'data'\n ],\n text: [p.String],\n angle: [\n p.Angle,\n 0\n ],\n angle_units: [\n p.AngleUnits,\n 'rad'\n ],\n x_offset: [\n p.Number,\n 0\n ],\n y_offset: [\n p.Number,\n 0\n ],\n x_range_name: [\n p.String,\n 'default'\n ],\n y_range_name: [\n p.String,\n 'default'\n ]\n });\n this.override({\n background_fill_color: null,\n border_line_color: null\n });\n };\n return Label;\n }(text_annotation_1.TextAnnotation);\n exports.Label = Label;\n Label.initClass(); \n}","/*models/annotations/label_set*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var text_annotation_1 = require(67 /* ./text_annotation */);\n var column_data_source_1 = require(184 /* ../sources/column_data_source */);\n var dom_1 = require(5 /* core/dom */);\n var p = require(15 /* core/properties */);\n var LabelSetView = function (_super) {\n tslib_1.__extends(LabelSetView, _super);\n function LabelSetView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n LabelSetView.prototype.initialize = function (options) {\n _super.prototype.initialize.call(this, options);\n this.set_data(this.model.source);\n if (this.model.render_mode == 'css') {\n for (var i = 0, end = this._text.length; i < end; i++) {\n var el = dom_1.div({\n class: 'bk-annotation-child',\n style: { display: 'none' }\n });\n this.el.appendChild(el);\n }\n }\n };\n LabelSetView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n if (this.model.render_mode == 'css') {\n // dispatch CSS update immediately\n this.connect(this.model.change, function () {\n _this.set_data(_this.model.source);\n _this.render();\n });\n this.connect(this.model.source.streaming, function () {\n _this.set_data(_this.model.source);\n _this.render();\n });\n this.connect(this.model.source.patching, function () {\n _this.set_data(_this.model.source);\n _this.render();\n });\n this.connect(this.model.source.change, function () {\n _this.set_data(_this.model.source);\n _this.render();\n });\n } else {\n this.connect(this.model.change, function () {\n _this.set_data(_this.model.source);\n _this.plot_view.request_render();\n });\n this.connect(this.model.source.streaming, function () {\n _this.set_data(_this.model.source);\n _this.plot_view.request_render();\n });\n this.connect(this.model.source.patching, function () {\n _this.set_data(_this.model.source);\n _this.plot_view.request_render();\n });\n this.connect(this.model.source.change, function () {\n _this.set_data(_this.model.source);\n _this.plot_view.request_render();\n });\n }\n };\n LabelSetView.prototype.set_data = function (source) {\n _super.prototype.set_data.call(this, source);\n this.visuals.warm_cache(source);\n };\n LabelSetView.prototype._map_data = function () {\n var xscale = this.plot_view.frame.xscales[this.model.x_range_name];\n var yscale = this.plot_view.frame.yscales[this.model.y_range_name];\n var panel = this.model.panel != null ? this.model.panel : this.plot_view.frame;\n var sx = this.model.x_units == 'data' ? xscale.v_compute(this._x) : panel.xview.v_compute(this._x);\n var sy = this.model.y_units == 'data' ? yscale.v_compute(this._y) : panel.yview.v_compute(this._y);\n return [\n sx,\n sy\n ];\n };\n LabelSetView.prototype.render = function () {\n if (!this.model.visible && this.model.render_mode == 'css')\n dom_1.hide(this.el);\n if (!this.model.visible)\n return;\n var draw = this.model.render_mode == 'canvas' ? this._v_canvas_text.bind(this) : this._v_css_text.bind(this);\n var ctx = this.plot_view.canvas_view.ctx;\n var _a = this._map_data(), sx = _a[0], sy = _a[1];\n for (var i = 0, end = this._text.length; i < end; i++) {\n draw(ctx, i, this._text[i], sx[i] + this._x_offset[i], sy[i] - this._y_offset[i], this._angle[i]);\n }\n };\n LabelSetView.prototype._get_size = function () {\n var ctx = this.plot_view.canvas_view.ctx;\n this.visuals.text.set_value(ctx);\n switch (this.model.panel.side) {\n case 'above':\n case 'below': {\n var height = ctx.measureText(this._text[0]).ascent;\n return height;\n }\n case 'left':\n case 'right': {\n var width = ctx.measureText(this._text[0]).width;\n return width;\n }\n default:\n throw new Error('unreachable code');\n }\n };\n LabelSetView.prototype._v_canvas_text = function (ctx, i, text, sx, sy, angle) {\n this.visuals.text.set_vectorize(ctx, i);\n var bbox_dims = this._calculate_bounding_box_dimensions(ctx, text);\n ctx.save();\n ctx.beginPath();\n ctx.translate(sx, sy);\n ctx.rotate(angle);\n ctx.rect(bbox_dims[0], bbox_dims[1], bbox_dims[2], bbox_dims[3]);\n if (this.visuals.background_fill.doit) {\n this.visuals.background_fill.set_vectorize(ctx, i);\n ctx.fill();\n }\n if (this.visuals.border_line.doit) {\n this.visuals.border_line.set_vectorize(ctx, i);\n ctx.stroke();\n }\n if (this.visuals.text.doit) {\n this.visuals.text.set_vectorize(ctx, i);\n ctx.fillText(text, 0, 0);\n }\n ctx.restore();\n };\n LabelSetView.prototype._v_css_text = function (ctx, i, text, sx, sy, angle) {\n var el = this.el.children[i];\n el.textContent = text;\n this.visuals.text.set_vectorize(ctx, i);\n var bbox_dims = this._calculate_bounding_box_dimensions(ctx, text);\n // attempt to support vector-style (\"8 4 8\") line dashing for css mode\n var ld = this.visuals.border_line.line_dash.value();\n var line_dash = ld.length < 2 ? 'solid' : 'dashed';\n this.visuals.border_line.set_vectorize(ctx, i);\n this.visuals.background_fill.set_vectorize(ctx, i);\n el.style.position = 'absolute';\n el.style.left = sx + bbox_dims[0] + 'px';\n el.style.top = sy + bbox_dims[1] + 'px';\n el.style.color = '' + this.visuals.text.text_color.value();\n el.style.opacity = '' + this.visuals.text.text_alpha.value();\n el.style.font = '' + this.visuals.text.font_value();\n el.style.lineHeight = 'normal';\n // needed to prevent ipynb css override\n if (angle) {\n el.style.transform = 'rotate(' + angle + 'rad)';\n }\n if (this.visuals.background_fill.doit) {\n el.style.backgroundColor = '' + this.visuals.background_fill.color_value();\n }\n if (this.visuals.border_line.doit) {\n el.style.borderStyle = '' + line_dash;\n el.style.borderWidth = this.visuals.border_line.line_width.value() + 'px';\n el.style.borderColor = '' + this.visuals.border_line.color_value();\n }\n dom_1.show(el);\n };\n return LabelSetView;\n }(text_annotation_1.TextAnnotationView);\n exports.LabelSetView = LabelSetView;\n var LabelSet = function (_super) {\n tslib_1.__extends(LabelSet, _super);\n function LabelSet(attrs) {\n return _super.call(this, attrs) || this;\n }\n LabelSet.initClass = function () {\n this.prototype.type = 'LabelSet';\n this.prototype.default_view = LabelSetView;\n this.mixins([\n 'text',\n 'line:border_',\n 'fill:background_'\n ]);\n this.define({\n x: [p.NumberSpec],\n y: [p.NumberSpec],\n x_units: [\n p.SpatialUnits,\n 'data'\n ],\n y_units: [\n p.SpatialUnits,\n 'data'\n ],\n text: [\n p.StringSpec,\n { field: 'text' }\n ],\n angle: [\n p.AngleSpec,\n 0\n ],\n x_offset: [\n p.NumberSpec,\n { value: 0 }\n ],\n y_offset: [\n p.NumberSpec,\n { value: 0 }\n ],\n source: [\n p.Instance,\n function () {\n return new column_data_source_1.ColumnDataSource();\n }\n ],\n x_range_name: [\n p.String,\n 'default'\n ],\n y_range_name: [\n p.String,\n 'default'\n ]\n });\n this.override({\n background_fill_color: null,\n border_line_color: null\n });\n };\n return LabelSet;\n }(text_annotation_1.TextAnnotation);\n exports.LabelSet = LabelSet;\n LabelSet.initClass(); \n}","/*models/annotations/legend*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var annotation_1 = require(54 /* ./annotation */);\n var p = require(15 /* core/properties */);\n var text_1 = require(41 /* core/util/text */);\n var bbox_1 = require(24 /* core/util/bbox */);\n var array_1 = require(21 /* core/util/array */);\n var object_1 = require(32 /* core/util/object */);\n var types_1 = require(44 /* core/util/types */);\n var LegendView = function (_super) {\n tslib_1.__extends(LegendView, _super);\n function LegendView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n Object.defineProperty(LegendView.prototype, 'cursor', {\n get: function () {\n return this.model.click_policy == 'none' ? null : 'pointer';\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(LegendView.prototype, 'legend_padding', {\n get: function () {\n return this.visuals.border_line.line_color.value() != null ? this.model.padding : 0;\n },\n enumerable: true,\n configurable: true\n });\n LegendView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.model.properties.visible.change, function () {\n return _this.plot_view.request_render();\n });\n };\n LegendView.prototype.compute_legend_bbox = function () {\n var legend_names = this.model.get_legend_names();\n var _a = this.model, glyph_height = _a.glyph_height, glyph_width = _a.glyph_width;\n var _b = this.model, label_height = _b.label_height, label_width = _b.label_width;\n this.max_label_height = array_1.max([\n text_1.get_text_height(this.visuals.label_text.font_value()).height,\n label_height,\n glyph_height\n ]);\n // this is to measure text properties\n var ctx = this.plot_view.canvas_view.ctx;\n ctx.save();\n this.visuals.label_text.set_value(ctx);\n this.text_widths = {};\n for (var _i = 0, legend_names_1 = legend_names; _i < legend_names_1.length; _i++) {\n var name_1 = legend_names_1[_i];\n this.text_widths[name_1] = array_1.max([\n ctx.measureText(name_1).width,\n label_width\n ]);\n }\n ctx.restore();\n var max_label_width = Math.max(array_1.max(object_1.values(this.text_widths)), 0);\n var legend_margin = this.model.margin;\n var legend_padding = this.legend_padding;\n var legend_spacing = this.model.spacing;\n var label_standoff = this.model.label_standoff;\n var legend_height, legend_width;\n if (this.model.orientation == 'vertical') {\n legend_height = legend_names.length * this.max_label_height + Math.max(legend_names.length - 1, 0) * legend_spacing + 2 * legend_padding;\n legend_width = max_label_width + glyph_width + label_standoff + 2 * legend_padding;\n } else {\n legend_width = 2 * legend_padding + Math.max(legend_names.length - 1, 0) * legend_spacing;\n for (var name_2 in this.text_widths) {\n var width = this.text_widths[name_2];\n legend_width += array_1.max([\n width,\n label_width\n ]) + glyph_width + label_standoff;\n }\n legend_height = this.max_label_height + 2 * legend_padding;\n }\n var panel = this.model.panel != null ? this.model.panel : this.plot_view.frame;\n var _c = panel.bbox.ranges, hr = _c[0], vr = _c[1];\n var location = this.model.location;\n var sx, sy;\n if (types_1.isString(location)) {\n switch (location) {\n case 'top_left':\n sx = hr.start + legend_margin;\n sy = vr.start + legend_margin;\n break;\n case 'top_center':\n sx = (hr.end + hr.start) / 2 - legend_width / 2;\n sy = vr.start + legend_margin;\n break;\n case 'top_right':\n sx = hr.end - legend_margin - legend_width;\n sy = vr.start + legend_margin;\n break;\n case 'bottom_right':\n sx = hr.end - legend_margin - legend_width;\n sy = vr.end - legend_margin - legend_height;\n break;\n case 'bottom_center':\n sx = (hr.end + hr.start) / 2 - legend_width / 2;\n sy = vr.end - legend_margin - legend_height;\n break;\n case 'bottom_left':\n sx = hr.start + legend_margin;\n sy = vr.end - legend_margin - legend_height;\n break;\n case 'center_left':\n sx = hr.start + legend_margin;\n sy = (vr.end + vr.start) / 2 - legend_height / 2;\n break;\n case 'center':\n sx = (hr.end + hr.start) / 2 - legend_width / 2;\n sy = (vr.end + vr.start) / 2 - legend_height / 2;\n break;\n case 'center_right':\n sx = hr.end - legend_margin - legend_width;\n sy = (vr.end + vr.start) / 2 - legend_height / 2;\n break;\n default:\n throw new Error('unreachable code');\n }\n } else if (types_1.isArray(location) && location.length == 2) {\n var vx = location[0], vy = location[1];\n sx = panel.xview.compute(vx);\n sy = panel.yview.compute(vy) - legend_height;\n } else\n throw new Error('unreachable code');\n return {\n x: sx,\n y: sy,\n width: legend_width,\n height: legend_height\n };\n };\n LegendView.prototype.bbox = function () {\n var _a = this.compute_legend_bbox(), x = _a.x, y = _a.y, width = _a.width, height = _a.height;\n return new bbox_1.BBox({\n x: x,\n y: y,\n width: width,\n height: height\n });\n };\n LegendView.prototype.on_hit = function (sx, sy) {\n var yoffset;\n var glyph_width = this.model.glyph_width;\n var legend_padding = this.legend_padding;\n var legend_spacing = this.model.spacing;\n var label_standoff = this.model.label_standoff;\n var xoffset = yoffset = legend_padding;\n var legend_bbox = this.compute_legend_bbox();\n var vertical = this.model.orientation == 'vertical';\n for (var _i = 0, _a = this.model.items; _i < _a.length; _i++) {\n var item = _a[_i];\n var labels = item.get_labels_list_from_label_prop();\n for (var _b = 0, labels_1 = labels; _b < labels_1.length; _b++) {\n var label = labels_1[_b];\n var x1 = legend_bbox.x + xoffset;\n var y1 = legend_bbox.y + yoffset;\n var w = void 0, h = void 0;\n if (vertical)\n _c = [\n legend_bbox.width - 2 * legend_padding,\n this.max_label_height\n ], w = _c[0], h = _c[1];\n else\n _d = [\n this.text_widths[label] + glyph_width + label_standoff,\n this.max_label_height\n ], w = _d[0], h = _d[1];\n var bbox = new bbox_1.BBox({\n x: x1,\n y: y1,\n width: w,\n height: h\n });\n if (bbox.contains(sx, sy)) {\n switch (this.model.click_policy) {\n case 'hide': {\n for (var _e = 0, _f = item.renderers; _e < _f.length; _e++) {\n var r = _f[_e];\n r.visible = !r.visible;\n }\n break;\n }\n case 'mute': {\n for (var _g = 0, _h = item.renderers; _g < _h.length; _g++) {\n var r = _h[_g];\n r.muted = !r.muted;\n }\n break;\n }\n }\n return true;\n }\n if (vertical)\n yoffset += this.max_label_height + legend_spacing;\n else\n xoffset += this.text_widths[label] + glyph_width + label_standoff + legend_spacing;\n }\n }\n return false;\n var _c, _d;\n };\n LegendView.prototype.render = function () {\n if (!this.model.visible)\n return;\n if (this.model.items.length == 0)\n return;\n var ctx = this.plot_view.canvas_view.ctx;\n var bbox = this.compute_legend_bbox();\n ctx.save();\n this._draw_legend_box(ctx, bbox);\n this._draw_legend_items(ctx, bbox);\n ctx.restore();\n };\n LegendView.prototype._draw_legend_box = function (ctx, bbox) {\n ctx.beginPath();\n ctx.rect(bbox.x, bbox.y, bbox.width, bbox.height);\n this.visuals.background_fill.set_value(ctx);\n ctx.fill();\n if (this.visuals.border_line.doit) {\n this.visuals.border_line.set_value(ctx);\n ctx.stroke();\n }\n };\n LegendView.prototype._draw_legend_items = function (ctx, bbox) {\n var _this = this;\n var _a = this.model, glyph_width = _a.glyph_width, glyph_height = _a.glyph_height;\n var legend_padding = this.legend_padding;\n var legend_spacing = this.model.spacing;\n var label_standoff = this.model.label_standoff;\n var xoffset = legend_padding;\n var yoffset = legend_padding;\n var vertical = this.model.orientation == 'vertical';\n var _loop_1 = function (item) {\n var labels = item.get_labels_list_from_label_prop();\n var field = item.get_field_from_label_prop();\n if (labels.length == 0)\n return 'continue';\n var active = function () {\n switch (_this.model.click_policy) {\n case 'none':\n return true;\n case 'hide':\n return array_1.all(item.renderers, function (r) {\n return r.visible;\n });\n case 'mute':\n return array_1.all(item.renderers, function (r) {\n return !r.muted;\n });\n }\n }();\n for (var _i = 0, labels_2 = labels; _i < labels_2.length; _i++) {\n var label = labels_2[_i];\n var x1 = bbox.x + xoffset;\n var y1 = bbox.y + yoffset;\n var x2 = x1 + glyph_width;\n var y2 = y1 + glyph_height;\n if (vertical)\n yoffset += this_1.max_label_height + legend_spacing;\n else\n xoffset += this_1.text_widths[label] + glyph_width + label_standoff + legend_spacing;\n this_1.visuals.label_text.set_value(ctx);\n ctx.fillText(label, x2 + label_standoff, y1 + this_1.max_label_height / 2);\n for (var _a = 0, _b = item.renderers; _a < _b.length; _a++) {\n var r = _b[_a];\n var view = this_1.plot_view.renderer_views[r.id];\n view.draw_legend(ctx, x1, x2, y1, y2, field, label);\n }\n if (!active) {\n var w = void 0, h = void 0;\n if (vertical)\n _c = [\n bbox.width - 2 * legend_padding,\n this_1.max_label_height\n ], w = _c[0], h = _c[1];\n else\n _d = [\n this_1.text_widths[label] + glyph_width + label_standoff,\n this_1.max_label_height\n ], w = _d[0], h = _d[1];\n ctx.beginPath();\n ctx.rect(x1, y1, w, h);\n this_1.visuals.inactive_fill.set_value(ctx);\n ctx.fill();\n }\n }\n var _c, _d;\n };\n var this_1 = this;\n for (var _i = 0, _b = this.model.items; _i < _b.length; _i++) {\n var item = _b[_i];\n _loop_1(item);\n }\n };\n LegendView.prototype._get_size = function () {\n var bbox = this.compute_legend_bbox();\n switch (this.model.panel.side) {\n case 'above':\n case 'below':\n return bbox.height + 2 * this.model.margin;\n case 'left':\n case 'right':\n return bbox.width + 2 * this.model.margin;\n }\n };\n return LegendView;\n }(annotation_1.AnnotationView);\n exports.LegendView = LegendView;\n var Legend = function (_super) {\n tslib_1.__extends(Legend, _super);\n function Legend(attrs) {\n return _super.call(this, attrs) || this;\n }\n Legend.initClass = function () {\n this.prototype.type = 'Legend';\n this.prototype.default_view = LegendView;\n this.mixins([\n 'text:label_',\n 'fill:inactive_',\n 'line:border_',\n 'fill:background_'\n ]);\n this.define({\n orientation: [\n p.Orientation,\n 'vertical'\n ],\n location: [\n p.Any,\n 'top_right'\n ],\n label_standoff: [\n p.Number,\n 5\n ],\n glyph_height: [\n p.Number,\n 20\n ],\n glyph_width: [\n p.Number,\n 20\n ],\n label_height: [\n p.Number,\n 20\n ],\n label_width: [\n p.Number,\n 20\n ],\n margin: [\n p.Number,\n 10\n ],\n padding: [\n p.Number,\n 10\n ],\n spacing: [\n p.Number,\n 3\n ],\n items: [\n p.Array,\n []\n ],\n click_policy: [\n p.Any,\n 'none'\n ]\n });\n this.override({\n border_line_color: '#e5e5e5',\n border_line_alpha: 0.5,\n border_line_width: 1,\n background_fill_color: '#ffffff',\n background_fill_alpha: 0.95,\n inactive_fill_color: 'white',\n inactive_fill_alpha: 0.7,\n label_text_font_size: '10pt',\n label_text_baseline: 'middle'\n });\n };\n Legend.prototype.get_legend_names = function () {\n var legend_names = [];\n for (var _i = 0, _a = this.items; _i < _a.length; _i++) {\n var item = _a[_i];\n var labels = item.get_labels_list_from_label_prop();\n legend_names.push.apply(legend_names, labels);\n }\n return legend_names;\n };\n return Legend;\n }(annotation_1.Annotation);\n exports.Legend = Legend;\n Legend.initClass(); \n}","/*models/annotations/legend_item*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var model_1 = require(53 /* ../../model */);\n var columnar_data_source_1 = require(185 /* ../sources/columnar_data_source */);\n var vectorization_1 = require(47 /* core/vectorization */);\n var p = require(15 /* core/properties */);\n var logging_1 = require(14 /* core/logging */);\n var array_1 = require(21 /* core/util/array */);\n var LegendItem = function (_super) {\n tslib_1.__extends(LegendItem, _super);\n function LegendItem(attrs) {\n return _super.call(this, attrs) || this;\n }\n LegendItem.initClass = function () {\n this.prototype.type = 'LegendItem';\n this.define({\n label: [\n p.StringSpec,\n null\n ],\n renderers: [\n p.Array,\n []\n ]\n });\n };\n LegendItem.prototype._check_data_sources_on_renderers = function () {\n var field = this.get_field_from_label_prop();\n if (field != null) {\n if (this.renderers.length < 1) {\n return false;\n }\n var source = this.renderers[0].data_source;\n if (source != null) {\n for (var _i = 0, _a = this.renderers; _i < _a.length; _i++) {\n var r = _a[_i];\n if (r.data_source != source) {\n return false;\n }\n }\n }\n }\n return true;\n };\n LegendItem.prototype._check_field_label_on_data_source = function () {\n var field = this.get_field_from_label_prop();\n if (field != null) {\n if (this.renderers.length < 1) {\n return false;\n }\n var source = this.renderers[0].data_source;\n if (source != null && !array_1.includes(source.columns(), field)) {\n return false;\n }\n }\n return true;\n };\n LegendItem.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n // Validate data_sources match\n var data_source_validation = this._check_data_sources_on_renderers();\n if (!data_source_validation)\n logging_1.logger.error('Non matching data sources on legend item renderers');\n // Validate label in data_source\n var field_validation = this._check_field_label_on_data_source();\n if (!field_validation)\n logging_1.logger.error('Bad column name on label: ' + this.label);\n };\n LegendItem.prototype.get_field_from_label_prop = function () {\n var label = this.label;\n return vectorization_1.isField(label) ? label.field : null;\n };\n LegendItem.prototype.get_labels_list_from_label_prop = function () {\n // Always return a list of the labels\n if (vectorization_1.isValue(this.label))\n return [this.label.value];\n var field = this.get_field_from_label_prop();\n if (field != null) {\n var source = void 0;\n if (this.renderers[0] && this.renderers[0].data_source != null)\n source = this.renderers[0].data_source;\n else\n return ['No source found'];\n if (source instanceof columnar_data_source_1.ColumnarDataSource) {\n var data = source.get_column(field);\n if (data != null)\n return array_1.uniq(Array.from(data));\n else\n return ['Invalid field'];\n }\n }\n return [];\n };\n return LegendItem;\n }(model_1.Model);\n exports.LegendItem = LegendItem;\n LegendItem.initClass(); \n}","/*models/annotations/poly_annotation*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var annotation_1 = require(54 /* ./annotation */);\n var signaling_1 = require(19 /* core/signaling */);\n var p = require(15 /* core/properties */);\n var PolyAnnotationView = function (_super) {\n tslib_1.__extends(PolyAnnotationView, _super);\n function PolyAnnotationView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n PolyAnnotationView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n // need to respond to either normal BB change events or silent\n // \"data only updates\" that tools might want to use\n this.connect(this.model.change, function () {\n return _this.plot_view.request_render();\n });\n this.connect(this.model.data_update, function () {\n return _this.plot_view.request_render();\n });\n };\n PolyAnnotationView.prototype.render = function () {\n if (!this.model.visible)\n return;\n var _a = this.model, xs = _a.xs, ys = _a.ys;\n if (xs.length != ys.length)\n return;\n if (xs.length < 3 || ys.length < 3)\n return;\n var frame = this.plot_view.frame;\n var ctx = this.plot_view.canvas_view.ctx;\n for (var i = 0, end = xs.length; i < end; i++) {\n var sx = void 0;\n if (this.model.xs_units == 'screen')\n sx = this.model.screen ? xs[i] : frame.xview.compute(xs[i]);\n else\n throw new Error('not implemented');\n var sy = void 0;\n if (this.model.ys_units == 'screen')\n sy = this.model.screen ? ys[i] : frame.yview.compute(ys[i]);\n else\n throw new Error('not implemented');\n if (i == 0) {\n ctx.beginPath();\n ctx.moveTo(sx, sy);\n } else {\n ctx.lineTo(sx, sy);\n }\n }\n ctx.closePath();\n if (this.visuals.line.doit) {\n this.visuals.line.set_value(ctx);\n ctx.stroke();\n }\n if (this.visuals.fill.doit) {\n this.visuals.fill.set_value(ctx);\n ctx.fill();\n }\n };\n return PolyAnnotationView;\n }(annotation_1.AnnotationView);\n exports.PolyAnnotationView = PolyAnnotationView;\n var PolyAnnotation = function (_super) {\n tslib_1.__extends(PolyAnnotation, _super);\n function PolyAnnotation(attrs) {\n return _super.call(this, attrs) || this;\n }\n PolyAnnotation.initClass = function () {\n this.prototype.type = 'PolyAnnotation';\n this.prototype.default_view = PolyAnnotationView;\n this.mixins([\n 'line',\n 'fill'\n ]);\n this.define({\n xs: [\n p.Array,\n []\n ],\n xs_units: [\n p.SpatialUnits,\n 'data'\n ],\n ys: [\n p.Array,\n []\n ],\n ys_units: [\n p.SpatialUnits,\n 'data'\n ],\n x_range_name: [\n p.String,\n 'default'\n ],\n y_range_name: [\n p.String,\n 'default'\n ]\n });\n this.internal({\n screen: [\n p.Boolean,\n false\n ]\n });\n this.override({\n fill_color: '#fff9ba',\n fill_alpha: 0.4,\n line_color: '#cccccc',\n line_alpha: 0.3\n });\n };\n PolyAnnotation.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n this.data_update = new signaling_1.Signal0(this, 'data_update');\n };\n PolyAnnotation.prototype.update = function (_a) {\n var xs = _a.xs, ys = _a.ys;\n this.setv({\n xs: xs,\n ys: ys,\n screen: true\n }, { silent: true });\n this.data_update.emit();\n };\n return PolyAnnotation;\n }(annotation_1.Annotation);\n exports.PolyAnnotation = PolyAnnotation;\n PolyAnnotation.initClass(); \n}","/*models/annotations/span*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var annotation_1 = require(54 /* ./annotation */);\n var dom_1 = require(5 /* core/dom */);\n var p = require(15 /* core/properties */);\n var SpanView = function (_super) {\n tslib_1.__extends(SpanView, _super);\n function SpanView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n SpanView.prototype.initialize = function (options) {\n _super.prototype.initialize.call(this, options);\n this.plot_view.canvas_overlays.appendChild(this.el);\n this.el.style.position = 'absolute';\n dom_1.hide(this.el);\n };\n SpanView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n if (this.model.for_hover)\n this.connect(this.model.properties.computed_location.change, function () {\n return _this._draw_span();\n });\n else {\n if (this.model.render_mode == 'canvas') {\n this.connect(this.model.change, function () {\n return _this.plot_view.request_render();\n });\n this.connect(this.model.properties.location.change, function () {\n return _this.plot_view.request_render();\n });\n } else {\n this.connect(this.model.change, function () {\n return _this.render();\n });\n this.connect(this.model.properties.location.change, function () {\n return _this._draw_span();\n });\n }\n }\n };\n SpanView.prototype.render = function () {\n if (!this.model.visible && this.model.render_mode == 'css')\n dom_1.hide(this.el);\n if (!this.model.visible)\n return;\n this._draw_span();\n };\n SpanView.prototype._draw_span = function () {\n var _this = this;\n var loc = this.model.for_hover ? this.model.computed_location : this.model.location;\n if (loc == null) {\n dom_1.hide(this.el);\n return;\n }\n var frame = this.plot_view.frame;\n var xscale = frame.xscales[this.model.x_range_name];\n var yscale = frame.yscales[this.model.y_range_name];\n var _calc_dim = function (scale, view) {\n if (_this.model.for_hover)\n return _this.model.computed_location;\n else {\n if (_this.model.location_units == 'data')\n return scale.compute(loc);\n else\n return view.compute(loc);\n }\n };\n var height, sleft, stop, width;\n if (this.model.dimension == 'width') {\n stop = _calc_dim(yscale, frame.yview);\n sleft = frame._left.value;\n width = frame._width.value;\n height = this.model.properties.line_width.value();\n } else {\n stop = frame._top.value;\n sleft = _calc_dim(xscale, frame.xview);\n width = this.model.properties.line_width.value();\n height = frame._height.value;\n }\n if (this.model.render_mode == 'css') {\n this.el.style.top = stop + 'px';\n this.el.style.left = sleft + 'px';\n this.el.style.width = width + 'px';\n this.el.style.height = height + 'px';\n this.el.style.backgroundColor = this.model.properties.line_color.value();\n this.el.style.opacity = this.model.properties.line_alpha.value();\n dom_1.show(this.el);\n } else if (this.model.render_mode == 'canvas') {\n var ctx = this.plot_view.canvas_view.ctx;\n ctx.save();\n ctx.beginPath();\n this.visuals.line.set_value(ctx);\n ctx.moveTo(sleft, stop);\n if (this.model.dimension == 'width') {\n ctx.lineTo(sleft + width, stop);\n } else {\n ctx.lineTo(sleft, stop + height);\n }\n ctx.stroke();\n ctx.restore();\n }\n };\n return SpanView;\n }(annotation_1.AnnotationView);\n exports.SpanView = SpanView;\n var Span = function (_super) {\n tslib_1.__extends(Span, _super);\n function Span(attrs) {\n return _super.call(this, attrs) || this;\n }\n Span.initClass = function () {\n this.prototype.type = 'Span';\n this.prototype.default_view = SpanView;\n this.mixins(['line']);\n this.define({\n render_mode: [\n p.RenderMode,\n 'canvas'\n ],\n x_range_name: [\n p.String,\n 'default'\n ],\n y_range_name: [\n p.String,\n 'default'\n ],\n location: [\n p.Number,\n null\n ],\n location_units: [\n p.SpatialUnits,\n 'data'\n ],\n dimension: [\n p.Dimension,\n 'width'\n ]\n });\n this.override({ line_color: 'black' });\n this.internal({\n for_hover: [\n p.Boolean,\n false\n ],\n computed_location: [\n p.Number,\n null\n ]\n });\n };\n return Span;\n }(annotation_1.Annotation);\n exports.Span = Span;\n Span.initClass(); \n}","/*models/annotations/text_annotation*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var annotation_1 = require(54 /* ./annotation */);\n var dom_1 = require(5 /* core/dom */);\n var p = require(15 /* core/properties */);\n var text_1 = require(41 /* core/util/text */);\n var TextAnnotationView = function (_super) {\n tslib_1.__extends(TextAnnotationView, _super);\n function TextAnnotationView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n TextAnnotationView.prototype.initialize = function (options) {\n _super.prototype.initialize.call(this, options);\n if (this.model.render_mode == 'css') {\n this.el.classList.add('bk-annotation');\n this.plot_view.canvas_overlays.appendChild(this.el);\n }\n };\n TextAnnotationView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n if (this.model.render_mode == 'css') {\n // dispatch CSS update immediately\n this.connect(this.model.change, function () {\n return _this.render();\n });\n } else {\n this.connect(this.model.change, function () {\n return _this.plot_view.request_render();\n });\n }\n };\n TextAnnotationView.prototype._calculate_text_dimensions = function (ctx, text) {\n var width = ctx.measureText(text).width;\n var height = text_1.get_text_height(this.visuals.text.font_value()).height;\n return [\n width,\n height\n ];\n };\n TextAnnotationView.prototype._calculate_bounding_box_dimensions = function (ctx, text) {\n var _a = this._calculate_text_dimensions(ctx, text), width = _a[0], height = _a[1];\n var x_offset;\n switch (ctx.textAlign) {\n case 'left':\n x_offset = 0;\n break;\n case 'center':\n x_offset = -width / 2;\n break;\n case 'right':\n x_offset = -width;\n break;\n default:\n throw new Error('unreachable code');\n }\n // guestimated from https://www.w3.org/TR/2dcontext/#dom-context-2d-textbaseline\n var y_offset;\n switch (ctx.textBaseline) {\n case 'top':\n y_offset = 0;\n break;\n case 'middle':\n y_offset = -0.5 * height;\n break;\n case 'bottom':\n y_offset = -1 * height;\n break;\n case 'alphabetic':\n y_offset = -0.8 * height;\n break;\n case 'hanging':\n y_offset = -0.17 * height;\n break;\n case 'ideographic':\n y_offset = -0.83 * height;\n break;\n default:\n throw new Error('unreachable code');\n }\n return [\n x_offset,\n y_offset,\n width,\n height\n ];\n };\n TextAnnotationView.prototype._canvas_text = function (ctx, text, sx, sy, angle) {\n this.visuals.text.set_value(ctx);\n var bbox_dims = this._calculate_bounding_box_dimensions(ctx, text);\n ctx.save();\n ctx.beginPath();\n ctx.translate(sx, sy);\n if (angle)\n ctx.rotate(angle);\n ctx.rect(bbox_dims[0], bbox_dims[1], bbox_dims[2], bbox_dims[3]);\n if (this.visuals.background_fill.doit) {\n this.visuals.background_fill.set_value(ctx);\n ctx.fill();\n }\n if (this.visuals.border_line.doit) {\n this.visuals.border_line.set_value(ctx);\n ctx.stroke();\n }\n if (this.visuals.text.doit) {\n this.visuals.text.set_value(ctx);\n ctx.fillText(text, 0, 0);\n }\n ctx.restore();\n };\n TextAnnotationView.prototype._css_text = function (ctx, text, sx, sy, angle) {\n dom_1.hide(this.el);\n this.visuals.text.set_value(ctx);\n var bbox_dims = this._calculate_bounding_box_dimensions(ctx, text);\n // attempt to support vector string-style (\"8 4 8\") line dashing for css mode\n var ld = this.visuals.border_line.line_dash.value();\n var line_dash = ld.length < 2 ? 'solid' : 'dashed';\n this.visuals.border_line.set_value(ctx);\n this.visuals.background_fill.set_value(ctx);\n this.el.style.position = 'absolute';\n this.el.style.left = sx + bbox_dims[0] + 'px';\n this.el.style.top = sy + bbox_dims[1] + 'px';\n this.el.style.color = '' + this.visuals.text.text_color.value();\n this.el.style.opacity = '' + this.visuals.text.text_alpha.value();\n this.el.style.font = '' + this.visuals.text.font_value();\n this.el.style.lineHeight = 'normal';\n // needed to prevent ipynb css override\n if (angle) {\n this.el.style.transform = 'rotate(' + angle + 'rad)';\n }\n if (this.visuals.background_fill.doit) {\n this.el.style.backgroundColor = '' + this.visuals.background_fill.color_value();\n }\n if (this.visuals.border_line.doit) {\n this.el.style.borderStyle = '' + line_dash;\n this.el.style.borderWidth = this.visuals.border_line.line_width.value() + 'px';\n this.el.style.borderColor = '' + this.visuals.border_line.color_value();\n }\n this.el.textContent = text;\n dom_1.show(this.el);\n };\n return TextAnnotationView;\n }(annotation_1.AnnotationView);\n exports.TextAnnotationView = TextAnnotationView;\n var TextAnnotation = function (_super) {\n tslib_1.__extends(TextAnnotation, _super);\n function TextAnnotation(attrs) {\n return _super.call(this, attrs) || this;\n }\n TextAnnotation.initClass = function () {\n this.prototype.type = 'TextAnnotation';\n this.define({\n render_mode: [\n p.RenderMode,\n 'canvas'\n ]\n });\n };\n return TextAnnotation;\n }(annotation_1.Annotation);\n exports.TextAnnotation = TextAnnotation;\n TextAnnotation.initClass(); \n}","/*models/annotations/title*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var text_annotation_1 = require(67 /* ./text_annotation */);\n var dom_1 = require(5 /* core/dom */);\n var p = require(15 /* core/properties */);\n var visuals_1 = require(49 /* core/visuals */);\n var TitleView = function (_super) {\n tslib_1.__extends(TitleView, _super);\n function TitleView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n TitleView.prototype.initialize = function (options) {\n _super.prototype.initialize.call(this, options);\n this.visuals.text = new visuals_1.Text(this.model);\n };\n TitleView.prototype._get_location = function () {\n var panel = this.model.panel;\n var hmargin = this.model.offset;\n var vmargin = 5;\n var sx, sy;\n switch (panel.side) {\n case 'above':\n case 'below': {\n switch (this.model.vertical_align) {\n case 'top':\n sy = panel._top.value + vmargin;\n break;\n case 'middle':\n sy = panel._vcenter.value;\n break;\n case 'bottom':\n sy = panel._bottom.value - vmargin;\n break;\n default:\n throw new Error('unreachable code');\n }\n switch (this.model.align) {\n case 'left':\n sx = panel._left.value + hmargin;\n break;\n case 'center':\n sx = panel._hcenter.value;\n break;\n case 'right':\n sx = panel._right.value - hmargin;\n break;\n default:\n throw new Error('unreachable code');\n }\n break;\n }\n case 'left': {\n switch (this.model.vertical_align) {\n case 'top':\n sx = panel._left.value - vmargin;\n break;\n case 'middle':\n sx = panel._hcenter.value;\n break;\n case 'bottom':\n sx = panel._right.value + vmargin;\n break;\n default:\n throw new Error('unreachable code');\n }\n switch (this.model.align) {\n case 'left':\n sy = panel._bottom.value - hmargin;\n break;\n case 'center':\n sy = panel._vcenter.value;\n break;\n case 'right':\n sy = panel._top.value + hmargin;\n break;\n default:\n throw new Error('unreachable code');\n }\n break;\n }\n case 'right': {\n switch (this.model.vertical_align) {\n case 'top':\n sx = panel._right.value - vmargin;\n break;\n case 'middle':\n sx = panel._hcenter.value;\n break;\n case 'bottom':\n sx = panel._left.value + vmargin;\n break;\n default:\n throw new Error('unreachable code');\n }\n switch (this.model.align) {\n case 'left':\n sy = panel._top.value + hmargin;\n break;\n case 'center':\n sy = panel._vcenter.value;\n break;\n case 'right':\n sy = panel._bottom.value - hmargin;\n break;\n default:\n throw new Error('unreachable code');\n }\n break;\n }\n default:\n throw new Error('unreachable code');\n }\n return [\n sx,\n sy\n ];\n };\n TitleView.prototype.render = function () {\n if (!this.model.visible) {\n if (this.model.render_mode == 'css')\n dom_1.hide(this.el);\n return;\n }\n var text = this.model.text;\n if (text == null || text.length == 0)\n return;\n this.model.text_baseline = this.model.vertical_align;\n this.model.text_align = this.model.align;\n var _a = this._get_location(), sx = _a[0], sy = _a[1];\n var angle = this.model.panel.get_label_angle_heuristic('parallel');\n var draw = this.model.render_mode == 'canvas' ? this._canvas_text.bind(this) : this._css_text.bind(this);\n draw(this.plot_view.canvas_view.ctx, text, sx, sy, angle);\n };\n TitleView.prototype._get_size = function () {\n var text = this.model.text;\n if (text == null || text.length == 0)\n return 0;\n else {\n var ctx = this.plot_view.canvas_view.ctx;\n this.visuals.text.set_value(ctx);\n return ctx.measureText(text).ascent + 10;\n }\n };\n return TitleView;\n }(text_annotation_1.TextAnnotationView);\n exports.TitleView = TitleView;\n var Title = function (_super) {\n tslib_1.__extends(Title, _super);\n function Title(attrs) {\n return _super.call(this, attrs) || this;\n }\n Title.initClass = function () {\n this.prototype.type = 'Title';\n this.prototype.default_view = TitleView;\n this.mixins([\n 'line:border_',\n 'fill:background_'\n ]);\n this.define({\n text: [p.String],\n text_font: [\n p.Font,\n 'helvetica'\n ],\n text_font_size: [\n p.FontSizeSpec,\n '10pt'\n ],\n text_font_style: [\n p.FontStyle,\n 'bold'\n ],\n text_color: [\n p.ColorSpec,\n '#444444'\n ],\n text_alpha: [\n p.NumberSpec,\n 1\n ],\n vertical_align: [\n p.VerticalAlign,\n 'bottom'\n ],\n align: [\n p.TextAlign,\n 'left'\n ],\n offset: [\n p.Number,\n 0\n ]\n });\n this.override({\n background_fill_color: null,\n border_line_color: null\n });\n this.internal({\n text_align: [\n p.TextAlign,\n 'left'\n ],\n text_baseline: [\n p.TextBaseline,\n 'bottom'\n ]\n });\n };\n return Title;\n }(text_annotation_1.TextAnnotation);\n exports.Title = Title;\n Title.initClass(); \n}","/*models/annotations/toolbar_panel*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var annotation_1 = require(54 /* ./annotation */);\n var build_views_1 = require(4 /* core/build_views */);\n var dom_1 = require(5 /* core/dom */);\n var p = require(15 /* core/properties */);\n var ToolbarPanelView = function (_super) {\n tslib_1.__extends(ToolbarPanelView, _super);\n function ToolbarPanelView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n ToolbarPanelView.prototype.initialize = function (options) {\n _super.prototype.initialize.call(this, options);\n this.plot_view.canvas_events.appendChild(this.el);\n this._toolbar_views = {};\n build_views_1.build_views(this._toolbar_views, [this.model.toolbar], { parent: this });\n };\n ToolbarPanelView.prototype.remove = function () {\n build_views_1.remove_views(this._toolbar_views);\n _super.prototype.remove.call(this);\n };\n ToolbarPanelView.prototype.render = function () {\n _super.prototype.render.call(this);\n if (!this.model.visible) {\n dom_1.hide(this.el);\n return;\n }\n var panel = this.model.panel;\n this.el.style.position = 'absolute';\n this.el.style.left = panel._left.value + 'px';\n this.el.style.top = panel._top.value + 'px';\n this.el.style.width = panel._width.value + 'px';\n this.el.style.height = panel._height.value + 'px';\n this.el.style.overflow = 'hidden';\n var toolbar = this._toolbar_views[this.model.toolbar.id];\n toolbar.render();\n dom_1.empty(this.el);\n this.el.appendChild(toolbar.el);\n dom_1.show(this.el);\n };\n ToolbarPanelView.prototype._get_size = function () {\n return 30;\n };\n return ToolbarPanelView;\n }(annotation_1.AnnotationView);\n exports.ToolbarPanelView = ToolbarPanelView;\n var ToolbarPanel = function (_super) {\n tslib_1.__extends(ToolbarPanel, _super);\n function ToolbarPanel(attrs) {\n return _super.call(this, attrs) || this;\n }\n ToolbarPanel.initClass = function () {\n this.prototype.type = 'ToolbarPanel';\n this.prototype.default_view = ToolbarPanelView;\n this.define({ toolbar: [p.Instance] });\n };\n return ToolbarPanel;\n }(annotation_1.Annotation);\n exports.ToolbarPanel = ToolbarPanel;\n ToolbarPanel.initClass(); \n}","/*models/annotations/tooltip*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var annotation_1 = require(54 /* ./annotation */);\n var dom_1 = require(5 /* core/dom */);\n var p = require(15 /* core/properties */);\n function compute_side(attachment, sx, sy, hcenter, vcenter) {\n var side;\n switch (attachment) {\n case 'horizontal':\n side = sx < hcenter ? 'right' : 'left';\n break;\n case 'vertical':\n side = sy < vcenter ? 'below' : 'above';\n break;\n default:\n side = attachment;\n }\n return side;\n }\n exports.compute_side = compute_side;\n var TooltipView = function (_super) {\n tslib_1.__extends(TooltipView, _super);\n function TooltipView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n TooltipView.prototype.initialize = function (options) {\n _super.prototype.initialize.call(this, options);\n // TODO (bev) really probably need multiple divs\n this.plot_view.canvas_overlays.appendChild(this.el);\n dom_1.hide(this.el);\n };\n TooltipView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.model.properties.data.change, function () {\n return _this._draw_tips();\n });\n };\n TooltipView.prototype.css_classes = function () {\n return _super.prototype.css_classes.call(this).concat('bk-tooltip');\n };\n TooltipView.prototype.render = function () {\n if (!this.model.visible)\n return;\n this._draw_tips();\n };\n TooltipView.prototype._draw_tips = function () {\n var data = this.model.data;\n dom_1.empty(this.el);\n dom_1.hide(this.el);\n if (this.model.custom)\n this.el.classList.add('bk-tooltip-custom');\n else\n this.el.classList.remove('bk-tooltip-custom');\n if (data.length == 0)\n return;\n var frame = this.plot_view.frame;\n for (var _i = 0, data_1 = data; _i < data_1.length; _i++) {\n var _a = data_1[_i], sx_1 = _a[0], sy_1 = _a[1], content = _a[2];\n if (this.model.inner_only && !frame.bbox.contains(sx_1, sy_1))\n continue;\n var tip = dom_1.div({}, content);\n this.el.appendChild(tip);\n }\n var _b = data[data.length - 1], sx = _b[0], sy = _b[1];\n // XXX: this previously depended on {sx, sy} leaking from the for-loop\n var side = compute_side(this.model.attachment, sx, sy, frame._hcenter.value, frame._vcenter.value);\n this.el.classList.remove('bk-right');\n this.el.classList.remove('bk-left');\n this.el.classList.remove('bk-above');\n this.el.classList.remove('bk-below');\n var arrow_size = 10;\n // XXX: keep in sync with less\n dom_1.show(this.el);\n // XXX: {offset,client}Width() gives 0 when display=\"none\"\n // slightly confusing: side \"left\" (for example) is relative to point that\n // is being annotated but CS class \"bk-left\" is relative to the tooltip itself\n var left, top;\n switch (side) {\n case 'right':\n this.el.classList.add('bk-left');\n left = sx + (this.el.offsetWidth - this.el.clientWidth) + arrow_size;\n top = sy - this.el.offsetHeight / 2;\n break;\n case 'left':\n this.el.classList.add('bk-right');\n left = sx - this.el.offsetWidth - arrow_size;\n top = sy - this.el.offsetHeight / 2;\n break;\n case 'below':\n this.el.classList.add('bk-above');\n top = sy + (this.el.offsetHeight - this.el.clientHeight) + arrow_size;\n left = Math.round(sx - this.el.offsetWidth / 2);\n break;\n case 'above':\n this.el.classList.add('bk-below');\n top = sy - this.el.offsetHeight - arrow_size;\n left = Math.round(sx - this.el.offsetWidth / 2);\n break;\n default:\n throw new Error('unreachable code');\n }\n if (this.model.show_arrow)\n this.el.classList.add('bk-tooltip-arrow');\n // TODO (bev) this is not currently bulletproof. If there are\n // two hits, not colocated and one is off the screen, that can\n // be problematic\n if (this.el.childNodes.length > 0) {\n this.el.style.top = top + 'px';\n this.el.style.left = left + 'px';\n } else\n dom_1.hide(this.el);\n };\n return TooltipView;\n }(annotation_1.AnnotationView);\n exports.TooltipView = TooltipView;\n var Tooltip = function (_super) {\n tslib_1.__extends(Tooltip, _super);\n function Tooltip(attrs) {\n return _super.call(this, attrs) || this;\n }\n Tooltip.initClass = function () {\n this.prototype.type = 'Tooltip';\n this.prototype.default_view = TooltipView;\n this.define({\n attachment: [\n p.String,\n 'horizontal'\n ],\n inner_only: [\n p.Bool,\n true\n ],\n show_arrow: [\n p.Bool,\n true\n ]\n });\n this.override({ level: 'overlay' });\n this.internal({\n data: [\n p.Any,\n []\n ],\n custom: [p.Any]\n });\n };\n Tooltip.prototype.clear = function () {\n this.data = [];\n };\n Tooltip.prototype.add = function (sx, sy, content) {\n this.data = this.data.concat([[\n sx,\n sy,\n content\n ]]);\n };\n return Tooltip;\n }(annotation_1.Annotation);\n exports.Tooltip = Tooltip;\n Tooltip.initClass(); \n}","/*models/annotations/whisker*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var annotation_1 = require(54 /* ./annotation */);\n var column_data_source_1 = require(184 /* ../sources/column_data_source */);\n var arrow_head_1 = require(56 /* ./arrow_head */);\n var p = require(15 /* core/properties */);\n var WhiskerView = function (_super) {\n tslib_1.__extends(WhiskerView, _super);\n function WhiskerView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n WhiskerView.prototype.initialize = function (options) {\n _super.prototype.initialize.call(this, options);\n this.set_data(this.model.source);\n };\n WhiskerView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.model.source.streaming, function () {\n return _this.set_data(_this.model.source);\n });\n this.connect(this.model.source.patching, function () {\n return _this.set_data(_this.model.source);\n });\n this.connect(this.model.source.change, function () {\n return _this.set_data(_this.model.source);\n });\n };\n WhiskerView.prototype.set_data = function (source) {\n _super.prototype.set_data.call(this, source);\n this.visuals.warm_cache(source);\n this.plot_view.request_render();\n };\n WhiskerView.prototype._map_data = function () {\n var frame = this.plot_model.frame;\n var dim = this.model.dimension;\n var xscale = frame.xscales[this.model.x_range_name];\n var yscale = frame.yscales[this.model.y_range_name];\n var limit_scale = dim == 'height' ? yscale : xscale;\n var base_scale = dim == 'height' ? xscale : yscale;\n var limit_view = dim == 'height' ? frame.yview : frame.xview;\n var base_view = dim == 'height' ? frame.xview : frame.yview;\n var _lower_sx;\n if (this.model.lower.units == 'data')\n _lower_sx = limit_scale.v_compute(this._lower);\n else\n _lower_sx = limit_view.v_compute(this._lower);\n var _upper_sx;\n if (this.model.upper.units == 'data')\n _upper_sx = limit_scale.v_compute(this._upper);\n else\n _upper_sx = limit_view.v_compute(this._upper);\n var _base_sx;\n if (this.model.base.units == 'data')\n _base_sx = base_scale.v_compute(this._base);\n else\n _base_sx = base_view.v_compute(this._base);\n var _a = dim == 'height' ? [\n 1,\n 0\n ] : [\n 0,\n 1\n ], i = _a[0], j = _a[1];\n var _lower = [\n _lower_sx,\n _base_sx\n ];\n var _upper = [\n _upper_sx,\n _base_sx\n ];\n this._lower_sx = _lower[i];\n this._lower_sy = _lower[j];\n this._upper_sx = _upper[i];\n this._upper_sy = _upper[j];\n };\n WhiskerView.prototype.render = function () {\n if (!this.model.visible)\n return;\n this._map_data();\n var ctx = this.plot_view.canvas_view.ctx;\n if (this.visuals.line.doit) {\n for (var i = 0, end = this._lower_sx.length; i < end; i++) {\n this.visuals.line.set_vectorize(ctx, i);\n ctx.beginPath();\n ctx.moveTo(this._lower_sx[i], this._lower_sy[i]);\n ctx.lineTo(this._upper_sx[i], this._upper_sy[i]);\n ctx.stroke();\n }\n }\n var angle = this.model.dimension == 'height' ? 0 : Math.PI / 2;\n if (this.model.lower_head != null) {\n for (var i = 0, end = this._lower_sx.length; i < end; i++) {\n ctx.save();\n ctx.translate(this._lower_sx[i], this._lower_sy[i]);\n ctx.rotate(angle + Math.PI);\n this.model.lower_head.render(ctx, i);\n ctx.restore();\n }\n }\n if (this.model.upper_head != null) {\n for (var i = 0, end = this._upper_sx.length; i < end; i++) {\n ctx.save();\n ctx.translate(this._upper_sx[i], this._upper_sy[i]);\n ctx.rotate(angle);\n this.model.upper_head.render(ctx, i);\n ctx.restore();\n }\n }\n };\n return WhiskerView;\n }(annotation_1.AnnotationView);\n exports.WhiskerView = WhiskerView;\n var Whisker = function (_super) {\n tslib_1.__extends(Whisker, _super);\n function Whisker(attrs) {\n return _super.call(this, attrs) || this;\n }\n Whisker.initClass = function () {\n this.prototype.type = 'Whisker';\n this.prototype.default_view = WhiskerView;\n this.mixins(['line']);\n this.define({\n lower: [p.DistanceSpec],\n lower_head: [\n p.Instance,\n function () {\n return new arrow_head_1.TeeHead({\n level: 'underlay',\n size: 10\n });\n }\n ],\n upper: [p.DistanceSpec],\n upper_head: [\n p.Instance,\n function () {\n return new arrow_head_1.TeeHead({\n level: 'underlay',\n size: 10\n });\n }\n ],\n base: [p.DistanceSpec],\n dimension: [\n p.Dimension,\n 'height'\n ],\n source: [\n p.Instance,\n function () {\n return new column_data_source_1.ColumnDataSource();\n }\n ],\n x_range_name: [\n p.String,\n 'default'\n ],\n y_range_name: [\n p.String,\n 'default'\n ]\n });\n this.override({ level: 'underlay' });\n };\n return Whisker;\n }(annotation_1.Annotation);\n exports.Whisker = Whisker;\n Whisker.initClass(); \n}","/*models/axes/axis*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var guide_renderer_1 = require(171 /* ../renderers/guide_renderer */);\n var p = require(15 /* core/properties */);\n var side_panel_1 = require(12 /* core/layout/side_panel */);\n var array_1 = require(21 /* core/util/array */);\n var types_1 = require(44 /* core/util/types */);\n var factor_range_1 = require(165 /* models/ranges/factor_range */);\n var abs = Math.abs, min = Math.min, max = Math.max;\n var AxisView = function (_super) {\n tslib_1.__extends(AxisView, _super);\n function AxisView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n AxisView.prototype.render = function () {\n if (!this.model.visible)\n return;\n var extents = {\n tick: this._tick_extent(),\n tick_label: this._tick_label_extents(),\n axis_label: this._axis_label_extent()\n };\n var tick_coords = this.model.tick_coords;\n var ctx = this.plot_view.canvas_view.ctx;\n ctx.save();\n this._draw_rule(ctx, extents);\n this._draw_major_ticks(ctx, extents, tick_coords);\n this._draw_minor_ticks(ctx, extents, tick_coords);\n this._draw_major_labels(ctx, extents, tick_coords);\n this._draw_axis_label(ctx, extents, tick_coords);\n if (this._render != null)\n this._render(ctx, extents, tick_coords);\n ctx.restore();\n };\n AxisView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.model.change, function () {\n return _this.plot_view.request_render();\n });\n };\n AxisView.prototype.get_size = function () {\n return this.model.visible ? Math.round(this._get_size()) : 0;\n };\n AxisView.prototype._get_size = function () {\n if (this.model.fixed_location != null) {\n return 0;\n }\n return this._tick_extent() + this._tick_label_extent() + this._axis_label_extent();\n };\n Object.defineProperty(AxisView.prototype, 'needs_clip', {\n get: function () {\n return this.model.fixed_location != null;\n },\n enumerable: true,\n configurable: true\n });\n // drawing sub functions -----------------------------------------------------\n AxisView.prototype._draw_rule = function (ctx, _extents) {\n if (!this.visuals.axis_line.doit)\n return;\n var _a = this.model.rule_coords, xs = _a[0], ys = _a[1];\n var _b = this.plot_view.map_to_screen(xs, ys, this.model.x_range_name, this.model.y_range_name), sxs = _b[0], sys = _b[1];\n var _c = this.model.normals, nx = _c[0], ny = _c[1];\n var _d = this.model.offsets, xoff = _d[0], yoff = _d[1];\n this.visuals.axis_line.set_value(ctx);\n ctx.beginPath();\n ctx.moveTo(Math.round(sxs[0] + nx * xoff), Math.round(sys[0] + ny * yoff));\n for (var i = 1; i < sxs.length; i++) {\n var sx = Math.round(sxs[i] + nx * xoff);\n var sy = Math.round(sys[i] + ny * yoff);\n ctx.lineTo(sx, sy);\n }\n ctx.stroke();\n };\n AxisView.prototype._draw_major_ticks = function (ctx, _extents, tick_coords) {\n var tin = this.model.major_tick_in;\n var tout = this.model.major_tick_out;\n var visuals = this.visuals.major_tick_line;\n this._draw_ticks(ctx, tick_coords.major, tin, tout, visuals);\n };\n AxisView.prototype._draw_minor_ticks = function (ctx, _extents, tick_coords) {\n var tin = this.model.minor_tick_in;\n var tout = this.model.minor_tick_out;\n var visuals = this.visuals.minor_tick_line;\n this._draw_ticks(ctx, tick_coords.minor, tin, tout, visuals);\n };\n AxisView.prototype._draw_major_labels = function (ctx, extents, tick_coords) {\n var coords = tick_coords.major;\n var labels = this.model.compute_labels(coords[this.model.dimension]);\n var orient = this.model.major_label_orientation;\n var standoff = extents.tick + this.model.major_label_standoff;\n var visuals = this.visuals.major_label_text;\n this._draw_oriented_labels(ctx, labels, coords, orient, this.model.panel.side, standoff, visuals);\n };\n AxisView.prototype._draw_axis_label = function (ctx, extents, _tick_coords) {\n if (this.model.axis_label == null || this.model.axis_label.length == 0 || this.model.fixed_location != null)\n return;\n var sx;\n var sy;\n switch (this.model.panel.side) {\n case 'above':\n sx = this.model.panel._hcenter.value;\n sy = this.model.panel._bottom.value;\n break;\n case 'below':\n sx = this.model.panel._hcenter.value;\n sy = this.model.panel._top.value;\n break;\n case 'left':\n sx = this.model.panel._right.value;\n sy = this.model.panel._vcenter.value;\n break;\n case 'right':\n sx = this.model.panel._left.value;\n sy = this.model.panel._vcenter.value;\n break;\n default:\n throw new Error('unknown side: ' + this.model.panel.side);\n }\n var coords = [\n [sx],\n [sy]\n ];\n var standoff = extents.tick + array_1.sum(extents.tick_label) + this.model.axis_label_standoff;\n var visuals = this.visuals.axis_label_text;\n this._draw_oriented_labels(ctx, [this.model.axis_label], coords, 'parallel', this.model.panel.side, standoff, visuals, 'screen');\n };\n AxisView.prototype._draw_ticks = function (ctx, coords, tin, tout, visuals) {\n if (!visuals.doit)\n return;\n var x = coords[0], y = coords[1];\n var _a = this.plot_view.map_to_screen(x, y, this.model.x_range_name, this.model.y_range_name), sxs = _a[0], sys = _a[1];\n var _b = this.model.normals, nx = _b[0], ny = _b[1];\n var _c = this.model.offsets, xoff = _c[0], yoff = _c[1];\n var _d = [\n nx * (xoff - tin),\n ny * (yoff - tin)\n ], nxin = _d[0], nyin = _d[1];\n var _e = [\n nx * (xoff + tout),\n ny * (yoff + tout)\n ], nxout = _e[0], nyout = _e[1];\n visuals.set_value(ctx);\n for (var i = 0; i < sxs.length; i++) {\n var sx0 = Math.round(sxs[i] + nxout);\n var sy0 = Math.round(sys[i] + nyout);\n var sx1 = Math.round(sxs[i] + nxin);\n var sy1 = Math.round(sys[i] + nyin);\n ctx.beginPath();\n ctx.moveTo(sx0, sy0);\n ctx.lineTo(sx1, sy1);\n ctx.stroke();\n }\n };\n AxisView.prototype._draw_oriented_labels = function (ctx, labels, coords, orient, _side, standoff, visuals, units) {\n if (units === void 0) {\n units = 'data';\n }\n if (!visuals.doit || labels.length == 0)\n return;\n var sxs, sys;\n var xoff, yoff;\n if (units == 'screen') {\n sxs = coords[0], sys = coords[1];\n _a = [\n 0,\n 0\n ], xoff = _a[0], yoff = _a[1];\n } else {\n var dxs = coords[0], dys = coords[1];\n _b = this.plot_view.map_to_screen(dxs, dys, this.model.x_range_name, this.model.y_range_name), sxs = _b[0], sys = _b[1];\n _c = this.model.offsets, xoff = _c[0], yoff = _c[1];\n }\n var _d = this.model.normals, nx = _d[0], ny = _d[1];\n var nxd = nx * (xoff + standoff);\n var nyd = ny * (yoff + standoff);\n visuals.set_value(ctx);\n this.model.panel.apply_label_text_heuristics(ctx, orient);\n var angle;\n if (types_1.isString(orient))\n angle = this.model.panel.get_label_angle_heuristic(orient);\n else\n angle = -orient;\n for (var i = 0; i < sxs.length; i++) {\n var sx = Math.round(sxs[i] + nxd);\n var sy = Math.round(sys[i] + nyd);\n ctx.translate(sx, sy);\n ctx.rotate(angle);\n ctx.fillText(labels[i], 0, 0);\n ctx.rotate(-angle);\n ctx.translate(-sx, -sy);\n }\n var _a, _b, _c;\n };\n // extents sub functions -----------------------------------------------------\n AxisView.prototype._axis_label_extent = function () {\n if (this.model.axis_label == null || this.model.axis_label == '')\n return 0;\n var standoff = this.model.axis_label_standoff;\n var visuals = this.visuals.axis_label_text;\n return this._oriented_labels_extent([this.model.axis_label], 'parallel', this.model.panel.side, standoff, visuals);\n };\n AxisView.prototype._tick_extent = function () {\n return this.model.major_tick_out;\n };\n AxisView.prototype._tick_label_extent = function () {\n return array_1.sum(this._tick_label_extents());\n };\n AxisView.prototype._tick_label_extents = function () {\n var coords = this.model.tick_coords.major;\n var labels = this.model.compute_labels(coords[this.model.dimension]);\n var orient = this.model.major_label_orientation;\n var standoff = this.model.major_label_standoff;\n var visuals = this.visuals.major_label_text;\n return [this._oriented_labels_extent(labels, orient, this.model.panel.side, standoff, visuals)];\n };\n AxisView.prototype._oriented_labels_extent = function (labels, orient, side, standoff, visuals) {\n if (labels.length == 0)\n return 0;\n var ctx = this.plot_view.canvas_view.ctx;\n visuals.set_value(ctx);\n var hscale;\n var angle;\n if (types_1.isString(orient)) {\n hscale = 1;\n angle = this.model.panel.get_label_angle_heuristic(orient);\n } else {\n hscale = 2;\n angle = -orient;\n }\n angle = Math.abs(angle);\n var c = Math.cos(angle);\n var s = Math.sin(angle);\n var extent = 0;\n for (var i = 0; i < labels.length; i++) {\n var w = ctx.measureText(labels[i]).width * 1.1;\n var h = ctx.measureText(labels[i]).ascent * 0.9;\n var val = void 0;\n if (side == 'above' || side == 'below')\n val = w * s + h / hscale * c;\n else\n val = w * c + h / hscale * s;\n // update extent if current value is larger\n if (val > extent)\n extent = val;\n }\n // only apply the standoff if we already have non-zero extent\n if (extent > 0)\n extent += standoff;\n return extent;\n };\n return AxisView;\n }(guide_renderer_1.GuideRendererView);\n exports.AxisView = AxisView;\n var Axis = function (_super) {\n tslib_1.__extends(Axis, _super);\n function Axis(attrs) {\n return _super.call(this, attrs) || this;\n }\n Axis.initClass = function () {\n this.prototype.type = 'Axis';\n this.prototype.default_view = AxisView;\n this.mixins([\n 'line:axis_',\n 'line:major_tick_',\n 'line:minor_tick_',\n 'text:major_label_',\n 'text:axis_label_'\n ]);\n this.define({\n bounds: [\n p.Any,\n 'auto'\n ],\n ticker: [\n p.Instance,\n null\n ],\n formatter: [\n p.Instance,\n null\n ],\n x_range_name: [\n p.String,\n 'default'\n ],\n y_range_name: [\n p.String,\n 'default'\n ],\n axis_label: [\n p.String,\n ''\n ],\n axis_label_standoff: [\n p.Int,\n 5\n ],\n major_label_standoff: [\n p.Int,\n 5\n ],\n major_label_orientation: [\n p.Any,\n 'horizontal'\n ],\n major_label_overrides: [\n p.Any,\n {}\n ],\n major_tick_in: [\n p.Number,\n 2\n ],\n major_tick_out: [\n p.Number,\n 6\n ],\n minor_tick_in: [\n p.Number,\n 0\n ],\n minor_tick_out: [\n p.Number,\n 4\n ],\n fixed_location: [\n p.Any,\n null\n ]\n });\n this.override({\n axis_line_color: 'black',\n major_tick_line_color: 'black',\n minor_tick_line_color: 'black',\n major_label_text_font_size: '8pt',\n major_label_text_align: 'center',\n major_label_text_baseline: 'alphabetic',\n axis_label_text_font_size: '10pt',\n axis_label_text_font_style: 'italic'\n });\n };\n Axis.prototype.add_panel = function (side) {\n this.panel = new side_panel_1.SidePanel({ side: side });\n this.panel.attach_document(this.document); // XXX!\n };\n Object.defineProperty(Axis.prototype, 'normals', {\n get: function () {\n return this.panel.normals;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Axis.prototype, 'dimension', {\n get: function () {\n return this.panel.dimension;\n },\n enumerable: true,\n configurable: true\n });\n Axis.prototype.compute_labels = function (ticks) {\n var labels = this.formatter.doFormat(ticks, this);\n for (var i = 0; i < ticks.length; i++) {\n if (ticks[i] in this.major_label_overrides)\n labels[i] = this.major_label_overrides[ticks[i]];\n }\n return labels;\n };\n Object.defineProperty(Axis.prototype, 'offsets', {\n get: function () {\n var frame = this.plot.plot_canvas.frame;\n var _a = [\n 0,\n 0\n ], xoff = _a[0], yoff = _a[1];\n switch (this.panel.side) {\n case 'below':\n yoff = abs(this.panel._top.value - frame._bottom.value);\n break;\n case 'above':\n yoff = abs(this.panel._bottom.value - frame._top.value);\n break;\n case 'right':\n xoff = abs(this.panel._left.value - frame._right.value);\n break;\n case 'left':\n xoff = abs(this.panel._right.value - frame._left.value);\n break;\n }\n return [\n xoff,\n yoff\n ];\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Axis.prototype, 'ranges', {\n get: function () {\n var i = this.dimension;\n var j = (i + 1) % 2;\n var frame = this.plot.plot_canvas.frame;\n var ranges = [\n frame.x_ranges[this.x_range_name],\n frame.y_ranges[this.y_range_name]\n ];\n return [\n ranges[i],\n ranges[j]\n ];\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Axis.prototype, 'computed_bounds', {\n get: function () {\n var range = this.ranges[0];\n var user_bounds = this.bounds;\n // XXX: ? 'auto'\n var range_bounds = [\n range.min,\n range.max\n ];\n if (user_bounds == 'auto')\n return [\n range.min,\n range.max\n ];\n else if (types_1.isArray(user_bounds)) {\n var start = void 0;\n var end = void 0;\n var user_start = user_bounds[0], user_end = user_bounds[1];\n var range_start = range_bounds[0], range_end = range_bounds[1];\n if (abs(user_start - user_end) > abs(range_start - range_end)) {\n start = max(min(user_start, user_end), range_start);\n end = min(max(user_start, user_end), range_end);\n } else {\n start = min(user_start, user_end);\n end = max(user_start, user_end);\n }\n return [\n start,\n end\n ];\n } else\n throw new Error('user bounds \\'' + user_bounds + '\\' not understood');\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Axis.prototype, 'rule_coords', {\n get: function () {\n var i = this.dimension;\n var j = (i + 1) % 2;\n var range = this.ranges[0];\n var _a = this.computed_bounds, start = _a[0], end = _a[1];\n var xs = new Array(2);\n var ys = new Array(2);\n var coords = [\n xs,\n ys\n ];\n coords[i][0] = Math.max(start, range.min);\n coords[i][1] = Math.min(end, range.max);\n if (coords[i][0] > coords[i][1])\n coords[i][0] = coords[i][1] = NaN;\n coords[j][0] = this.loc;\n coords[j][1] = this.loc;\n return coords;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Axis.prototype, 'tick_coords', {\n get: function () {\n var i = this.dimension;\n var j = (i + 1) % 2;\n var range = this.ranges[0];\n var _a = this.computed_bounds, start = _a[0], end = _a[1];\n var ticks = this.ticker.get_ticks(start, end, range, this.loc, {});\n var majors = ticks.major;\n var minors = ticks.minor;\n var xs = [];\n var ys = [];\n var coords = [\n xs,\n ys\n ];\n var minor_xs = [];\n var minor_ys = [];\n var minor_coords = [\n minor_xs,\n minor_ys\n ];\n var _b = [\n range.min,\n range.max\n ], range_min = _b[0], range_max = _b[1];\n for (var ii = 0; ii < majors.length; ii++) {\n if (majors[ii] < range_min || majors[ii] > range_max)\n continue;\n coords[i].push(majors[ii]);\n coords[j].push(this.loc);\n }\n for (var ii = 0; ii < minors.length; ii++) {\n if (minors[ii] < range_min || minors[ii] > range_max)\n continue;\n minor_coords[i].push(minors[ii]);\n minor_coords[j].push(this.loc);\n }\n return {\n major: coords,\n minor: minor_coords\n };\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Axis.prototype, 'loc', {\n get: function () {\n if (this.fixed_location != null) {\n if (types_1.isNumber(this.fixed_location)) {\n return this.fixed_location;\n }\n var _a = this.ranges, cross_range_1 = _a[1];\n if (cross_range_1 instanceof factor_range_1.FactorRange) {\n return cross_range_1.synthetic(this.fixed_location);\n }\n throw new Error('unexpected');\n }\n var _b = this.ranges, cross_range = _b[1];\n switch (this.panel.side) {\n case 'left':\n case 'below':\n return cross_range.start;\n case 'right':\n case 'above':\n return cross_range.end;\n }\n },\n enumerable: true,\n configurable: true\n });\n return Axis;\n }(guide_renderer_1.GuideRenderer);\n exports.Axis = Axis;\n Axis.initClass(); \n}","/*models/axes/categorical_axis*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var axis_1 = require(72 /* ./axis */);\n var categorical_ticker_1 = require(192 /* ../tickers/categorical_ticker */);\n var categorical_tick_formatter_1 = require(97 /* ../formatters/categorical_tick_formatter */);\n var p = require(15 /* core/properties */);\n var CategoricalAxisView = function (_super) {\n tslib_1.__extends(CategoricalAxisView, _super);\n function CategoricalAxisView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n CategoricalAxisView.prototype._render = function (ctx, extents, tick_coords) {\n this._draw_group_separators(ctx, extents, tick_coords);\n };\n CategoricalAxisView.prototype._draw_group_separators = function (ctx, _extents, _tick_coords) {\n var range = this.model.ranges[0];\n var _a = this.model.computed_bounds, start = _a[0], end = _a[1];\n if (!range.tops || range.tops.length < 2 || !this.visuals.separator_line.doit)\n return;\n var dim = this.model.dimension;\n var alt = (dim + 1) % 2;\n var coords = [\n [],\n []\n ];\n var ind = 0;\n for (var i = 0; i < range.tops.length - 1; i++) {\n var first = void 0, last = void 0;\n for (var j = ind; j < range.factors.length; j++) {\n if (range.factors[j][0] == range.tops[i + 1]) {\n _b = [\n range.factors[j - 1],\n range.factors[j]\n ], first = _b[0], last = _b[1];\n ind = j;\n break;\n }\n }\n var pt = (range.synthetic(first) + range.synthetic(last)) / 2;\n if (pt > start && pt < end) {\n coords[dim].push(pt);\n coords[alt].push(this.model.loc);\n }\n }\n var tex = this._tick_label_extent();\n this._draw_ticks(ctx, coords, -3, tex - 6, this.visuals.separator_line);\n var _b;\n };\n CategoricalAxisView.prototype._draw_major_labels = function (ctx, extents, _tick_coords) {\n var info = this._get_factor_info();\n var standoff = extents.tick + this.model.major_label_standoff;\n for (var i = 0; i < info.length; i++) {\n var _a = info[i], labels = _a[0], coords = _a[1], orient = _a[2], visuals = _a[3];\n this._draw_oriented_labels(ctx, labels, coords, orient, this.model.panel.side, standoff, visuals);\n standoff += extents.tick_label[i];\n }\n };\n CategoricalAxisView.prototype._tick_label_extents = function () {\n var info = this._get_factor_info();\n var extents = [];\n for (var _i = 0, info_1 = info; _i < info_1.length; _i++) {\n var _a = info_1[_i], labels = _a[0], orient = _a[2], visuals = _a[3];\n var extent = this._oriented_labels_extent(labels, orient, this.model.panel.side, this.model.major_label_standoff, visuals);\n extents.push(extent);\n }\n return extents;\n };\n CategoricalAxisView.prototype._get_factor_info = function () {\n var range = this.model.ranges[0];\n var _a = this.model.computed_bounds, start = _a[0], end = _a[1];\n var loc = this.model.loc;\n var ticks = this.model.ticker.get_ticks(start, end, range, loc, {});\n var coords = this.model.tick_coords;\n var info = [];\n if (range.levels == 1) {\n var labels = this.model.formatter.doFormat(ticks.major, this.model);\n info.push([\n labels,\n coords.major,\n this.model.major_label_orientation,\n this.visuals.major_label_text\n ]);\n } else if (range.levels == 2) {\n var labels = this.model.formatter.doFormat(ticks.major.map(function (x) {\n return x[1];\n }), this.model);\n info.push([\n labels,\n coords.major,\n this.model.major_label_orientation,\n this.visuals.major_label_text\n ]);\n info.push([\n ticks.tops,\n coords.tops,\n this.model.group_label_orientation,\n this.visuals.group_text\n ]);\n } else if (range.levels == 3) {\n var labels = this.model.formatter.doFormat(ticks.major.map(function (x) {\n return x[2];\n }), this.model);\n var mid_labels = ticks.mids.map(function (x) {\n return x[1];\n });\n info.push([\n labels,\n coords.major,\n this.model.major_label_orientation,\n this.visuals.major_label_text\n ]);\n info.push([\n mid_labels,\n coords.mids,\n this.model.subgroup_label_orientation,\n this.visuals.subgroup_text\n ]);\n info.push([\n ticks.tops,\n coords.tops,\n this.model.group_label_orientation,\n this.visuals.group_text\n ]);\n }\n return info;\n };\n return CategoricalAxisView;\n }(axis_1.AxisView);\n exports.CategoricalAxisView = CategoricalAxisView;\n var CategoricalAxis = function (_super) {\n tslib_1.__extends(CategoricalAxis, _super);\n function CategoricalAxis(attrs) {\n return _super.call(this, attrs) || this;\n }\n CategoricalAxis.initClass = function () {\n this.prototype.type = 'CategoricalAxis';\n this.prototype.default_view = CategoricalAxisView;\n this.mixins([\n 'line:separator_',\n 'text:group_',\n 'text:subgroup_'\n ]);\n this.define({\n group_label_orientation: [\n p.Any,\n 'parallel'\n ],\n subgroup_label_orientation: [\n p.Any,\n 'parallel'\n ]\n });\n this.override({\n ticker: function () {\n return new categorical_ticker_1.CategoricalTicker();\n },\n formatter: function () {\n return new categorical_tick_formatter_1.CategoricalTickFormatter();\n },\n separator_line_color: 'lightgrey',\n separator_line_width: 2,\n group_text_font_style: 'bold',\n group_text_font_size: '8pt',\n group_text_color: 'grey',\n subgroup_text_font_style: 'bold',\n subgroup_text_font_size: '8pt'\n });\n };\n Object.defineProperty(CategoricalAxis.prototype, 'tick_coords', {\n get: function () {\n var _this = this;\n var i = this.dimension;\n var j = (i + 1) % 2;\n var range = this.ranges[0];\n var _a = this.computed_bounds, start = _a[0], end = _a[1];\n var ticks = this.ticker.get_ticks(start, end, range, this.loc, {});\n var coords = {\n major: [\n [],\n []\n ],\n mids: [\n [],\n []\n ],\n tops: [\n [],\n []\n ],\n minor: [\n [],\n []\n ]\n };\n coords.major[i] = ticks.major;\n coords.major[j] = ticks.major.map(function (_x) {\n return _this.loc;\n });\n if (range.levels == 3)\n coords.mids[i] = ticks.mids;\n coords.mids[j] = ticks.mids.map(function (_x) {\n return _this.loc;\n });\n if (range.levels > 1)\n coords.tops[i] = ticks.tops;\n coords.tops[j] = ticks.tops.map(function (_x) {\n return _this.loc;\n });\n return coords;\n },\n enumerable: true,\n configurable: true\n });\n return CategoricalAxis;\n }(axis_1.Axis);\n exports.CategoricalAxis = CategoricalAxis;\n CategoricalAxis.initClass(); \n}","/*models/axes/continuous_axis*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var axis_1 = require(72 /* ./axis */);\n var ContinuousAxis = function (_super) {\n tslib_1.__extends(ContinuousAxis, _super);\n function ContinuousAxis(attrs) {\n return _super.call(this, attrs) || this;\n }\n ContinuousAxis.initClass = function () {\n this.prototype.type = 'ContinuousAxis';\n };\n return ContinuousAxis;\n }(axis_1.Axis);\n exports.ContinuousAxis = ContinuousAxis;\n ContinuousAxis.initClass(); \n}","/*models/axes/datetime_axis*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var linear_axis_1 = require(77 /* ./linear_axis */);\n var datetime_tick_formatter_1 = require(98 /* ../formatters/datetime_tick_formatter */);\n var datetime_ticker_1 = require(195 /* ../tickers/datetime_ticker */);\n var DatetimeAxisView = function (_super) {\n tslib_1.__extends(DatetimeAxisView, _super);\n function DatetimeAxisView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return DatetimeAxisView;\n }(linear_axis_1.LinearAxisView);\n exports.DatetimeAxisView = DatetimeAxisView;\n var DatetimeAxis = function (_super) {\n tslib_1.__extends(DatetimeAxis, _super);\n function DatetimeAxis(attrs) {\n return _super.call(this, attrs) || this;\n }\n DatetimeAxis.initClass = function () {\n this.prototype.type = 'DatetimeAxis';\n this.prototype.default_view = DatetimeAxisView;\n this.override({\n ticker: function () {\n return new datetime_ticker_1.DatetimeTicker();\n },\n formatter: function () {\n return new datetime_tick_formatter_1.DatetimeTickFormatter();\n }\n });\n };\n return DatetimeAxis;\n }(linear_axis_1.LinearAxis);\n exports.DatetimeAxis = DatetimeAxis;\n DatetimeAxis.initClass(); \n}","/*models/axes/index*/\nfunction _(require, module, exports) {\n var axis_1 = require(72 /* ./axis */);\n exports.Axis = axis_1.Axis;\n var categorical_axis_1 = require(73 /* ./categorical_axis */);\n exports.CategoricalAxis = categorical_axis_1.CategoricalAxis;\n var continuous_axis_1 = require(74 /* ./continuous_axis */);\n exports.ContinuousAxis = continuous_axis_1.ContinuousAxis;\n var datetime_axis_1 = require(75 /* ./datetime_axis */);\n exports.DatetimeAxis = datetime_axis_1.DatetimeAxis;\n var linear_axis_1 = require(77 /* ./linear_axis */);\n exports.LinearAxis = linear_axis_1.LinearAxis;\n var log_axis_1 = require(78 /* ./log_axis */);\n exports.LogAxis = log_axis_1.LogAxis;\n var mercator_axis_1 = require(79 /* ./mercator_axis */);\n exports.MercatorAxis = mercator_axis_1.MercatorAxis; \n}","/*models/axes/linear_axis*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var axis_1 = require(72 /* ./axis */);\n var continuous_axis_1 = require(74 /* ./continuous_axis */);\n var basic_tick_formatter_1 = require(96 /* ../formatters/basic_tick_formatter */);\n var basic_ticker_1 = require(191 /* ../tickers/basic_ticker */);\n var LinearAxisView = function (_super) {\n tslib_1.__extends(LinearAxisView, _super);\n function LinearAxisView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return LinearAxisView;\n }(axis_1.AxisView);\n exports.LinearAxisView = LinearAxisView;\n var LinearAxis = function (_super) {\n tslib_1.__extends(LinearAxis, _super);\n function LinearAxis(attrs) {\n return _super.call(this, attrs) || this;\n }\n LinearAxis.initClass = function () {\n this.prototype.type = 'LinearAxis';\n this.prototype.default_view = LinearAxisView;\n this.override({\n ticker: function () {\n return new basic_ticker_1.BasicTicker();\n },\n formatter: function () {\n return new basic_tick_formatter_1.BasicTickFormatter();\n }\n });\n };\n return LinearAxis;\n }(continuous_axis_1.ContinuousAxis);\n exports.LinearAxis = LinearAxis;\n LinearAxis.initClass(); \n}","/*models/axes/log_axis*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var axis_1 = require(72 /* ./axis */);\n var continuous_axis_1 = require(74 /* ./continuous_axis */);\n var log_tick_formatter_1 = require(101 /* ../formatters/log_tick_formatter */);\n var log_ticker_1 = require(199 /* ../tickers/log_ticker */);\n var LogAxisView = function (_super) {\n tslib_1.__extends(LogAxisView, _super);\n function LogAxisView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return LogAxisView;\n }(axis_1.AxisView);\n exports.LogAxisView = LogAxisView;\n var LogAxis = function (_super) {\n tslib_1.__extends(LogAxis, _super);\n function LogAxis(attrs) {\n return _super.call(this, attrs) || this;\n }\n LogAxis.initClass = function () {\n this.prototype.type = 'LogAxis';\n this.prototype.default_view = LogAxisView;\n this.override({\n ticker: function () {\n return new log_ticker_1.LogTicker();\n },\n formatter: function () {\n return new log_tick_formatter_1.LogTickFormatter();\n }\n });\n };\n return LogAxis;\n }(continuous_axis_1.ContinuousAxis);\n exports.LogAxis = LogAxis;\n LogAxis.initClass(); \n}","/*models/axes/mercator_axis*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var axis_1 = require(72 /* ./axis */);\n var linear_axis_1 = require(77 /* ./linear_axis */);\n var mercator_tick_formatter_1 = require(102 /* ../formatters/mercator_tick_formatter */);\n var mercator_ticker_1 = require(200 /* ../tickers/mercator_ticker */);\n var MercatorAxisView = function (_super) {\n tslib_1.__extends(MercatorAxisView, _super);\n function MercatorAxisView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return MercatorAxisView;\n }(axis_1.AxisView);\n exports.MercatorAxisView = MercatorAxisView;\n var MercatorAxis = function (_super) {\n tslib_1.__extends(MercatorAxis, _super);\n function MercatorAxis(attrs) {\n return _super.call(this, attrs) || this;\n }\n MercatorAxis.initClass = function () {\n this.prototype.type = 'MercatorAxis';\n this.prototype.default_view = MercatorAxisView;\n this.override({\n ticker: function () {\n return new mercator_ticker_1.MercatorTicker({ dimension: 'lat' });\n },\n formatter: function () {\n return new mercator_tick_formatter_1.MercatorTickFormatter({ dimension: 'lat' });\n }\n });\n };\n return MercatorAxis;\n }(linear_axis_1.LinearAxis);\n exports.MercatorAxis = MercatorAxis;\n MercatorAxis.initClass(); \n}","/*models/callbacks/callback*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var model_1 = require(53 /* ../../model */);\n var Callback = function (_super) {\n tslib_1.__extends(Callback, _super);\n function Callback(attrs) {\n return _super.call(this, attrs) || this;\n }\n Callback.initClass = function () {\n this.prototype.type = 'Callback';\n };\n return Callback;\n }(model_1.Model);\n exports.Callback = Callback;\n Callback.initClass(); \n}","/*models/callbacks/customjs*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var callback_1 = require(80 /* ./callback */);\n var p = require(15 /* core/properties */);\n var object_1 = require(32 /* core/util/object */);\n var string_1 = require(38 /* core/util/string */);\n var CustomJS = function (_super) {\n tslib_1.__extends(CustomJS, _super);\n function CustomJS(attrs) {\n return _super.call(this, attrs) || this;\n }\n CustomJS.initClass = function () {\n this.prototype.type = 'CustomJS';\n this.define({\n args: [\n p.Any,\n {}\n ],\n code: [\n p.String,\n ''\n ],\n use_strict: [\n p.Boolean,\n false\n ]\n });\n };\n Object.defineProperty(CustomJS.prototype, 'names', {\n get: function () {\n return object_1.keys(this.args);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(CustomJS.prototype, 'values', {\n get: function () {\n return object_1.values(this.args);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(CustomJS.prototype, 'func', {\n get: function () {\n var code = this.use_strict ? string_1.use_strict(this.code) : this.code;\n return new (Function.bind.apply(Function, [void 0].concat(this.names, [\n 'cb_obj',\n 'cb_data',\n 'require',\n 'exports',\n code\n ])))();\n },\n enumerable: true,\n configurable: true\n });\n CustomJS.prototype.execute = function (cb_obj, cb_data) {\n return this.func.apply(cb_obj, this.values.concat(cb_obj, cb_data, require, {}));\n };\n return CustomJS;\n }(callback_1.Callback);\n exports.CustomJS = CustomJS;\n CustomJS.initClass(); \n}","/*models/callbacks/index*/\nfunction _(require, module, exports) {\n var customjs_1 = require(81 /* ./customjs */);\n exports.CustomJS = customjs_1.CustomJS;\n var open_url_1 = require(83 /* ./open_url */);\n exports.OpenURL = open_url_1.OpenURL; \n}","/*models/callbacks/open_url*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var callback_1 = require(80 /* ./callback */);\n var p = require(15 /* core/properties */);\n var selection_1 = require(35 /* core/util/selection */);\n var templating_1 = require(40 /* core/util/templating */);\n var OpenURL = function (_super) {\n tslib_1.__extends(OpenURL, _super);\n function OpenURL(attrs) {\n return _super.call(this, attrs) || this;\n }\n OpenURL.initClass = function () {\n this.prototype.type = 'OpenURL';\n this.define({\n url: [\n p.String,\n 'http://'\n ]\n });\n };\n OpenURL.prototype.execute = function (_cb_obj, cb_data) {\n for (var _i = 0, _a = selection_1.get_indices(cb_data.source); _i < _a.length; _i++) {\n var i = _a[_i];\n var url = templating_1.replace_placeholders(this.url, cb_data.source, i);\n window.open(url);\n }\n return null;\n };\n return OpenURL;\n }(callback_1.Callback);\n exports.OpenURL = OpenURL;\n OpenURL.initClass(); \n}","/*models/canvas/canvas*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var layout_canvas_1 = require(11 /* core/layout/layout_canvas */);\n var dom_view_1 = require(6 /* core/dom_view */);\n var solver_1 = require(13 /* core/layout/solver */);\n var logging_1 = require(14 /* core/logging */);\n var p = require(15 /* core/properties */);\n var dom_1 = require(5 /* core/dom */);\n var canvas_1 = require(26 /* core/util/canvas */);\n var canvas2svg = require(266 /* canvas2svg */);\n // XXX: no typings\n // fixes up a problem with some versions of IE11\n // ref: http://stackoverflow.com/questions/22062313/imagedata-set-in-internetexplorer\n if (window.CanvasPixelArray != null) {\n window.CanvasPixelArray.prototype.set = function (arr) {\n for (var i = 0; i < this.length; i++) {\n this[i] = arr[i];\n }\n };\n }\n var CanvasView = function (_super) {\n tslib_1.__extends(CanvasView, _super);\n function CanvasView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n CanvasView.prototype.initialize = function (options) {\n _super.prototype.initialize.call(this, options);\n this.map_el = this.model.map ? this.el.appendChild(dom_1.div({ class: 'bk-canvas-map' })) : null;\n switch (this.model.output_backend) {\n case 'canvas':\n case 'webgl':\n this.canvas_el = this.el.appendChild(dom_1.canvas({ class: 'bk-canvas' }));\n this._ctx = this.canvas_el.getContext('2d');\n break;\n case 'svg':\n this._ctx = new canvas2svg();\n this.canvas_el = this.el.appendChild(this._ctx.getSvg());\n break;\n }\n this.overlays_el = this.el.appendChild(dom_1.div({ class: 'bk-canvas-overlays' }));\n this.events_el = this.el.appendChild(dom_1.div({ class: 'bk-canvas-events' }));\n this.ctx = this.get_ctx();\n // work around canvas incompatibilities\n canvas_1.fixup_ctx(this.ctx);\n logging_1.logger.debug('CanvasView initialized');\n };\n CanvasView.prototype.css_classes = function () {\n return _super.prototype.css_classes.call(this).concat('bk-canvas-wrapper');\n };\n // Method exists so that context can be stubbed in unit tests\n CanvasView.prototype.get_ctx = function () {\n return this._ctx;\n };\n CanvasView.prototype.get_canvas_element = function () {\n return this.canvas_el;\n };\n CanvasView.prototype.prepare_canvas = function () {\n // Ensure canvas has the correct size, taking HIDPI into account\n var width = this.model._width.value;\n var height = this.model._height.value;\n this.el.style.width = width + 'px';\n this.el.style.height = height + 'px';\n var pixel_ratio = canvas_1.get_scale_ratio(this.ctx, this.model.use_hidpi, this.model.output_backend);\n this.model.pixel_ratio = pixel_ratio;\n this.canvas_el.style.width = width + 'px';\n this.canvas_el.style.height = height + 'px';\n // XXX: io.export and canvas2svg don't like this\n // this.canvas_el.width = width*pixel_ratio\n // this.canvas_el.height = height*pixel_ratio\n this.canvas_el.setAttribute('width', '' + width * pixel_ratio);\n this.canvas_el.setAttribute('height', '' + height * pixel_ratio);\n logging_1.logger.debug('Rendering CanvasView with width: ' + width + ', height: ' + height + ', pixel ratio: ' + pixel_ratio);\n };\n CanvasView.prototype.set_dims = function (_a) {\n var width = _a[0], height = _a[1];\n // XXX: for whatever reason we need to protect against those nonsense values,\n // that appear in the middle of updating layout. Otherwise we would get\n // all possible errors from the layout solver.\n if (width == 0 || height == 0)\n return;\n if (width != this.model._width.value) {\n if (this._width_constraint != null && this.solver.has_constraint(this._width_constraint))\n this.solver.remove_constraint(this._width_constraint);\n this._width_constraint = solver_1.EQ(this.model._width, -width);\n this.solver.add_constraint(this._width_constraint);\n }\n if (height != this.model._height.value) {\n if (this._height_constraint != null && this.solver.has_constraint(this._height_constraint))\n this.solver.remove_constraint(this._height_constraint);\n this._height_constraint = solver_1.EQ(this.model._height, -height);\n this.solver.add_constraint(this._height_constraint);\n }\n this.solver.update_variables();\n };\n return CanvasView;\n }(dom_view_1.DOMView);\n exports.CanvasView = CanvasView;\n var Canvas = function (_super) {\n tslib_1.__extends(Canvas, _super);\n function Canvas(attrs) {\n return _super.call(this, attrs) || this;\n }\n Canvas.initClass = function () {\n this.prototype.type = 'Canvas';\n this.prototype.default_view = CanvasView;\n this.internal({\n map: [\n p.Boolean,\n false\n ],\n use_hidpi: [\n p.Boolean,\n true\n ],\n pixel_ratio: [\n p.Number,\n 1\n ],\n output_backend: [\n p.OutputBackend,\n 'canvas'\n ]\n });\n };\n Object.defineProperty(Canvas.prototype, 'panel', {\n get: function () {\n return this;\n },\n enumerable: true,\n configurable: true\n });\n return Canvas;\n }(layout_canvas_1.LayoutCanvas);\n exports.Canvas = Canvas;\n Canvas.initClass(); \n}","/*models/canvas/cartesian_frame*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var categorical_scale_1 = require(174 /* ../scales/categorical_scale */);\n var linear_scale_1 = require(176 /* ../scales/linear_scale */);\n var log_scale_1 = require(177 /* ../scales/log_scale */);\n var range1d_1 = require(168 /* ../ranges/range1d */);\n var data_range1d_1 = require(164 /* ../ranges/data_range1d */);\n var factor_range_1 = require(165 /* ../ranges/factor_range */);\n var layout_canvas_1 = require(11 /* core/layout/layout_canvas */);\n var p = require(15 /* core/properties */);\n var CartesianFrame = function (_super) {\n tslib_1.__extends(CartesianFrame, _super);\n function CartesianFrame(attrs) {\n return _super.call(this, attrs) || this;\n }\n CartesianFrame.initClass = function () {\n this.prototype.type = 'CartesianFrame';\n this.internal({\n extra_x_ranges: [\n p.Any,\n {}\n ],\n extra_y_ranges: [\n p.Any,\n {}\n ],\n x_range: [p.Instance],\n y_range: [p.Instance],\n x_scale: [p.Instance],\n y_scale: [p.Instance]\n });\n };\n CartesianFrame.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n this._configure_scales();\n };\n CartesianFrame.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.change, function () {\n return _this._configure_scales();\n });\n };\n Object.defineProperty(CartesianFrame.prototype, 'panel', {\n get: function () {\n return this;\n },\n enumerable: true,\n configurable: true\n });\n CartesianFrame.prototype.get_editables = function () {\n return _super.prototype.get_editables.call(this).concat([\n this._width,\n this._height\n ]);\n };\n CartesianFrame.prototype.map_to_screen = function (x, y, x_name, y_name) {\n if (x_name === void 0) {\n x_name = 'default';\n }\n if (y_name === void 0) {\n y_name = 'default';\n }\n var sx = this.xscales[x_name].v_compute(x);\n var sy = this.yscales[y_name].v_compute(y);\n return [\n sx,\n sy\n ];\n };\n CartesianFrame.prototype._get_ranges = function (range, extra_ranges) {\n var ranges = {};\n ranges['default'] = range;\n if (extra_ranges != null) {\n for (var name_1 in extra_ranges)\n ranges[name_1] = extra_ranges[name_1];\n }\n return ranges;\n };\n CartesianFrame.prototype._get_scales = function (scale, ranges, frame_range) {\n var scales = {};\n for (var name_2 in ranges) {\n var range = ranges[name_2];\n if (range instanceof data_range1d_1.DataRange1d || range instanceof range1d_1.Range1d) {\n if (!(scale instanceof log_scale_1.LogScale) && !(scale instanceof linear_scale_1.LinearScale))\n throw new Error('Range ' + range.type + ' is incompatible is Scale ' + scale.type);\n // XXX: special case because CategoricalScale is a subclass of LinearScale, should be removed in future\n if (scale instanceof categorical_scale_1.CategoricalScale)\n throw new Error('Range ' + range.type + ' is incompatible is Scale ' + scale.type);\n }\n if (range instanceof factor_range_1.FactorRange) {\n if (!(scale instanceof categorical_scale_1.CategoricalScale))\n throw new Error('Range ' + range.type + ' is incompatible is Scale ' + scale.type);\n }\n if (scale instanceof log_scale_1.LogScale && range instanceof data_range1d_1.DataRange1d)\n range.scale_hint = 'log';\n var s = scale.clone();\n s.setv({\n source_range: range,\n target_range: frame_range\n });\n scales[name_2] = s;\n }\n return scales;\n };\n CartesianFrame.prototype._configure_frame_ranges = function () {\n // data to/from screen space transform (left-bottom <-> left-top origin)\n this._h_target = new range1d_1.Range1d({\n start: this._left.value,\n end: this._right.value\n });\n this._v_target = new range1d_1.Range1d({\n start: this._bottom.value,\n end: this._top.value\n });\n };\n CartesianFrame.prototype._configure_scales = function () {\n this._configure_frame_ranges();\n this._x_ranges = this._get_ranges(this.x_range, this.extra_x_ranges);\n this._y_ranges = this._get_ranges(this.y_range, this.extra_y_ranges);\n this._xscales = this._get_scales(this.x_scale, this._x_ranges, this._h_target);\n this._yscales = this._get_scales(this.y_scale, this._y_ranges, this._v_target);\n };\n CartesianFrame.prototype.update_scales = function () {\n this._configure_frame_ranges();\n for (var name_3 in this._xscales) {\n var scale = this._xscales[name_3];\n scale.target_range = this._h_target;\n }\n for (var name_4 in this._yscales) {\n var scale = this._yscales[name_4];\n scale.target_range = this._v_target;\n }\n };\n Object.defineProperty(CartesianFrame.prototype, 'x_ranges', {\n get: function () {\n return this._x_ranges;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(CartesianFrame.prototype, 'y_ranges', {\n get: function () {\n return this._y_ranges;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(CartesianFrame.prototype, 'xscales', {\n get: function () {\n return this._xscales;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(CartesianFrame.prototype, 'yscales', {\n get: function () {\n return this._yscales;\n },\n enumerable: true,\n configurable: true\n });\n return CartesianFrame;\n }(layout_canvas_1.LayoutCanvas);\n exports.CartesianFrame = CartesianFrame;\n CartesianFrame.initClass(); \n}","/*models/canvas/index*/\nfunction _(require, module, exports) {\n var canvas_1 = require(84 /* ./canvas */);\n exports.Canvas = canvas_1.Canvas;\n var cartesian_frame_1 = require(85 /* ./cartesian_frame */);\n exports.CartesianFrame = cartesian_frame_1.CartesianFrame; \n}","/*models/expressions/expression*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var model_1 = require(53 /* ../../model */);\n var Expression = function (_super) {\n tslib_1.__extends(Expression, _super);\n function Expression(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this._connected = {};\n _this._result = {};\n return _this;\n }\n Expression.initClass = function () {\n this.prototype.type = 'Expression';\n };\n Expression.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n this._connected = {};\n this._result = {};\n };\n Expression.prototype.v_compute = function (source) {\n var _this = this;\n if (this._connected[source.id] == null) {\n this.connect(source.change, function () {\n return delete _this._result[source.id];\n });\n this.connect(source.patching, function () {\n return delete _this._result[source.id];\n });\n this.connect(source.streaming, function () {\n return delete _this._result[source.id];\n });\n this._connected[source.id] = true;\n }\n var result = this._result[source.id];\n if (result == null)\n this._result[source.id] = result = this._v_compute(source);\n return result;\n };\n return Expression;\n }(model_1.Model);\n exports.Expression = Expression;\n Expression.initClass(); \n}","/*models/expressions/index*/\nfunction _(require, module, exports) {\n var expression_1 = require(87 /* ./expression */);\n exports.Expression = expression_1.Expression;\n var stack_1 = require(89 /* ./stack */);\n exports.Stack = stack_1.Stack; \n}","/*models/expressions/stack*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var expression_1 = require(87 /* ./expression */);\n var p = require(15 /* core/properties */);\n var Stack = function (_super) {\n tslib_1.__extends(Stack, _super);\n function Stack(attrs) {\n return _super.call(this, attrs) || this;\n }\n Stack.initClass = function () {\n this.prototype.type = 'Stack';\n this.define({\n fields: [\n p.Array,\n []\n ]\n });\n };\n Stack.prototype._v_compute = function (source) {\n var result = new Float64Array(source.get_length() || 0);\n for (var _i = 0, _a = this.fields; _i < _a.length; _i++) {\n var f = _a[_i];\n for (var i = 0; i < source.data[f].length; i++) {\n var x = source.data[f][i];\n result[i] += x;\n }\n }\n return result;\n };\n return Stack;\n }(expression_1.Expression);\n exports.Stack = Stack;\n Stack.initClass(); \n}","/*models/filters/boolean_filter*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var filter_1 = require(92 /* ./filter */);\n var p = require(15 /* core/properties */);\n var logging_1 = require(14 /* core/logging */);\n var array_1 = require(21 /* core/util/array */);\n var types_1 = require(44 /* core/util/types */);\n var BooleanFilter = function (_super) {\n tslib_1.__extends(BooleanFilter, _super);\n function BooleanFilter(attrs) {\n return _super.call(this, attrs) || this;\n }\n BooleanFilter.initClass = function () {\n this.prototype.type = 'BooleanFilter';\n this.define({\n booleans: [\n p.Array,\n null\n ]\n });\n };\n BooleanFilter.prototype.compute_indices = function (source) {\n var booleans = this.booleans;\n if (booleans != null && booleans.length > 0) {\n if (array_1.all(booleans, types_1.isBoolean)) {\n if (booleans.length !== source.get_length()) {\n logging_1.logger.warn('BooleanFilter ' + this.id + ': length of booleans doesn\\'t match data source');\n }\n return array_1.range(0, booleans.length).filter(function (i) {\n return booleans[i] === true;\n });\n } else {\n logging_1.logger.warn('BooleanFilter ' + this.id + ': booleans should be array of booleans, defaulting to no filtering');\n return null;\n }\n } else {\n if (booleans != null && booleans.length == 0)\n logging_1.logger.warn('BooleanFilter ' + this.id + ': booleans is empty, defaulting to no filtering');\n else\n logging_1.logger.warn('BooleanFilter ' + this.id + ': booleans was not set, defaulting to no filtering');\n return null;\n }\n };\n return BooleanFilter;\n }(filter_1.Filter);\n exports.BooleanFilter = BooleanFilter;\n BooleanFilter.initClass(); \n}","/*models/filters/customjs_filter*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var filter_1 = require(92 /* ./filter */);\n var p = require(15 /* core/properties */);\n var object_1 = require(32 /* core/util/object */);\n var string_1 = require(38 /* core/util/string */);\n var CustomJSFilter = function (_super) {\n tslib_1.__extends(CustomJSFilter, _super);\n function CustomJSFilter(attrs) {\n return _super.call(this, attrs) || this;\n }\n CustomJSFilter.initClass = function () {\n this.prototype.type = 'CustomJSFilter';\n this.define({\n args: [\n p.Any,\n {}\n ],\n code: [\n p.String,\n ''\n ],\n use_strict: [\n p.Boolean,\n false\n ]\n });\n };\n Object.defineProperty(CustomJSFilter.prototype, 'names', {\n get: function () {\n return object_1.keys(this.args);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(CustomJSFilter.prototype, 'values', {\n get: function () {\n return object_1.values(this.args);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(CustomJSFilter.prototype, 'func', {\n get: function () {\n var code = this.use_strict ? string_1.use_strict(this.code) : this.code;\n return new (Function.bind.apply(Function, [void 0].concat(this.names, [\n 'source',\n 'require',\n 'exports',\n code\n ])))();\n },\n enumerable: true,\n configurable: true\n });\n CustomJSFilter.prototype.compute_indices = function (source) {\n this.filter = this.func.apply(this, this.values.concat([\n source,\n require,\n {}\n ]));\n return _super.prototype.compute_indices.call(this, source);\n };\n return CustomJSFilter;\n }(filter_1.Filter);\n exports.CustomJSFilter = CustomJSFilter;\n CustomJSFilter.initClass(); \n}","/*models/filters/filter*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var model_1 = require(53 /* ../../model */);\n var p = require(15 /* core/properties */);\n var types_1 = require(44 /* core/util/types */);\n var array_1 = require(21 /* core/util/array */);\n var logging_1 = require(14 /* core/logging */);\n var Filter = function (_super) {\n tslib_1.__extends(Filter, _super);\n function Filter(attrs) {\n return _super.call(this, attrs) || this;\n }\n Filter.initClass = function () {\n this.prototype.type = 'Filter';\n this.define({\n filter: [\n p.Array,\n null\n ]\n });\n };\n Filter.prototype.compute_indices = function (_source) {\n var filter = this.filter;\n if (filter != null && filter.length >= 0) {\n if (types_1.isArrayOf(filter, types_1.isBoolean)) {\n return array_1.range(0, filter.length).filter(function (i) {\n return filter[i] === true;\n });\n }\n if (types_1.isArrayOf(filter, types_1.isInteger)) {\n return filter;\n }\n logging_1.logger.warn('Filter ' + this.id + ': filter should either be array of only booleans or only integers, defaulting to no filtering');\n return null;\n } else {\n logging_1.logger.warn('Filter ' + this.id + ': filter was not set to be an array, defaulting to no filtering');\n return null;\n }\n };\n return Filter;\n }(model_1.Model);\n exports.Filter = Filter;\n Filter.initClass(); \n}","/*models/filters/group_filter*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var filter_1 = require(92 /* ./filter */);\n var p = require(15 /* core/properties */);\n var logging_1 = require(14 /* core/logging */);\n var array_1 = require(21 /* core/util/array */);\n var GroupFilter = function (_super) {\n tslib_1.__extends(GroupFilter, _super);\n function GroupFilter(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.indices = null;\n return _this;\n }\n GroupFilter.initClass = function () {\n this.prototype.type = 'GroupFilter';\n this.define({\n column_name: [p.String],\n group: [p.String]\n });\n };\n GroupFilter.prototype.compute_indices = function (source) {\n var _this = this;\n var column = source.get_column(this.column_name);\n if (column == null) {\n logging_1.logger.warn('group filter: groupby column not found in data source');\n return null;\n } else {\n this.indices = array_1.range(0, source.get_length() || 0).filter(function (i) {\n return column[i] === _this.group;\n });\n if (this.indices.length === 0) {\n logging_1.logger.warn('group filter: group \\'' + this.group + '\\' did not match any values in column \\'' + this.column_name + '\\'');\n }\n return this.indices;\n }\n };\n return GroupFilter;\n }(filter_1.Filter);\n exports.GroupFilter = GroupFilter;\n GroupFilter.initClass(); \n}","/*models/filters/index*/\nfunction _(require, module, exports) {\n var boolean_filter_1 = require(90 /* ./boolean_filter */);\n exports.BooleanFilter = boolean_filter_1.BooleanFilter;\n var customjs_filter_1 = require(91 /* ./customjs_filter */);\n exports.CustomJSFilter = customjs_filter_1.CustomJSFilter;\n var filter_1 = require(92 /* ./filter */);\n exports.Filter = filter_1.Filter;\n var group_filter_1 = require(93 /* ./group_filter */);\n exports.GroupFilter = group_filter_1.GroupFilter;\n var index_filter_1 = require(95 /* ./index_filter */);\n exports.IndexFilter = index_filter_1.IndexFilter; \n}","/*models/filters/index_filter*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var filter_1 = require(92 /* ./filter */);\n var p = require(15 /* core/properties */);\n var logging_1 = require(14 /* core/logging */);\n var types_1 = require(44 /* core/util/types */);\n var array_1 = require(21 /* core/util/array */);\n var IndexFilter = function (_super) {\n tslib_1.__extends(IndexFilter, _super);\n function IndexFilter(attrs) {\n return _super.call(this, attrs) || this;\n }\n IndexFilter.initClass = function () {\n this.prototype.type = 'IndexFilter';\n this.define({\n indices: [\n p.Array,\n null\n ]\n });\n };\n IndexFilter.prototype.compute_indices = function (_source) {\n if (this.indices != null && this.indices.length >= 0) {\n if (array_1.all(this.indices, types_1.isInteger))\n return this.indices;\n else {\n logging_1.logger.warn('IndexFilter ' + this.id + ': indices should be array of integers, defaulting to no filtering');\n return null;\n }\n } else {\n logging_1.logger.warn('IndexFilter ' + this.id + ': indices was not set, defaulting to no filtering');\n return null;\n }\n };\n return IndexFilter;\n }(filter_1.Filter);\n exports.IndexFilter = IndexFilter;\n IndexFilter.initClass(); \n}","/*models/formatters/basic_tick_formatter*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var tick_formatter_1 = require(105 /* ./tick_formatter */);\n var p = require(15 /* core/properties */);\n var types_1 = require(44 /* core/util/types */);\n var BasicTickFormatter = function (_super) {\n tslib_1.__extends(BasicTickFormatter, _super);\n function BasicTickFormatter(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.last_precision = 3;\n return _this;\n }\n BasicTickFormatter.initClass = function () {\n this.prototype.type = 'BasicTickFormatter';\n this.define({\n precision: [\n p.Any,\n 'auto'\n ],\n use_scientific: [\n p.Bool,\n true\n ],\n power_limit_high: [\n p.Number,\n 5\n ],\n power_limit_low: [\n p.Number,\n -3\n ]\n });\n };\n Object.defineProperty(BasicTickFormatter.prototype, 'scientific_limit_low', {\n get: function () {\n return Math.pow(10, this.power_limit_low);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(BasicTickFormatter.prototype, 'scientific_limit_high', {\n get: function () {\n return Math.pow(10, this.power_limit_high);\n },\n enumerable: true,\n configurable: true\n });\n BasicTickFormatter.prototype.doFormat = function (ticks, _axis) {\n if (ticks.length == 0)\n return [];\n var zero_eps = 0;\n if (ticks.length >= 2)\n zero_eps = Math.abs(ticks[1] - ticks[0]) / 10000;\n var need_sci = false;\n if (this.use_scientific) {\n for (var _i = 0, ticks_1 = ticks; _i < ticks_1.length; _i++) {\n var tick = ticks_1[_i];\n var tick_abs = Math.abs(tick);\n if (tick_abs > zero_eps && (tick_abs >= this.scientific_limit_high || tick_abs <= this.scientific_limit_low)) {\n need_sci = true;\n break;\n }\n }\n }\n var labels = new Array(ticks.length);\n var precision = this.precision;\n if (precision == null || types_1.isNumber(precision)) {\n if (need_sci) {\n for (var i = 0, end = ticks.length; i < end; i++) {\n labels[i] = ticks[i].toExponential(precision || undefined);\n }\n } else {\n for (var i = 0, end = ticks.length; i < end; i++) {\n labels[i] = ticks[i].toFixed(precision || undefined).replace(/(\\.[0-9]*?)0+$/, '$1').replace(/\\.$/, '');\n }\n }\n } else {\n for (var x = this.last_precision, asc = this.last_precision <= 15; asc ? x <= 15 : x >= 15; asc ? x++ : x--) {\n var is_ok = true;\n if (need_sci) {\n for (var i = 0, end = ticks.length; i < end; i++) {\n labels[i] = ticks[i].toExponential(x);\n if (i > 0) {\n if (labels[i] === labels[i - 1]) {\n is_ok = false;\n break;\n }\n }\n }\n if (is_ok) {\n break;\n }\n } else {\n for (var i = 0, end = ticks.length; i < end; i++) {\n labels[i] = ticks[i].toFixed(x).replace(/(\\.[0-9]*?)0+$/, '$1').replace(/\\.$/, '');\n if (i > 0) {\n if (labels[i] == labels[i - 1]) {\n is_ok = false;\n break;\n }\n }\n }\n if (is_ok) {\n break;\n }\n }\n if (is_ok) {\n this.last_precision = x;\n break;\n }\n }\n }\n return labels;\n };\n return BasicTickFormatter;\n }(tick_formatter_1.TickFormatter);\n exports.BasicTickFormatter = BasicTickFormatter;\n BasicTickFormatter.initClass(); \n}","/*models/formatters/categorical_tick_formatter*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var tick_formatter_1 = require(105 /* ./tick_formatter */);\n var array_1 = require(21 /* core/util/array */);\n var CategoricalTickFormatter = function (_super) {\n tslib_1.__extends(CategoricalTickFormatter, _super);\n function CategoricalTickFormatter(attrs) {\n return _super.call(this, attrs) || this;\n }\n CategoricalTickFormatter.initClass = function () {\n this.prototype.type = 'CategoricalTickFormatter';\n };\n CategoricalTickFormatter.prototype.doFormat = function (ticks, _axis) {\n return array_1.copy(ticks);\n };\n return CategoricalTickFormatter;\n }(tick_formatter_1.TickFormatter);\n exports.CategoricalTickFormatter = CategoricalTickFormatter;\n CategoricalTickFormatter.initClass(); \n}","/*models/formatters/datetime_tick_formatter*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var sprintf_js_1 = require(378 /* sprintf-js */);\n var tz = require(379 /* timezone */);\n var tick_formatter_1 = require(105 /* ./tick_formatter */);\n var logging_1 = require(14 /* core/logging */);\n var p = require(15 /* core/properties */);\n var array_1 = require(21 /* core/util/array */);\n var types_1 = require(44 /* core/util/types */);\n function _us(t) {\n // From double-precision unix (millisecond) timestamp get\n // microsecond since last second. Precision seems to run\n // out around the hundreds of nanoseconds scale, so rounding\n // to the nearest microsecond should round to a nice\n // microsecond / millisecond tick.\n return Math.round(t / 1000 % 1 * 1000000);\n }\n function _array(t) {\n return tz(t, '%Y %m %d %H %M %S').split(/\\s+/).map(function (e) {\n return parseInt(e, 10);\n });\n }\n function _strftime(t, format) {\n if (types_1.isFunction(format)) {\n return format(t);\n } else {\n // Python's datetime library augments the microsecond directive %f, which is not\n // supported by the javascript library timezone: http://bigeasy.github.io/timezone/.\n // Use a regular expression to replace %f directive with microseconds.\n // TODO: what should we do for negative microsecond strings?\n var microsecond_replacement_string = sprintf_js_1.sprintf('$1%06d', _us(t));\n format = format.replace(/((^|[^%])(%%)*)%f/, microsecond_replacement_string);\n if (format.indexOf('%') == -1) {\n // timezone seems to ignore any strings without any formatting directives,\n // and just return the time argument back instead of the string argument.\n // But we want the string argument, in case a user supplies a format string\n // which doesn't contain a formatting directive or is only using %f.\n return format;\n }\n return tz(t, format);\n }\n }\n // Labels of time units, from finest to coarsest.\n var format_order = [\n 'microseconds',\n 'milliseconds',\n 'seconds',\n 'minsec',\n 'minutes',\n 'hourmin',\n 'hours',\n 'days',\n 'months',\n 'years'\n ];\n var DatetimeTickFormatter = function (_super) {\n tslib_1.__extends(DatetimeTickFormatter, _super);\n function DatetimeTickFormatter(attrs) {\n var _this = _super.call(this, attrs) || this;\n // Whether or not to strip the leading zeros on tick labels.\n _this.strip_leading_zeros = true;\n return _this;\n }\n DatetimeTickFormatter.initClass = function () {\n this.prototype.type = 'DatetimeTickFormatter';\n this.define({\n microseconds: [\n p.Array,\n ['%fus']\n ],\n milliseconds: [\n p.Array,\n [\n '%3Nms',\n '%S.%3Ns'\n ]\n ],\n seconds: [\n p.Array,\n ['%Ss']\n ],\n minsec: [\n p.Array,\n [':%M:%S']\n ],\n minutes: [\n p.Array,\n [\n ':%M',\n '%Mm'\n ]\n ],\n hourmin: [\n p.Array,\n ['%H:%M']\n ],\n hours: [\n p.Array,\n [\n '%Hh',\n '%H:%M'\n ]\n ],\n days: [\n p.Array,\n [\n '%m/%d',\n '%a%d'\n ]\n ],\n months: [\n p.Array,\n [\n '%m/%Y',\n '%b %Y'\n ]\n ],\n years: [\n p.Array,\n ['%Y']\n ]\n });\n };\n DatetimeTickFormatter.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n // TODO (bev) trigger update on format change\n this._update_width_formats();\n };\n DatetimeTickFormatter.prototype._update_width_formats = function () {\n var now = +tz(new Date());\n var _widths = function (fmt_strings) {\n var sizes = fmt_strings.map(function (fmt_string) {\n return _strftime(now, fmt_string).length;\n });\n var sorted = array_1.sortBy(array_1.zip(sizes, fmt_strings), function (_a) {\n var size = _a[0];\n return size;\n });\n return array_1.unzip(sorted);\n };\n this._width_formats = {\n microseconds: _widths(this.microseconds),\n milliseconds: _widths(this.milliseconds),\n seconds: _widths(this.seconds),\n minsec: _widths(this.minsec),\n minutes: _widths(this.minutes),\n hourmin: _widths(this.hourmin),\n hours: _widths(this.hours),\n days: _widths(this.days),\n months: _widths(this.months),\n years: _widths(this.years)\n };\n };\n // FIXME There is some unfortunate flicker when panning/zooming near the\n // span boundaries.\n // FIXME Rounding is weird at the 20-us scale and below.\n DatetimeTickFormatter.prototype._get_resolution_str = function (resolution_secs, span_secs) {\n // Our resolution boundaries should not be round numbers, because we want\n // them to fall between the possible tick intervals (which *are* round\n // numbers, as we've worked hard to ensure). Consequently, we adjust the\n // resolution upwards a small amount (less than any possible step in\n // scales) to make the effective boundaries slightly lower.\n var adjusted_secs = resolution_secs * 1.1;\n switch (false) {\n case !(adjusted_secs < 0.001):\n return 'microseconds';\n case !(adjusted_secs < 1):\n return 'milliseconds';\n case !(adjusted_secs < 60):\n return span_secs >= 60 ? 'minsec' : 'seconds';\n case !(adjusted_secs < 3600):\n return span_secs >= 3600 ? 'hourmin' : 'minutes';\n case !(adjusted_secs < 24 * 3600):\n return 'hours';\n case !(adjusted_secs < 31 * 24 * 3600):\n return 'days';\n case !(adjusted_secs < 365 * 24 * 3600):\n return 'months';\n default:\n return 'years';\n }\n };\n DatetimeTickFormatter.prototype.doFormat = function (ticks, _axis) {\n // In order to pick the right set of labels, we need to determine\n // the resolution of the ticks. We can do this using a ticker if\n // it's provided, or by computing the resolution from the actual\n // ticks we've been given.\n if (ticks.length == 0)\n return [];\n var span = Math.abs(ticks[ticks.length - 1] - ticks[0]) / 1000;\n var r = span / (ticks.length - 1);\n var resol = this._get_resolution_str(r, span);\n var _a = this._width_formats[resol], format = _a[1][0];\n // Apply the format to the tick values\n var labels = [];\n var resol_ndx = format_order.indexOf(resol);\n // This dictionary maps the name of a time resolution (in @format_order)\n // to its index in a time.localtime() timetuple. The default is to map\n // everything to index 0, which is year. This is not ideal; it might cause\n // a problem with the tick at midnight, january 1st, 0 a.d. being incorrectly\n // promoted at certain tick resolutions.\n var time_tuple_ndx_for_resol = {};\n for (var _i = 0, format_order_1 = format_order; _i < format_order_1.length; _i++) {\n var fmt = format_order_1[_i];\n time_tuple_ndx_for_resol[fmt] = 0;\n }\n time_tuple_ndx_for_resol['seconds'] = 5;\n time_tuple_ndx_for_resol['minsec'] = 4;\n time_tuple_ndx_for_resol['minutes'] = 4;\n time_tuple_ndx_for_resol['hourmin'] = 3;\n time_tuple_ndx_for_resol['hours'] = 3;\n // As we format each tick, check to see if we are at a boundary of the\n // next higher unit of time. If so, replace the current format with one\n // from that resolution. This is not the best heuristic in the world,\n // but it works! There is some trickiness here due to having to deal\n // with hybrid formats in a reasonable manner.\n for (var _b = 0, ticks_1 = ticks; _b < ticks_1.length; _b++) {\n var t = ticks_1[_b];\n var s = void 0, tm = void 0;\n try {\n tm = _array(t);\n s = _strftime(t, format);\n } catch (error) {\n logging_1.logger.warn('unable to format tick for timestamp value ' + t);\n logging_1.logger.warn(' - ' + error);\n labels.push('ERR');\n continue;\n }\n var hybrid_handled = false;\n var next_ndx = resol_ndx;\n // The way to check that we are at the boundary of the next unit of\n // time is by checking that we have 0 units of the resolution, i.e.\n // we are at zero minutes, so display hours, or we are at zero seconds,\n // so display minutes (and if that is zero as well, then display hours).\n while (tm[time_tuple_ndx_for_resol[format_order[next_ndx]]] == 0) {\n var next_format = void 0;\n next_ndx += 1;\n if (next_ndx == format_order.length)\n break;\n if ((resol == 'minsec' || resol == 'hourmin') && !hybrid_handled) {\n if (resol == 'minsec' && tm[4] == 0 && tm[5] != 0 || resol == 'hourmin' && tm[3] == 0 && tm[4] != 0) {\n next_format = this._width_formats[format_order[resol_ndx - 1]][1][0];\n s = _strftime(t, next_format);\n break;\n } else {\n hybrid_handled = true;\n }\n }\n next_format = this._width_formats[format_order[next_ndx]][1][0];\n s = _strftime(t, next_format);\n }\n // TODO: should expose this in api. %H, %d, etc use leading zeros and\n // users might prefer to see them lined up correctly.\n if (this.strip_leading_zeros) {\n var ss = s.replace(/^0+/g, '');\n if (ss != s && isNaN(parseInt(ss))) {\n // If the string can now be parsed as starting with an integer, then\n // leave all zeros stripped, otherwise start with a zero. Hence:\n // A label such as '000ms' should leave one zero.\n // A label such as '001ms' or '0-1ms' should not leave a leading zero.\n ss = '0' + ss;\n }\n labels.push(ss);\n } else\n labels.push(s);\n }\n return labels;\n };\n return DatetimeTickFormatter;\n }(tick_formatter_1.TickFormatter);\n exports.DatetimeTickFormatter = DatetimeTickFormatter;\n DatetimeTickFormatter.initClass(); \n}","/*models/formatters/func_tick_formatter*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var tick_formatter_1 = require(105 /* ./tick_formatter */);\n var p = require(15 /* core/properties */);\n var object_1 = require(32 /* core/util/object */);\n var string_1 = require(38 /* core/util/string */);\n var FuncTickFormatter = function (_super) {\n tslib_1.__extends(FuncTickFormatter, _super);\n function FuncTickFormatter(attrs) {\n return _super.call(this, attrs) || this;\n }\n FuncTickFormatter.initClass = function () {\n this.prototype.type = 'FuncTickFormatter';\n this.define({\n args: [\n p.Any,\n {}\n ],\n code: [\n p.String,\n ''\n ],\n use_strict: [\n p.Boolean,\n false\n ]\n });\n };\n Object.defineProperty(FuncTickFormatter.prototype, 'names', {\n get: function () {\n return object_1.keys(this.args);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(FuncTickFormatter.prototype, 'values', {\n get: function () {\n return object_1.values(this.args);\n },\n enumerable: true,\n configurable: true\n });\n FuncTickFormatter.prototype._make_func = function () {\n var code = this.use_strict ? string_1.use_strict(this.code) : this.code;\n return new (Function.bind.apply(Function, [\n void 0,\n 'tick',\n 'index',\n 'ticks'\n ].concat(this.names, [\n 'require',\n 'exports',\n code\n ])))();\n };\n FuncTickFormatter.prototype.doFormat = function (ticks, _axis) {\n var _this = this;\n var cache = {};\n var func = this._make_func().bind(cache);\n return ticks.map(function (tick, index, ticks) {\n return func.apply(void 0, [\n tick,\n index,\n ticks\n ].concat(_this.values, [\n require,\n {}\n ]));\n });\n };\n return FuncTickFormatter;\n }(tick_formatter_1.TickFormatter);\n exports.FuncTickFormatter = FuncTickFormatter;\n FuncTickFormatter.initClass(); \n}","/*models/formatters/index*/\nfunction _(require, module, exports) {\n var basic_tick_formatter_1 = require(96 /* ./basic_tick_formatter */);\n exports.BasicTickFormatter = basic_tick_formatter_1.BasicTickFormatter;\n var categorical_tick_formatter_1 = require(97 /* ./categorical_tick_formatter */);\n exports.CategoricalTickFormatter = categorical_tick_formatter_1.CategoricalTickFormatter;\n var datetime_tick_formatter_1 = require(98 /* ./datetime_tick_formatter */);\n exports.DatetimeTickFormatter = datetime_tick_formatter_1.DatetimeTickFormatter;\n var func_tick_formatter_1 = require(99 /* ./func_tick_formatter */);\n exports.FuncTickFormatter = func_tick_formatter_1.FuncTickFormatter;\n var log_tick_formatter_1 = require(101 /* ./log_tick_formatter */);\n exports.LogTickFormatter = log_tick_formatter_1.LogTickFormatter;\n var mercator_tick_formatter_1 = require(102 /* ./mercator_tick_formatter */);\n exports.MercatorTickFormatter = mercator_tick_formatter_1.MercatorTickFormatter;\n var numeral_tick_formatter_1 = require(103 /* ./numeral_tick_formatter */);\n exports.NumeralTickFormatter = numeral_tick_formatter_1.NumeralTickFormatter;\n var printf_tick_formatter_1 = require(104 /* ./printf_tick_formatter */);\n exports.PrintfTickFormatter = printf_tick_formatter_1.PrintfTickFormatter;\n var tick_formatter_1 = require(105 /* ./tick_formatter */);\n exports.TickFormatter = tick_formatter_1.TickFormatter; \n}","/*models/formatters/log_tick_formatter*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var tick_formatter_1 = require(105 /* ./tick_formatter */);\n var basic_tick_formatter_1 = require(96 /* ./basic_tick_formatter */);\n var logging_1 = require(14 /* core/logging */);\n var p = require(15 /* core/properties */);\n var LogTickFormatter = function (_super) {\n tslib_1.__extends(LogTickFormatter, _super);\n function LogTickFormatter(attrs) {\n return _super.call(this, attrs) || this;\n }\n LogTickFormatter.initClass = function () {\n this.prototype.type = 'LogTickFormatter';\n this.define({\n ticker: [\n p.Instance,\n null\n ]\n });\n };\n LogTickFormatter.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n this.basic_formatter = new basic_tick_formatter_1.BasicTickFormatter();\n if (this.ticker == null)\n logging_1.logger.warn('LogTickFormatter not configured with a ticker, using default base of 10 (labels will be incorrect if ticker base is not 10)');\n };\n LogTickFormatter.prototype.doFormat = function (ticks, axis) {\n if (ticks.length == 0)\n return [];\n var base = this.ticker != null ? this.ticker.base : 10;\n var small_interval = false;\n var labels = new Array(ticks.length);\n for (var i = 0, end = ticks.length; i < end; i++) {\n labels[i] = base + '^' + Math.round(Math.log(ticks[i]) / Math.log(base));\n if (i > 0 && labels[i] == labels[i - 1]) {\n small_interval = true;\n break;\n }\n }\n if (small_interval)\n return this.basic_formatter.doFormat(ticks, axis);\n else\n return labels;\n };\n return LogTickFormatter;\n }(tick_formatter_1.TickFormatter);\n exports.LogTickFormatter = LogTickFormatter;\n LogTickFormatter.initClass(); \n}","/*models/formatters/mercator_tick_formatter*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var basic_tick_formatter_1 = require(96 /* ./basic_tick_formatter */);\n var p = require(15 /* core/properties */);\n var projections_1 = require(33 /* core/util/projections */);\n var MercatorTickFormatter = function (_super) {\n tslib_1.__extends(MercatorTickFormatter, _super);\n function MercatorTickFormatter(attrs) {\n return _super.call(this, attrs) || this;\n }\n MercatorTickFormatter.initClass = function () {\n this.prototype.type = 'MercatorTickFormatter';\n this.define({ dimension: [p.LatLon] });\n };\n MercatorTickFormatter.prototype.doFormat = function (ticks, axis) {\n if (this.dimension == null)\n throw new Error('MercatorTickFormatter.dimension not configured');\n if (ticks.length == 0)\n return [];\n var n = ticks.length;\n var proj_ticks = new Array(n);\n if (this.dimension == 'lon') {\n for (var i = 0; i < n; i++) {\n var lon = projections_1.wgs84_mercator.inverse([\n ticks[i],\n axis.loc\n ])[0];\n proj_ticks[i] = lon;\n }\n } else {\n for (var i = 0; i < n; i++) {\n var _a = projections_1.wgs84_mercator.inverse([\n axis.loc,\n ticks[i]\n ]), lat = _a[1];\n proj_ticks[i] = lat;\n }\n }\n return _super.prototype.doFormat.call(this, proj_ticks, axis);\n };\n return MercatorTickFormatter;\n }(basic_tick_formatter_1.BasicTickFormatter);\n exports.MercatorTickFormatter = MercatorTickFormatter;\n MercatorTickFormatter.initClass(); \n}","/*models/formatters/numeral_tick_formatter*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var Numbro = require(350 /* numbro */);\n var tick_formatter_1 = require(105 /* ./tick_formatter */);\n var p = require(15 /* core/properties */);\n var NumeralTickFormatter = function (_super) {\n tslib_1.__extends(NumeralTickFormatter, _super);\n function NumeralTickFormatter(attrs) {\n return _super.call(this, attrs) || this;\n }\n NumeralTickFormatter.initClass = function () {\n this.prototype.type = 'NumeralTickFormatter';\n this.define({\n // TODO (bev) all of these could be tightened up\n format: [\n p.String,\n '0,0'\n ],\n language: [\n p.String,\n 'en'\n ],\n rounding: [\n p.String,\n 'round'\n ]\n });\n };\n Object.defineProperty(NumeralTickFormatter.prototype, '_rounding_fn', {\n get: function () {\n switch (this.rounding) {\n case 'round':\n case 'nearest':\n return Math.round;\n case 'floor':\n case 'rounddown':\n return Math.floor;\n case 'ceil':\n case 'roundup':\n return Math.ceil;\n }\n },\n enumerable: true,\n configurable: true\n });\n NumeralTickFormatter.prototype.doFormat = function (ticks, _axis) {\n var _a = this, format = _a.format, language = _a.language, _rounding_fn = _a._rounding_fn;\n return ticks.map(function (tick) {\n return Numbro.format(tick, format, language, _rounding_fn);\n });\n };\n return NumeralTickFormatter;\n }(tick_formatter_1.TickFormatter);\n exports.NumeralTickFormatter = NumeralTickFormatter;\n NumeralTickFormatter.initClass(); \n}","/*models/formatters/printf_tick_formatter*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var sprintf_js_1 = require(378 /* sprintf-js */);\n var tick_formatter_1 = require(105 /* ./tick_formatter */);\n var p = require(15 /* core/properties */);\n var PrintfTickFormatter = function (_super) {\n tslib_1.__extends(PrintfTickFormatter, _super);\n function PrintfTickFormatter(attrs) {\n return _super.call(this, attrs) || this;\n }\n PrintfTickFormatter.initClass = function () {\n this.prototype.type = 'PrintfTickFormatter';\n this.define({\n format: [\n p.String,\n '%s'\n ]\n });\n };\n PrintfTickFormatter.prototype.doFormat = function (ticks, _axis) {\n var _this = this;\n return ticks.map(function (tick) {\n return sprintf_js_1.sprintf(_this.format, tick);\n });\n };\n return PrintfTickFormatter;\n }(tick_formatter_1.TickFormatter);\n exports.PrintfTickFormatter = PrintfTickFormatter;\n PrintfTickFormatter.initClass(); \n}","/*models/formatters/tick_formatter*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var model_1 = require(53 /* ../../model */);\n var TickFormatter = function (_super) {\n tslib_1.__extends(TickFormatter, _super);\n function TickFormatter(attrs) {\n return _super.call(this, attrs) || this;\n }\n TickFormatter.initClass = function () {\n this.prototype.type = 'TickFormatter';\n };\n return TickFormatter;\n }(model_1.Model);\n exports.TickFormatter = TickFormatter;\n TickFormatter.initClass(); \n}","/*models/glyphs/annular_wedge*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var xy_glyph_1 = require(135 /* ./xy_glyph */);\n var utils_1 = require(132 /* ./utils */);\n var hittest = require(9 /* core/hittest */);\n var p = require(15 /* core/properties */);\n var math_1 = require(31 /* core/util/math */);\n var AnnularWedgeView = function (_super) {\n tslib_1.__extends(AnnularWedgeView, _super);\n function AnnularWedgeView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n AnnularWedgeView.prototype._map_data = function () {\n if (this.model.properties.inner_radius.units == 'data')\n this.sinner_radius = this.sdist(this.renderer.xscale, this._x, this._inner_radius);\n else\n this.sinner_radius = this._inner_radius;\n if (this.model.properties.outer_radius.units == 'data')\n this.souter_radius = this.sdist(this.renderer.xscale, this._x, this._outer_radius);\n else\n this.souter_radius = this._outer_radius;\n this._angle = new Float32Array(this._start_angle.length);\n for (var i = 0, end = this._start_angle.length; i < end; i++) {\n this._angle[i] = this._end_angle[i] - this._start_angle[i];\n }\n };\n AnnularWedgeView.prototype._render = function (ctx, indices, _a) {\n var sx = _a.sx, sy = _a.sy, _start_angle = _a._start_angle, _angle = _a._angle, sinner_radius = _a.sinner_radius, souter_radius = _a.souter_radius;\n var direction = this.model.properties.direction.value();\n for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {\n var i = indices_1[_i];\n if (isNaN(sx[i] + sy[i] + sinner_radius[i] + souter_radius[i] + _start_angle[i] + _angle[i]))\n continue;\n ctx.translate(sx[i], sy[i]);\n ctx.rotate(_start_angle[i]);\n ctx.moveTo(souter_radius[i], 0);\n ctx.beginPath();\n ctx.arc(0, 0, souter_radius[i], 0, _angle[i], direction);\n ctx.rotate(_angle[i]);\n ctx.lineTo(sinner_radius[i], 0);\n ctx.arc(0, 0, sinner_radius[i], 0, -_angle[i], !direction);\n ctx.closePath();\n ctx.rotate(-_angle[i] - _start_angle[i]);\n ctx.translate(-sx[i], -sy[i]);\n if (this.visuals.fill.doit) {\n this.visuals.fill.set_vectorize(ctx, i);\n ctx.fill();\n }\n if (this.visuals.line.doit) {\n this.visuals.line.set_vectorize(ctx, i);\n ctx.stroke();\n }\n }\n };\n AnnularWedgeView.prototype._hit_point = function (geometry) {\n var sx = geometry.sx, sy = geometry.sy;\n var x = this.renderer.xscale.invert(sx);\n var y = this.renderer.yscale.invert(sy);\n // check radius first\n var x0, y0;\n var x1, y1;\n if (this.model.properties.outer_radius.units == 'data') {\n x0 = x - this.max_outer_radius;\n x1 = x + this.max_outer_radius;\n y0 = y - this.max_outer_radius;\n y1 = y + this.max_outer_radius;\n } else {\n var sx0 = sx - this.max_outer_radius;\n var sx1 = sx + this.max_outer_radius;\n _a = this.renderer.xscale.r_invert(sx0, sx1), x0 = _a[0], x1 = _a[1];\n var sy0 = sy - this.max_outer_radius;\n var sy1 = sy + this.max_outer_radius;\n _b = this.renderer.yscale.r_invert(sy0, sy1), y0 = _b[0], y1 = _b[1];\n }\n var candidates = [];\n var bbox = hittest.validate_bbox_coords([\n x0,\n x1\n ], [\n y0,\n y1\n ]);\n for (var _i = 0, _c = this.index.indices(bbox); _i < _c.length; _i++) {\n var i = _c[_i];\n var or2 = Math.pow(this.souter_radius[i], 2);\n var ir2 = Math.pow(this.sinner_radius[i], 2);\n var _d = this.renderer.xscale.r_compute(x, this._x[i]), sx0 = _d[0], sx1 = _d[1];\n var _e = this.renderer.yscale.r_compute(y, this._y[i]), sy0 = _e[0], sy1 = _e[1];\n var dist = Math.pow(sx0 - sx1, 2) + Math.pow(sy0 - sy1, 2);\n if (dist <= or2 && dist >= ir2)\n candidates.push([\n i,\n dist\n ]);\n }\n var direction = this.model.properties.direction.value();\n var hits = [];\n for (var _f = 0, candidates_1 = candidates; _f < candidates_1.length; _f++) {\n var _g = candidates_1[_f], i = _g[0], dist = _g[1];\n // NOTE: minus the angle because JS uses non-mathy convention for angles\n var angle = Math.atan2(sy - this.sy[i], sx - this.sx[i]);\n if (math_1.angle_between(-angle, -this._start_angle[i], -this._end_angle[i], direction)) {\n hits.push([\n i,\n dist\n ]);\n }\n }\n return hittest.create_hit_test_result_from_hits(hits);\n var _a, _b;\n };\n AnnularWedgeView.prototype.draw_legend_for_index = function (ctx, bbox, index) {\n utils_1.generic_area_legend(this.visuals, ctx, bbox, index);\n };\n AnnularWedgeView.prototype._scenterxy = function (i) {\n var r = (this.sinner_radius[i] + this.souter_radius[i]) / 2;\n var a = (this._start_angle[i] + this._end_angle[i]) / 2;\n return {\n x: this.sx[i] + r * Math.cos(a),\n y: this.sy[i] + r * Math.sin(a)\n };\n };\n AnnularWedgeView.prototype.scenterx = function (i) {\n return this._scenterxy(i).x;\n };\n AnnularWedgeView.prototype.scentery = function (i) {\n return this._scenterxy(i).y;\n };\n return AnnularWedgeView;\n }(xy_glyph_1.XYGlyphView);\n exports.AnnularWedgeView = AnnularWedgeView;\n var AnnularWedge = function (_super) {\n tslib_1.__extends(AnnularWedge, _super);\n function AnnularWedge(attrs) {\n return _super.call(this, attrs) || this;\n }\n AnnularWedge.initClass = function () {\n this.prototype.type = 'AnnularWedge';\n this.prototype.default_view = AnnularWedgeView;\n this.mixins([\n 'line',\n 'fill'\n ]);\n this.define({\n direction: [\n p.Direction,\n 'anticlock'\n ],\n inner_radius: [p.DistanceSpec],\n outer_radius: [p.DistanceSpec],\n start_angle: [p.AngleSpec],\n end_angle: [p.AngleSpec]\n });\n };\n return AnnularWedge;\n }(xy_glyph_1.XYGlyph);\n exports.AnnularWedge = AnnularWedge;\n AnnularWedge.initClass(); \n}","/*models/glyphs/annulus*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var xy_glyph_1 = require(135 /* ./xy_glyph */);\n var hittest = require(9 /* core/hittest */);\n var p = require(15 /* core/properties */);\n var compat_1 = require(28 /* core/util/compat */);\n var AnnulusView = function (_super) {\n tslib_1.__extends(AnnulusView, _super);\n function AnnulusView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n AnnulusView.prototype._map_data = function () {\n if (this.model.properties.inner_radius.units == 'data')\n this.sinner_radius = this.sdist(this.renderer.xscale, this._x, this._inner_radius);\n else\n this.sinner_radius = this._inner_radius;\n if (this.model.properties.outer_radius.units == 'data')\n this.souter_radius = this.sdist(this.renderer.xscale, this._x, this._outer_radius);\n else\n this.souter_radius = this._outer_radius;\n };\n AnnulusView.prototype._render = function (ctx, indices, _a) {\n var sx = _a.sx, sy = _a.sy, sinner_radius = _a.sinner_radius, souter_radius = _a.souter_radius;\n for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {\n var i = indices_1[_i];\n if (isNaN(sx[i] + sy[i] + sinner_radius[i] + souter_radius[i]))\n continue;\n // Because this visual has a whole in it, it proved \"challenging\"\n // for some browsers to render if drawn in one go --- i.e. it did not\n // work on IE. If we render in two parts (upper and lower part),\n // it is unambiguous what part should be filled. The line is\n // better drawn in one go though, otherwise the part where the pieces\n // meet will not be fully closed due to aa.\n if (this.visuals.fill.doit) {\n this.visuals.fill.set_vectorize(ctx, i);\n ctx.beginPath();\n if (compat_1.is_ie) {\n // Draw two halves of the donut. Works on IE, but causes an aa line on Safari.\n for (var _b = 0, _c = [\n false,\n true\n ]; _b < _c.length; _b++) {\n var clockwise = _c[_b];\n ctx.arc(sx[i], sy[i], sinner_radius[i], 0, Math.PI, clockwise);\n ctx.arc(sx[i], sy[i], souter_radius[i], Math.PI, 0, !clockwise);\n }\n } else {\n // Draw donut in one go. Does not work on iE.\n ctx.arc(sx[i], sy[i], sinner_radius[i], 0, 2 * Math.PI, true);\n ctx.arc(sx[i], sy[i], souter_radius[i], 2 * Math.PI, 0, false);\n }\n ctx.fill();\n }\n if (this.visuals.line.doit) {\n this.visuals.line.set_vectorize(ctx, i);\n ctx.beginPath();\n ctx.arc(sx[i], sy[i], sinner_radius[i], 0, 2 * Math.PI);\n ctx.moveTo(sx[i] + souter_radius[i], sy[i]);\n ctx.arc(sx[i], sy[i], souter_radius[i], 0, 2 * Math.PI);\n ctx.stroke();\n }\n }\n };\n AnnulusView.prototype._hit_point = function (geometry) {\n var sx = geometry.sx, sy = geometry.sy;\n var x = this.renderer.xscale.invert(sx);\n var x0 = x - this.max_outer_radius;\n var x1 = x + this.max_outer_radius;\n var y = this.renderer.yscale.invert(sy);\n var y0 = y - this.max_outer_radius;\n var y1 = y + this.max_outer_radius;\n var hits = [];\n var bbox = hittest.validate_bbox_coords([\n x0,\n x1\n ], [\n y0,\n y1\n ]);\n for (var _i = 0, _a = this.index.indices(bbox); _i < _a.length; _i++) {\n var i = _a[_i];\n var or2 = Math.pow(this.souter_radius[i], 2);\n var ir2 = Math.pow(this.sinner_radius[i], 2);\n var _b = this.renderer.xscale.r_compute(x, this._x[i]), sx0 = _b[0], sx1 = _b[1];\n var _c = this.renderer.yscale.r_compute(y, this._y[i]), sy0 = _c[0], sy1 = _c[1];\n var dist = Math.pow(sx0 - sx1, 2) + Math.pow(sy0 - sy1, 2);\n if (dist <= or2 && dist >= ir2)\n hits.push([\n i,\n dist\n ]);\n }\n return hittest.create_hit_test_result_from_hits(hits);\n };\n AnnulusView.prototype.draw_legend_for_index = function (ctx, _a, index) {\n var x0 = _a.x0, y0 = _a.y0, x1 = _a.x1, y1 = _a.y1;\n var len = index + 1;\n var sx = new Array(len);\n sx[index] = (x0 + x1) / 2;\n var sy = new Array(len);\n sy[index] = (y0 + y1) / 2;\n var r = Math.min(Math.abs(x1 - x0), Math.abs(y1 - y0)) * 0.5;\n var sinner_radius = new Array(len);\n sinner_radius[index] = r * 0.4;\n var souter_radius = new Array(len);\n souter_radius[index] = r * 0.8;\n this._render(ctx, [index], {\n sx: sx,\n sy: sy,\n sinner_radius: sinner_radius,\n souter_radius: souter_radius\n }); // XXX\n };\n return AnnulusView;\n }(xy_glyph_1.XYGlyphView);\n exports.AnnulusView = AnnulusView;\n var Annulus = function (_super) {\n tslib_1.__extends(Annulus, _super);\n function Annulus(attrs) {\n return _super.call(this, attrs) || this;\n }\n Annulus.initClass = function () {\n this.prototype.type = 'Annulus';\n this.prototype.default_view = AnnulusView;\n this.mixins([\n 'line',\n 'fill'\n ]);\n this.define({\n inner_radius: [p.DistanceSpec],\n outer_radius: [p.DistanceSpec]\n });\n };\n return Annulus;\n }(xy_glyph_1.XYGlyph);\n exports.Annulus = Annulus;\n Annulus.initClass(); \n}","/*models/glyphs/arc*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var xy_glyph_1 = require(135 /* ./xy_glyph */);\n var utils_1 = require(132 /* ./utils */);\n var p = require(15 /* core/properties */);\n var ArcView = function (_super) {\n tslib_1.__extends(ArcView, _super);\n function ArcView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n ArcView.prototype._map_data = function () {\n if (this.model.properties.radius.units == 'data')\n this.sradius = this.sdist(this.renderer.xscale, this._x, this._radius);\n else\n this.sradius = this._radius;\n };\n ArcView.prototype._render = function (ctx, indices, _a) {\n var sx = _a.sx, sy = _a.sy, sradius = _a.sradius, _start_angle = _a._start_angle, _end_angle = _a._end_angle;\n if (this.visuals.line.doit) {\n var direction = this.model.properties.direction.value();\n for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {\n var i = indices_1[_i];\n if (isNaN(sx[i] + sy[i] + sradius[i] + _start_angle[i] + _end_angle[i]))\n continue;\n ctx.beginPath();\n ctx.arc(sx[i], sy[i], sradius[i], _start_angle[i], _end_angle[i], direction);\n this.visuals.line.set_vectorize(ctx, i);\n ctx.stroke();\n }\n }\n };\n ArcView.prototype.draw_legend_for_index = function (ctx, bbox, index) {\n utils_1.generic_line_legend(this.visuals, ctx, bbox, index);\n };\n return ArcView;\n }(xy_glyph_1.XYGlyphView);\n exports.ArcView = ArcView;\n var Arc = function (_super) {\n tslib_1.__extends(Arc, _super);\n function Arc(attrs) {\n return _super.call(this, attrs) || this;\n }\n Arc.initClass = function () {\n this.prototype.type = 'Arc';\n this.prototype.default_view = ArcView;\n this.mixins(['line']);\n this.define({\n direction: [\n p.Direction,\n 'anticlock'\n ],\n radius: [p.DistanceSpec],\n start_angle: [p.AngleSpec],\n end_angle: [p.AngleSpec]\n });\n };\n return Arc;\n }(xy_glyph_1.XYGlyph);\n exports.Arc = Arc;\n Arc.initClass(); \n}","/*models/glyphs/bezier*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var spatial_1 = require(37 /* core/util/spatial */);\n var glyph_1 = require(113 /* ./glyph */);\n var utils_1 = require(132 /* ./utils */);\n // algorithm adapted from http://stackoverflow.com/a/14429749/3406693\n function _cbb(x0, y0, x1, y1, x2, y2, x3, y3) {\n var tvalues = [];\n var bounds = [\n [],\n []\n ];\n for (var i = 0; i <= 2; i++) {\n var a = void 0, b = void 0, c = void 0;\n if (i === 0) {\n b = 6 * x0 - 12 * x1 + 6 * x2;\n a = -3 * x0 + 9 * x1 - 9 * x2 + 3 * x3;\n c = 3 * x1 - 3 * x0;\n } else {\n b = 6 * y0 - 12 * y1 + 6 * y2;\n a = -3 * y0 + 9 * y1 - 9 * y2 + 3 * y3;\n c = 3 * y1 - 3 * y0;\n }\n if (Math.abs(a) < 1e-12) {\n // Numerical robustness\n if (Math.abs(b) < 1e-12)\n // Numerical robustness\n continue;\n var t = -c / b;\n if (0 < t && t < 1)\n tvalues.push(t);\n continue;\n }\n var b2ac = b * b - 4 * c * a;\n var sqrtb2ac = Math.sqrt(b2ac);\n if (b2ac < 0)\n continue;\n var t1 = (-b + sqrtb2ac) / (2 * a);\n if (0 < t1 && t1 < 1)\n tvalues.push(t1);\n var t2 = (-b - sqrtb2ac) / (2 * a);\n if (0 < t2 && t2 < 1)\n tvalues.push(t2);\n }\n var j = tvalues.length;\n var jlen = j;\n while (j--) {\n var t = tvalues[j];\n var mt = 1 - t;\n var x = mt * mt * mt * x0 + 3 * mt * mt * t * x1 + 3 * mt * t * t * x2 + t * t * t * x3;\n bounds[0][j] = x;\n var y = mt * mt * mt * y0 + 3 * mt * mt * t * y1 + 3 * mt * t * t * y2 + t * t * t * y3;\n bounds[1][j] = y;\n }\n bounds[0][jlen] = x0;\n bounds[1][jlen] = y0;\n bounds[0][jlen + 1] = x3;\n bounds[1][jlen + 1] = y3;\n return [\n Math.min.apply(Math, bounds[0]),\n Math.max.apply(Math, bounds[1]),\n Math.max.apply(Math, bounds[0]),\n Math.min.apply(Math, bounds[1])\n ];\n }\n var BezierView = function (_super) {\n tslib_1.__extends(BezierView, _super);\n function BezierView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n BezierView.prototype._index_data = function () {\n var points = [];\n for (var i = 0, end = this._x0.length; i < end; i++) {\n if (isNaN(this._x0[i] + this._x1[i] + this._y0[i] + this._y1[i] + this._cx0[i] + this._cy0[i] + this._cx1[i] + this._cy1[i]))\n continue;\n var _a = _cbb(this._x0[i], this._y0[i], this._x1[i], this._y1[i], this._cx0[i], this._cy0[i], this._cx1[i], this._cy1[i]), x0 = _a[0], y0 = _a[1], x1 = _a[2], y1 = _a[3];\n points.push({\n minX: x0,\n minY: y0,\n maxX: x1,\n maxY: y1,\n i: i\n });\n }\n return new spatial_1.SpatialIndex(points);\n };\n BezierView.prototype._render = function (ctx, indices, _a) {\n var sx0 = _a.sx0, sy0 = _a.sy0, sx1 = _a.sx1, sy1 = _a.sy1, scx0 = _a.scx0, scy0 = _a.scy0, scx1 = _a.scx1, scy1 = _a.scy1;\n if (this.visuals.line.doit) {\n for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {\n var i = indices_1[_i];\n if (isNaN(sx0[i] + sy0[i] + sx1[i] + sy1[i] + scx0[i] + scy0[i] + scx1[i] + scy1[i]))\n continue;\n ctx.beginPath();\n ctx.moveTo(sx0[i], sy0[i]);\n ctx.bezierCurveTo(scx0[i], scy0[i], scx1[i], scy1[i], sx1[i], sy1[i]);\n this.visuals.line.set_vectorize(ctx, i);\n ctx.stroke();\n }\n }\n };\n BezierView.prototype.draw_legend_for_index = function (ctx, bbox, index) {\n utils_1.generic_line_legend(this.visuals, ctx, bbox, index);\n };\n BezierView.prototype.scenterx = function () {\n throw new Error('not implemented');\n };\n BezierView.prototype.scentery = function () {\n throw new Error('not implemented');\n };\n return BezierView;\n }(glyph_1.GlyphView);\n exports.BezierView = BezierView;\n var Bezier = function (_super) {\n tslib_1.__extends(Bezier, _super);\n function Bezier(attrs) {\n return _super.call(this, attrs) || this;\n }\n Bezier.initClass = function () {\n this.prototype.type = 'Bezier';\n this.prototype.default_view = BezierView;\n this.coords([\n [\n 'x0',\n 'y0'\n ],\n [\n 'x1',\n 'y1'\n ],\n [\n 'cx0',\n 'cy0'\n ],\n [\n 'cx1',\n 'cy1'\n ]\n ]);\n this.mixins(['line']);\n };\n return Bezier;\n }(glyph_1.Glyph);\n exports.Bezier = Bezier;\n Bezier.initClass(); \n}","/*models/glyphs/box*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var spatial_1 = require(37 /* core/util/spatial */);\n var glyph_1 = require(113 /* ./glyph */);\n var utils_1 = require(132 /* ./utils */);\n var hittest = require(9 /* core/hittest */);\n var BoxView = function (_super) {\n tslib_1.__extends(BoxView, _super);\n function BoxView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n BoxView.prototype._index_box = function (len) {\n var points = [];\n for (var i = 0; i < len; i++) {\n var _a = this._lrtb(i), l = _a[0], r = _a[1], t = _a[2], b = _a[3];\n if (isNaN(l + r + t + b) || !isFinite(l + r + t + b))\n continue;\n points.push({\n minX: l,\n minY: b,\n maxX: r,\n maxY: t,\n i: i\n });\n }\n return new spatial_1.SpatialIndex(points);\n };\n BoxView.prototype._render = function (ctx, indices, _a) {\n var sleft = _a.sleft, sright = _a.sright, stop = _a.stop, sbottom = _a.sbottom;\n for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {\n var i = indices_1[_i];\n if (isNaN(sleft[i] + stop[i] + sright[i] + sbottom[i]))\n continue;\n if (this.visuals.fill.doit) {\n this.visuals.fill.set_vectorize(ctx, i);\n ctx.fillRect(sleft[i], stop[i], sright[i] - sleft[i], sbottom[i] - stop[i]);\n }\n if (this.visuals.line.doit) {\n ctx.beginPath();\n ctx.rect(sleft[i], stop[i], sright[i] - sleft[i], sbottom[i] - stop[i]);\n this.visuals.line.set_vectorize(ctx, i);\n ctx.stroke();\n }\n }\n };\n BoxView.prototype._hit_rect = function (geometry) {\n return this._hit_rect_against_index(geometry);\n };\n BoxView.prototype._hit_point = function (geometry) {\n var sx = geometry.sx, sy = geometry.sy;\n var x = this.renderer.xscale.invert(sx);\n var y = this.renderer.yscale.invert(sy);\n var hits = this.index.indices({\n minX: x,\n minY: y,\n maxX: x,\n maxY: y\n });\n var result = hittest.create_empty_hit_test_result();\n result.indices = hits;\n return result;\n };\n BoxView.prototype._hit_span = function (geometry) {\n var sx = geometry.sx, sy = geometry.sy;\n var hits;\n if (geometry.direction == 'v') {\n var y = this.renderer.yscale.invert(sy);\n var hr = this.renderer.plot_view.frame.bbox.h_range;\n var _a = this.renderer.xscale.r_invert(hr.start, hr.end), minX = _a[0], maxX = _a[1];\n hits = this.index.indices({\n minX: minX,\n minY: y,\n maxX: maxX,\n maxY: y\n });\n } else {\n var x = this.renderer.xscale.invert(sx);\n var vr = this.renderer.plot_view.frame.bbox.v_range;\n var _b = this.renderer.yscale.r_invert(vr.start, vr.end), minY = _b[0], maxY = _b[1];\n hits = this.index.indices({\n minX: x,\n minY: minY,\n maxX: x,\n maxY: maxY\n });\n }\n var result = hittest.create_empty_hit_test_result();\n result.indices = hits;\n return result;\n };\n BoxView.prototype.draw_legend_for_index = function (ctx, bbox, index) {\n utils_1.generic_area_legend(this.visuals, ctx, bbox, index);\n };\n return BoxView;\n }(glyph_1.GlyphView);\n exports.BoxView = BoxView;\n var Box = function (_super) {\n tslib_1.__extends(Box, _super);\n function Box(attrs) {\n return _super.call(this, attrs) || this;\n }\n Box.initClass = function () {\n this.prototype.type = 'Box';\n this.mixins([\n 'line',\n 'fill'\n ]);\n };\n return Box;\n }(glyph_1.Glyph);\n exports.Box = Box;\n Box.initClass(); \n}","/*models/glyphs/circle*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var xy_glyph_1 = require(135 /* ./xy_glyph */);\n var hittest = require(9 /* core/hittest */);\n var p = require(15 /* core/properties */);\n var array_1 = require(21 /* core/util/array */);\n var arrayable_1 = require(22 /* core/util/arrayable */);\n var CircleView = function (_super) {\n tslib_1.__extends(CircleView, _super);\n function CircleView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n CircleView.prototype._map_data = function () {\n // XXX: Order is important here: size is always present (at least\n // a default), but radius is only present if a user specifies it.\n if (this._radius != null) {\n if (this.model.properties.radius.spec.units == 'data') {\n var rd = this.model.properties.radius_dimension.spec.value;\n switch (rd) {\n case 'x': {\n this.sradius = this.sdist(this.renderer.xscale, this._x, this._radius);\n break;\n }\n case 'y': {\n this.sradius = this.sdist(this.renderer.yscale, this._y, this._radius);\n break;\n }\n }\n } else {\n this.sradius = this._radius;\n this.max_size = 2 * this.max_radius;\n }\n } else\n this.sradius = arrayable_1.map(this._size, function (s) {\n return s / 2;\n });\n };\n CircleView.prototype._mask_data = function () {\n var _a = this.renderer.plot_view.frame.bbox.ranges, hr = _a[0], vr = _a[1];\n var x0, y0;\n var x1, y1;\n if (this._radius != null && this.model.properties.radius.units == 'data') {\n var sx0 = hr.start;\n var sx1 = hr.end;\n _b = this.renderer.xscale.r_invert(sx0, sx1), x0 = _b[0], x1 = _b[1];\n x0 -= this.max_radius;\n x1 += this.max_radius;\n var sy0 = vr.start;\n var sy1 = vr.end;\n _c = this.renderer.yscale.r_invert(sy0, sy1), y0 = _c[0], y1 = _c[1];\n y0 -= this.max_radius;\n y1 += this.max_radius;\n } else {\n var sx0 = hr.start - this.max_size;\n var sx1 = hr.end + this.max_size;\n _d = this.renderer.xscale.r_invert(sx0, sx1), x0 = _d[0], x1 = _d[1];\n var sy0 = vr.start - this.max_size;\n var sy1 = vr.end + this.max_size;\n _e = this.renderer.yscale.r_invert(sy0, sy1), y0 = _e[0], y1 = _e[1];\n }\n var bbox = hittest.validate_bbox_coords([\n x0,\n x1\n ], [\n y0,\n y1\n ]);\n return this.index.indices(bbox);\n var _b, _c, _d, _e;\n };\n CircleView.prototype._render = function (ctx, indices, _a) {\n var sx = _a.sx, sy = _a.sy, sradius = _a.sradius;\n for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {\n var i = indices_1[_i];\n if (isNaN(sx[i] + sy[i] + sradius[i]))\n continue;\n ctx.beginPath();\n ctx.arc(sx[i], sy[i], sradius[i], 0, 2 * Math.PI, false);\n if (this.visuals.fill.doit) {\n this.visuals.fill.set_vectorize(ctx, i);\n ctx.fill();\n }\n if (this.visuals.line.doit) {\n this.visuals.line.set_vectorize(ctx, i);\n ctx.stroke();\n }\n }\n };\n CircleView.prototype._hit_point = function (geometry) {\n var dist, r2, sx0, sx1, sy0, sy1, x0, x1, y0, y1;\n var sx = geometry.sx, sy = geometry.sy;\n var x = this.renderer.xscale.invert(sx);\n var y = this.renderer.yscale.invert(sy);\n // check radius first\n if (this._radius != null && this.model.properties.radius.units == 'data') {\n x0 = x - this.max_radius;\n x1 = x + this.max_radius;\n y0 = y - this.max_radius;\n y1 = y + this.max_radius;\n } else {\n sx0 = sx - this.max_size;\n sx1 = sx + this.max_size;\n _a = this.renderer.xscale.r_invert(sx0, sx1), x0 = _a[0], x1 = _a[1];\n _b = [\n Math.min(x0, x1),\n Math.max(x0, x1)\n ], x0 = _b[0], x1 = _b[1];\n sy0 = sy - this.max_size;\n sy1 = sy + this.max_size;\n _c = this.renderer.yscale.r_invert(sy0, sy1), y0 = _c[0], y1 = _c[1];\n _d = [\n Math.min(y0, y1),\n Math.max(y0, y1)\n ], y0 = _d[0], y1 = _d[1];\n }\n var bbox = hittest.validate_bbox_coords([\n x0,\n x1\n ], [\n y0,\n y1\n ]);\n var candidates = this.index.indices(bbox);\n var hits = [];\n if (this._radius != null && this.model.properties.radius.units == 'data') {\n for (var _i = 0, candidates_1 = candidates; _i < candidates_1.length; _i++) {\n var i = candidates_1[_i];\n r2 = Math.pow(this.sradius[i], 2);\n _e = this.renderer.xscale.r_compute(x, this._x[i]), sx0 = _e[0], sx1 = _e[1];\n _f = this.renderer.yscale.r_compute(y, this._y[i]), sy0 = _f[0], sy1 = _f[1];\n dist = Math.pow(sx0 - sx1, 2) + Math.pow(sy0 - sy1, 2);\n if (dist <= r2) {\n hits.push([\n i,\n dist\n ]);\n }\n }\n } else {\n for (var _g = 0, candidates_2 = candidates; _g < candidates_2.length; _g++) {\n var i = candidates_2[_g];\n r2 = Math.pow(this.sradius[i], 2);\n dist = Math.pow(this.sx[i] - sx, 2) + Math.pow(this.sy[i] - sy, 2);\n if (dist <= r2) {\n hits.push([\n i,\n dist\n ]);\n }\n }\n }\n return hittest.create_hit_test_result_from_hits(hits);\n var _a, _b, _c, _d, _e, _f;\n };\n CircleView.prototype._hit_span = function (geometry) {\n var ms, x0, x1, y0, y1;\n var sx = geometry.sx, sy = geometry.sy;\n var _a = this.bounds(), minX = _a.minX, minY = _a.minY, maxX = _a.maxX, maxY = _a.maxY;\n var result = hittest.create_empty_hit_test_result();\n if (geometry.direction == 'h') {\n // use circle bounds instead of current pointer y coordinates\n var sx0 = void 0, sx1 = void 0;\n y0 = minY;\n y1 = maxY;\n if (this._radius != null && this.model.properties.radius.units == 'data') {\n sx0 = sx - this.max_radius;\n sx1 = sx + this.max_radius;\n _b = this.renderer.xscale.r_invert(sx0, sx1), x0 = _b[0], x1 = _b[1];\n } else {\n ms = this.max_size / 2;\n sx0 = sx - ms;\n sx1 = sx + ms;\n _c = this.renderer.xscale.r_invert(sx0, sx1), x0 = _c[0], x1 = _c[1];\n }\n } else {\n // use circle bounds instead of current pointer x coordinates\n var sy0 = void 0, sy1 = void 0;\n x0 = minX;\n x1 = maxX;\n if (this._radius != null && this.model.properties.radius.units == 'data') {\n sy0 = sy - this.max_radius;\n sy1 = sy + this.max_radius;\n _d = this.renderer.yscale.r_invert(sy0, sy1), y0 = _d[0], y1 = _d[1];\n } else {\n ms = this.max_size / 2;\n sy0 = sy - ms;\n sy1 = sy + ms;\n _e = this.renderer.yscale.r_invert(sy0, sy1), y0 = _e[0], y1 = _e[1];\n }\n }\n var bbox = hittest.validate_bbox_coords([\n x0,\n x1\n ], [\n y0,\n y1\n ]);\n var hits = this.index.indices(bbox);\n result.indices = hits;\n return result;\n var _b, _c, _d, _e;\n };\n CircleView.prototype._hit_rect = function (geometry) {\n var sx0 = geometry.sx0, sx1 = geometry.sx1, sy0 = geometry.sy0, sy1 = geometry.sy1;\n var _a = this.renderer.xscale.r_invert(sx0, sx1), x0 = _a[0], x1 = _a[1];\n var _b = this.renderer.yscale.r_invert(sy0, sy1), y0 = _b[0], y1 = _b[1];\n var bbox = hittest.validate_bbox_coords([\n x0,\n x1\n ], [\n y0,\n y1\n ]);\n var result = hittest.create_empty_hit_test_result();\n result.indices = this.index.indices(bbox);\n return result;\n };\n CircleView.prototype._hit_poly = function (geometry) {\n var sx = geometry.sx, sy = geometry.sy;\n // TODO (bev) use spatial index to pare candidate list\n var candidates = array_1.range(0, this.sx.length);\n var hits = [];\n for (var i = 0, end = candidates.length; i < end; i++) {\n var idx = candidates[i];\n if (hittest.point_in_poly(this.sx[i], this.sy[i], sx, sy)) {\n hits.push(idx);\n }\n }\n var result = hittest.create_empty_hit_test_result();\n result.indices = hits;\n return result;\n };\n // circle does not inherit from marker (since it also accepts radius) so we\n // must supply a draw_legend for it here\n CircleView.prototype.draw_legend_for_index = function (ctx, _a, index) {\n var x0 = _a.x0, y0 = _a.y0, x1 = _a.x1, y1 = _a.y1;\n // using objects like this seems a little wonky, since the keys are coerced to\n // stings, but it works\n var len = index + 1;\n var sx = new Array(len);\n sx[index] = (x0 + x1) / 2;\n var sy = new Array(len);\n sy[index] = (y0 + y1) / 2;\n var sradius = new Array(len);\n sradius[index] = Math.min(Math.abs(x1 - x0), Math.abs(y1 - y0)) * 0.2;\n this._render(ctx, [index], {\n sx: sx,\n sy: sy,\n sradius: sradius\n }); // XXX\n };\n return CircleView;\n }(xy_glyph_1.XYGlyphView);\n exports.CircleView = CircleView;\n var Circle = function (_super) {\n tslib_1.__extends(Circle, _super);\n function Circle(attrs) {\n return _super.call(this, attrs) || this;\n }\n Circle.initClass = function () {\n this.prototype.type = 'Circle';\n this.prototype.default_view = CircleView;\n this.mixins([\n 'line',\n 'fill'\n ]);\n this.define({\n angle: [\n p.AngleSpec,\n 0\n ],\n size: [\n p.DistanceSpec,\n {\n units: 'screen',\n value: 4\n }\n ],\n radius: [\n p.DistanceSpec,\n null\n ],\n radius_dimension: [\n p.String,\n 'x'\n ]\n });\n };\n Circle.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n this.properties.radius.optional = true;\n };\n return Circle;\n }(xy_glyph_1.XYGlyph);\n exports.Circle = Circle;\n Circle.initClass(); \n}","/*models/glyphs/ellipse*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var xy_glyph_1 = require(135 /* ./xy_glyph */);\n var p = require(15 /* core/properties */);\n var EllipseView = function (_super) {\n tslib_1.__extends(EllipseView, _super);\n function EllipseView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n EllipseView.prototype._set_data = function () {\n this.max_w2 = 0;\n if (this.model.properties.width.units == 'data')\n this.max_w2 = this.max_width / 2;\n this.max_h2 = 0;\n if (this.model.properties.height.units == 'data')\n this.max_h2 = this.max_height / 2;\n };\n EllipseView.prototype._map_data = function () {\n if (this.model.properties.width.units == 'data')\n this.sw = this.sdist(this.renderer.xscale, this._x, this._width, 'center');\n else\n this.sw = this._width;\n if (this.model.properties.height.units == 'data')\n this.sh = this.sdist(this.renderer.yscale, this._y, this._height, 'center');\n else\n this.sh = this._height;\n };\n EllipseView.prototype._render = function (ctx, indices, _a) {\n var sx = _a.sx, sy = _a.sy, sw = _a.sw, sh = _a.sh;\n for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {\n var i = indices_1[_i];\n if (isNaN(sx[i] + sy[i] + sw[i] + sh[i] + this._angle[i]))\n continue;\n ctx.beginPath();\n ctx.ellipse(sx[i], sy[i], sw[i] / 2, sh[i] / 2, this._angle[i], 0, 2 * Math.PI);\n if (this.visuals.fill.doit) {\n this.visuals.fill.set_vectorize(ctx, i);\n ctx.fill();\n }\n if (this.visuals.line.doit) {\n this.visuals.line.set_vectorize(ctx, i);\n ctx.stroke();\n }\n }\n };\n EllipseView.prototype.draw_legend_for_index = function (ctx, _a, index) {\n var x0 = _a.x0, y0 = _a.y0, x1 = _a.x1, y1 = _a.y1;\n var len = index + 1;\n var sx = new Array(len);\n sx[index] = (x0 + x1) / 2;\n var sy = new Array(len);\n sy[index] = (y0 + y1) / 2;\n var scale = this.sw[index] / this.sh[index];\n var d = Math.min(Math.abs(x1 - x0), Math.abs(y1 - y0)) * 0.8;\n var sw = new Array(len);\n var sh = new Array(len);\n if (scale > 1) {\n sw[index] = d;\n sh[index] = d / scale;\n } else {\n sw[index] = d * scale;\n sh[index] = d;\n }\n this._render(ctx, [index], {\n sx: sx,\n sy: sy,\n sw: sw,\n sh: sh\n }); // XXX\n };\n EllipseView.prototype._bounds = function (_a) {\n var minX = _a.minX, maxX = _a.maxX, minY = _a.minY, maxY = _a.maxY;\n return {\n minX: minX - this.max_w2,\n maxX: maxX + this.max_w2,\n minY: minY - this.max_h2,\n maxY: maxY + this.max_h2\n };\n };\n return EllipseView;\n }(xy_glyph_1.XYGlyphView);\n exports.EllipseView = EllipseView;\n var Ellipse = function (_super) {\n tslib_1.__extends(Ellipse, _super);\n function Ellipse(attrs) {\n return _super.call(this, attrs) || this;\n }\n Ellipse.initClass = function () {\n this.prototype.type = 'Ellipse';\n this.prototype.default_view = EllipseView;\n this.mixins([\n 'line',\n 'fill'\n ]);\n this.define({\n angle: [\n p.AngleSpec,\n 0\n ],\n width: [p.DistanceSpec],\n height: [p.DistanceSpec]\n });\n };\n return Ellipse;\n }(xy_glyph_1.XYGlyph);\n exports.Ellipse = Ellipse;\n Ellipse.initClass(); \n}","/*models/glyphs/glyph*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var hittest = require(9 /* core/hittest */);\n var p = require(15 /* core/properties */);\n var bbox = require(24 /* core/util/bbox */);\n var proj = require(33 /* core/util/projections */);\n var visuals = require(49 /* core/visuals */);\n var view_1 = require(48 /* core/view */);\n var model_1 = require(53 /* ../../model */);\n var logging_1 = require(14 /* core/logging */);\n var arrayable_1 = require(22 /* core/util/arrayable */);\n var object_1 = require(32 /* core/util/object */);\n var types_1 = require(44 /* core/util/types */);\n var line_1 = require(120 /* ./line */);\n var factor_range_1 = require(165 /* ../ranges/factor_range */);\n var GlyphView = function (_super) {\n tslib_1.__extends(GlyphView, _super);\n function GlyphView() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this._nohit_warned = {};\n return _this;\n }\n GlyphView.prototype.initialize = function (options) {\n _super.prototype.initialize.call(this, options);\n this._nohit_warned = {};\n this.renderer = options.renderer;\n this.visuals = new visuals.Visuals(this.model);\n // Init gl (this should really be done anytime renderer is set,\n // and not done if it isn't ever set, but for now it only\n // matters in the unit tests because we build a view without a\n // renderer there)\n var gl = this.renderer.plot_view.gl;\n if (gl != null) {\n var webgl_module = null;\n try {\n webgl_module = require(441 /* ./webgl/index */);\n } catch (e) {\n if (e.code === 'MODULE_NOT_FOUND') {\n logging_1.logger.warn('WebGL was requested and is supported, but bokeh-gl(.min).js is not available, falling back to 2D rendering.');\n } else\n throw e;\n }\n if (webgl_module != null) {\n var Cls = webgl_module[this.model.type + 'GLGlyph'];\n if (Cls != null)\n this.glglyph = new Cls(gl.ctx, this);\n }\n }\n };\n GlyphView.prototype.set_visuals = function (source) {\n this.visuals.warm_cache(source);\n if (this.glglyph != null)\n this.glglyph.set_visuals_changed();\n };\n GlyphView.prototype.render = function (ctx, indices, data) {\n ctx.beginPath();\n if (this.glglyph != null) {\n if (this.glglyph.render(ctx, indices, data))\n return;\n }\n this._render(ctx, indices, data);\n };\n GlyphView.prototype.has_finished = function () {\n return true;\n };\n GlyphView.prototype.notify_finished = function () {\n this.renderer.notify_finished();\n };\n GlyphView.prototype._bounds = function (bounds) {\n return bounds;\n };\n GlyphView.prototype.bounds = function () {\n return this._bounds(this.index.bbox);\n };\n GlyphView.prototype.log_bounds = function () {\n var bb = bbox.empty();\n var positive_x_bbs = this.index.search(bbox.positive_x());\n for (var _i = 0, positive_x_bbs_1 = positive_x_bbs; _i < positive_x_bbs_1.length; _i++) {\n var x = positive_x_bbs_1[_i];\n if (x.minX < bb.minX)\n bb.minX = x.minX;\n if (x.maxX > bb.maxX)\n bb.maxX = x.maxX;\n }\n var positive_y_bbs = this.index.search(bbox.positive_y());\n for (var _a = 0, positive_y_bbs_1 = positive_y_bbs; _a < positive_y_bbs_1.length; _a++) {\n var y = positive_y_bbs_1[_a];\n if (y.minY < bb.minY)\n bb.minY = y.minY;\n if (y.maxY > bb.maxY)\n bb.maxY = y.maxY;\n }\n return this._bounds(bb);\n };\n GlyphView.prototype.get_anchor_point = function (anchor, i, _a) {\n var sx = _a[0], sy = _a[1];\n switch (anchor) {\n case 'center':\n return {\n x: this.scenterx(i, sx, sy),\n y: this.scentery(i, sx, sy)\n };\n default:\n return null;\n }\n };\n GlyphView.prototype.sdist = function (scale, pts, spans, pts_location, dilate) {\n if (pts_location === void 0) {\n pts_location = 'edge';\n }\n if (dilate === void 0) {\n dilate = false;\n }\n var pt0;\n var pt1;\n var n = pts.length;\n if (pts_location == 'center') {\n var halfspan = arrayable_1.map(spans, function (d) {\n return d / 2;\n });\n pt0 = new Float64Array(n);\n for (var i = 0; i < n; i++) {\n pt0[i] = pts[i] - halfspan[i];\n }\n pt1 = new Float64Array(n);\n for (var i = 0; i < n; i++) {\n pt1[i] = pts[i] + halfspan[i];\n }\n } else {\n pt0 = pts;\n pt1 = new Float64Array(n);\n for (var i = 0; i < n; i++) {\n pt1[i] = pt0[i] + spans[i];\n }\n }\n var spt0 = scale.v_compute(pt0);\n var spt1 = scale.v_compute(pt1);\n if (dilate)\n return arrayable_1.map(spt0, function (_, i) {\n return Math.ceil(Math.abs(spt1[i] - spt0[i]));\n });\n else\n return arrayable_1.map(spt0, function (_, i) {\n return Math.abs(spt1[i] - spt0[i]);\n });\n };\n GlyphView.prototype.draw_legend_for_index = function (_ctx, _bbox, _index) {\n };\n GlyphView.prototype.hit_test = function (geometry) {\n var result = null;\n var func = '_hit_' + geometry.type;\n if (this[func] != null) {\n result = this[func](geometry);\n } else if (this._nohit_warned[geometry.type] == null) {\n logging_1.logger.debug('\\'' + geometry.type + '\\' selection not available for ' + this.model.type);\n this._nohit_warned[geometry.type] = true;\n }\n return result;\n };\n GlyphView.prototype._hit_rect_against_index = function (geometry) {\n var sx0 = geometry.sx0, sx1 = geometry.sx1, sy0 = geometry.sy0, sy1 = geometry.sy1;\n var _a = this.renderer.xscale.r_invert(sx0, sx1), x0 = _a[0], x1 = _a[1];\n var _b = this.renderer.yscale.r_invert(sy0, sy1), y0 = _b[0], y1 = _b[1];\n var bb = hittest.validate_bbox_coords([\n x0,\n x1\n ], [\n y0,\n y1\n ]);\n var result = hittest.create_empty_hit_test_result();\n result.indices = this.index.indices(bb);\n return result;\n };\n GlyphView.prototype.set_data = function (source, indices, indices_to_update) {\n var data = this.model.materialize_dataspecs(source);\n this.visuals.set_all_indices(indices);\n if (indices && !(this instanceof line_1.LineView)) {\n var data_subset = {};\n var _loop_1 = function (k) {\n var v = data[k];\n if (k.charAt(0) === '_')\n data_subset[k] = indices.map(function (i) {\n return v[i];\n });\n else\n data_subset[k] = v;\n };\n for (var k in data) {\n _loop_1(k);\n }\n data = data_subset;\n }\n var self = this;\n object_1.extend(self, data);\n if (this.renderer.plot_view.model.use_map) {\n if (self._x != null)\n _a = proj.project_xy(self._x, self._y), self._x = _a[0], self._y = _a[1];\n if (self._xs != null)\n _b = proj.project_xsys(self._xs, self._ys), self._xs = _b[0], self._ys = _b[1];\n }\n // if we have any coordinates that are categorical, convert them to\n // synthetic coords here\n if (this.renderer.plot_view.frame.x_ranges != null) {\n // XXXX JUST TEMP FOR TESTS TO PASS\n var xr_1 = this.renderer.plot_view.frame.x_ranges[this.model.x_range_name];\n var yr_1 = this.renderer.plot_view.frame.y_ranges[this.model.y_range_name];\n for (var _i = 0, _c = this.model._coords; _i < _c.length; _i++) {\n var _d = _c[_i], xname = _d[0], yname = _d[1];\n xname = '_' + xname;\n yname = '_' + yname;\n // TODO (bev) more robust detection of multi-glyph case\n // hand multi glyph case\n if (self._xs != null) {\n if (xr_1 instanceof factor_range_1.FactorRange) {\n self[xname] = arrayable_1.map(self[xname], function (arr) {\n return xr_1.v_synthetic(arr);\n });\n }\n if (yr_1 instanceof factor_range_1.FactorRange) {\n self[yname] = arrayable_1.map(self[yname], function (arr) {\n return yr_1.v_synthetic(arr);\n });\n }\n } // hand standard glyph case\n else {\n if (xr_1 instanceof factor_range_1.FactorRange) {\n self[xname] = xr_1.v_synthetic(self[xname]);\n }\n if (yr_1 instanceof factor_range_1.FactorRange) {\n self[yname] = yr_1.v_synthetic(self[yname]);\n }\n }\n }\n }\n if (this.glglyph != null)\n this.glglyph.set_data_changed(self._x.length);\n this._set_data(indices_to_update);\n //TODO doesn't take subset indices into account\n this.index_data();\n var _a, _b;\n };\n GlyphView.prototype._set_data = function (_indices) {\n };\n GlyphView.prototype.index_data = function () {\n this.index = this._index_data();\n };\n GlyphView.prototype.mask_data = function (indices) {\n // WebGL can do the clipping much more efficiently\n if (this.glglyph != null || this._mask_data == null)\n return indices;\n else\n return this._mask_data();\n };\n GlyphView.prototype.map_data = function () {\n // TODO: if using gl, skip this (when is this called?)\n // map all the coordinate fields\n var self = this;\n for (var _i = 0, _a = this.model._coords; _i < _a.length; _i++) {\n var _b = _a[_i], xname = _b[0], yname = _b[1];\n var sxname = 's' + xname;\n var syname = 's' + yname;\n xname = '_' + xname;\n yname = '_' + yname;\n if (self[xname] != null && (types_1.isArray(self[xname][0]) || types_1.isTypedArray(self[xname][0]))) {\n var n = self[xname].length;\n self[sxname] = new Array(n);\n self[syname] = new Array(n);\n for (var i = 0; i < n; i++) {\n var _c = this.map_to_screen(self[xname][i], self[yname][i]), sx = _c[0], sy = _c[1];\n self[sxname][i] = sx;\n self[syname][i] = sy;\n }\n } else\n _d = this.map_to_screen(self[xname], self[yname]), self[sxname] = _d[0], self[syname] = _d[1];\n }\n this._map_data();\n var _d;\n };\n // This is where specs not included in coords are computed, e.g. radius.\n GlyphView.prototype._map_data = function () {\n };\n GlyphView.prototype.map_to_screen = function (x, y) {\n return this.renderer.plot_view.map_to_screen(x, y, this.model.x_range_name, this.model.y_range_name);\n };\n return GlyphView;\n }(view_1.View);\n exports.GlyphView = GlyphView;\n var Glyph = function (_super) {\n tslib_1.__extends(Glyph, _super);\n function Glyph(attrs) {\n return _super.call(this, attrs) || this;\n }\n Glyph.initClass = function () {\n this.prototype.type = 'Glyph';\n this.prototype._coords = [];\n this.internal({\n x_range_name: [\n p.String,\n 'default'\n ],\n y_range_name: [\n p.String,\n 'default'\n ]\n });\n };\n Glyph.coords = function (coords) {\n var _coords = this.prototype._coords.concat(coords);\n this.prototype._coords = _coords;\n var result = {};\n for (var _i = 0, coords_1 = coords; _i < coords_1.length; _i++) {\n var _a = coords_1[_i], x = _a[0], y = _a[1];\n result[x] = [p.NumberSpec];\n result[y] = [p.NumberSpec];\n }\n this.define(result);\n };\n return Glyph;\n }(model_1.Model);\n exports.Glyph = Glyph;\n Glyph.initClass(); \n}","/*models/glyphs/hbar*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var box_1 = require(110 /* ./box */);\n var p = require(15 /* core/properties */);\n var HBarView = function (_super) {\n tslib_1.__extends(HBarView, _super);\n function HBarView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n HBarView.prototype.scenterx = function (i) {\n return (this.sleft[i] + this.sright[i]) / 2;\n };\n HBarView.prototype.scentery = function (i) {\n return this.sy[i];\n };\n HBarView.prototype._index_data = function () {\n return this._index_box(this._y.length);\n };\n HBarView.prototype._lrtb = function (i) {\n var l = Math.min(this._left[i], this._right[i]);\n var r = Math.max(this._left[i], this._right[i]);\n var t = this._y[i] + 0.5 * this._height[i];\n var b = this._y[i] - 0.5 * this._height[i];\n return [\n l,\n r,\n t,\n b\n ];\n };\n HBarView.prototype._map_data = function () {\n this.sy = this.renderer.yscale.v_compute(this._y);\n this.sh = this.sdist(this.renderer.yscale, this._y, this._height, 'center');\n this.sleft = this.renderer.xscale.v_compute(this._left);\n this.sright = this.renderer.xscale.v_compute(this._right);\n var n = this.sy.length;\n this.stop = new Float64Array(n);\n this.sbottom = new Float64Array(n);\n for (var i = 0; i < n; i++) {\n this.stop[i] = this.sy[i] - this.sh[i] / 2;\n this.sbottom[i] = this.sy[i] + this.sh[i] / 2;\n }\n };\n return HBarView;\n }(box_1.BoxView);\n exports.HBarView = HBarView;\n var HBar = function (_super) {\n tslib_1.__extends(HBar, _super);\n function HBar(attrs) {\n return _super.call(this, attrs) || this;\n }\n HBar.initClass = function () {\n this.prototype.type = 'HBar';\n this.prototype.default_view = HBarView;\n this.coords([[\n 'left',\n 'y'\n ]]);\n this.define({\n height: [p.DistanceSpec],\n right: [p.NumberSpec]\n });\n this.override({ left: 0 });\n };\n return HBar;\n }(box_1.Box);\n exports.HBar = HBar;\n HBar.initClass(); \n}","/*models/glyphs/hex_tile*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var glyph_1 = require(113 /* ./glyph */);\n var hittest = require(9 /* core/hittest */);\n var p = require(15 /* core/properties */);\n var spatial_1 = require(37 /* core/util/spatial */);\n var utils_1 = require(132 /* ./utils */);\n var HexTileView = function (_super) {\n tslib_1.__extends(HexTileView, _super);\n function HexTileView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n HexTileView.prototype.scenterx = function (i) {\n return this.sx[i];\n };\n HexTileView.prototype.scentery = function (i) {\n return this.sy[i];\n };\n HexTileView.prototype._set_data = function () {\n var n = this._q.length;\n var size = this.model.size;\n var aspect_scale = this.model.aspect_scale;\n this._x = new Float64Array(n);\n this._y = new Float64Array(n);\n if (this.model.orientation == 'pointytop') {\n for (var i = 0; i < n; i++) {\n this._x[i] = size * Math.sqrt(3) * (this._q[i] + this._r[i] / 2) / aspect_scale;\n this._y[i] = -size * 3 / 2 * this._r[i];\n }\n } else {\n for (var i = 0; i < n; i++) {\n this._x[i] = size * 3 / 2 * this._q[i];\n this._y[i] = -size * Math.sqrt(3) * (this._r[i] + this._q[i] / 2) * aspect_scale;\n }\n }\n };\n HexTileView.prototype._index_data = function () {\n var ysize = this.model.size;\n var xsize = Math.sqrt(3) * ysize / 2;\n if (this.model.orientation == 'flattop') {\n _a = [\n ysize,\n xsize\n ], xsize = _a[0], ysize = _a[1];\n ysize *= this.model.aspect_scale;\n } else {\n xsize /= this.model.aspect_scale;\n }\n var points = [];\n for (var i = 0; i < this._x.length; i++) {\n var x = this._x[i];\n var y = this._y[i];\n if (isNaN(x + y) || !isFinite(x + y))\n continue;\n points.push({\n minX: x - xsize,\n minY: y - ysize,\n maxX: x + xsize,\n maxY: y + ysize,\n i: i\n });\n }\n return new spatial_1.SpatialIndex(points);\n var _a;\n };\n // overriding map_data instead of _map_data because the default automatic mappings\n // for other glyphs (with cartesian coordinates) is not useful\n HexTileView.prototype.map_data = function () {\n _a = this.map_to_screen(this._x, this._y), this.sx = _a[0], this.sy = _a[1];\n _b = this._get_unscaled_vertices(), this.svx = _b[0], this.svy = _b[1];\n var _a, _b;\n };\n HexTileView.prototype._get_unscaled_vertices = function () {\n var size = this.model.size;\n var aspect_scale = this.model.aspect_scale;\n if (this.model.orientation == 'pointytop') {\n var rscale = this.renderer.yscale;\n var hscale = this.renderer.xscale;\n var r = Math.abs(rscale.compute(0) - rscale.compute(size));\n // assumes linear scale\n var h = Math.sqrt(3) / 2 * Math.abs(hscale.compute(0) - hscale.compute(size)) / aspect_scale;\n // assumes linear scale\n var r2 = r / 2;\n var svx = [\n 0,\n -h,\n -h,\n 0,\n h,\n h\n ];\n var svy = [\n r,\n r2,\n -r2,\n -r,\n -r2,\n r2\n ];\n return [\n svx,\n svy\n ];\n } else {\n var rscale = this.renderer.xscale;\n var hscale = this.renderer.yscale;\n var r = Math.abs(rscale.compute(0) - rscale.compute(size));\n // assumes linear scale\n var h = Math.sqrt(3) / 2 * Math.abs(hscale.compute(0) - hscale.compute(size)) * aspect_scale;\n // assumes linear scale\n var r2 = r / 2;\n var svx = [\n r,\n r2,\n -r2,\n -r,\n -r2,\n r2\n ];\n var svy = [\n 0,\n -h,\n -h,\n 0,\n h,\n h\n ];\n return [\n svx,\n svy\n ];\n }\n };\n HexTileView.prototype._render = function (ctx, indices, _a) {\n var sx = _a.sx, sy = _a.sy, svx = _a.svx, svy = _a.svy, _scale = _a._scale;\n for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {\n var i = indices_1[_i];\n if (isNaN(sx[i] + sy[i] + _scale[i]))\n continue;\n ctx.translate(sx[i], sy[i]);\n ctx.beginPath();\n for (var j = 0; j < 6; j++) {\n ctx.lineTo(svx[j] * _scale[i], svy[j] * _scale[i]);\n }\n ctx.closePath();\n ctx.translate(-sx[i], -sy[i]);\n if (this.visuals.fill.doit) {\n this.visuals.fill.set_vectorize(ctx, i);\n ctx.fill();\n }\n if (this.visuals.line.doit) {\n this.visuals.line.set_vectorize(ctx, i);\n ctx.stroke();\n }\n }\n };\n HexTileView.prototype._hit_point = function (geometry) {\n var sx = geometry.sx, sy = geometry.sy;\n var x = this.renderer.xscale.invert(sx);\n var y = this.renderer.yscale.invert(sy);\n var candidates = this.index.indices({\n minX: x,\n minY: y,\n maxX: x,\n maxY: y\n });\n var hits = [];\n for (var _i = 0, candidates_1 = candidates; _i < candidates_1.length; _i++) {\n var i = candidates_1[_i];\n if (hittest.point_in_poly(sx - this.sx[i], sy - this.sy[i], this.svx, this.svy)) {\n hits.push(i);\n }\n }\n var result = hittest.create_empty_hit_test_result();\n result.indices = hits;\n return result;\n };\n HexTileView.prototype._hit_span = function (geometry) {\n var sx = geometry.sx, sy = geometry.sy;\n var hits;\n if (geometry.direction == 'v') {\n var y = this.renderer.yscale.invert(sy);\n var hr = this.renderer.plot_view.frame.bbox.h_range;\n var _a = this.renderer.xscale.r_invert(hr.start, hr.end), minX = _a[0], maxX = _a[1];\n hits = this.index.indices({\n minX: minX,\n minY: y,\n maxX: maxX,\n maxY: y\n });\n } else {\n var x = this.renderer.xscale.invert(sx);\n var vr = this.renderer.plot_view.frame.bbox.v_range;\n var _b = this.renderer.yscale.r_invert(vr.start, vr.end), minY = _b[0], maxY = _b[1];\n hits = this.index.indices({\n minX: x,\n minY: minY,\n maxX: x,\n maxY: maxY\n });\n }\n var result = hittest.create_empty_hit_test_result();\n result.indices = hits;\n return result;\n };\n HexTileView.prototype._hit_rect = function (geometry) {\n var sx0 = geometry.sx0, sx1 = geometry.sx1, sy0 = geometry.sy0, sy1 = geometry.sy1;\n var _a = this.renderer.xscale.r_invert(sx0, sx1), x0 = _a[0], x1 = _a[1];\n var _b = this.renderer.yscale.r_invert(sy0, sy1), y0 = _b[0], y1 = _b[1];\n var bbox = hittest.validate_bbox_coords([\n x0,\n x1\n ], [\n y0,\n y1\n ]);\n var result = hittest.create_empty_hit_test_result();\n result.indices = this.index.indices(bbox);\n return result;\n };\n HexTileView.prototype.draw_legend_for_index = function (ctx, bbox, index) {\n utils_1.generic_area_legend(this.visuals, ctx, bbox, index);\n };\n return HexTileView;\n }(glyph_1.GlyphView);\n exports.HexTileView = HexTileView;\n var HexTile = function (_super) {\n tslib_1.__extends(HexTile, _super);\n function HexTile(attrs) {\n return _super.call(this, attrs) || this;\n }\n HexTile.initClass = function () {\n this.prototype.type = 'HexTile';\n this.prototype.default_view = HexTileView;\n this.coords([[\n 'r',\n 'q'\n ]]);\n this.mixins([\n 'line',\n 'fill'\n ]);\n this.define({\n size: [\n p.Number,\n 1\n ],\n aspect_scale: [\n p.Number,\n 1\n ],\n scale: [\n p.NumberSpec,\n 1\n ],\n orientation: [\n p.String,\n 'pointytop'\n ]\n });\n this.override({ line_color: null });\n };\n return HexTile;\n }(glyph_1.Glyph);\n exports.HexTile = HexTile;\n HexTile.initClass(); \n}","/*models/glyphs/image*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var xy_glyph_1 = require(135 /* ./xy_glyph */);\n var linear_color_mapper_1 = require(154 /* ../mappers/linear_color_mapper */);\n var p = require(15 /* core/properties */);\n var array_1 = require(21 /* core/util/array */);\n var spatial_1 = require(37 /* core/util/spatial */);\n var hittest = require(9 /* core/hittest */);\n var ImageView = function (_super) {\n tslib_1.__extends(ImageView, _super);\n function ImageView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n ImageView.prototype.initialize = function (options) {\n var _this = this;\n _super.prototype.initialize.call(this, options);\n this.connect(this.model.color_mapper.change, function () {\n return _this._update_image();\n });\n this.connect(this.model.properties.global_alpha.change, function () {\n return _this.renderer.request_render();\n });\n };\n ImageView.prototype._update_image = function () {\n // Only reset image_data if already initialized\n if (this.image_data != null) {\n this._set_data();\n this.renderer.plot_view.request_render();\n }\n };\n ImageView.prototype._index_data = function () {\n var points = [];\n for (var i = 0, end = this._x.length; i < end; i++) {\n var _a = this._lrtb(i), l = _a[0], r = _a[1], t = _a[2], b = _a[3];\n if (isNaN(l + r + t + b) || !isFinite(l + r + t + b)) {\n continue;\n }\n points.push({\n minX: l,\n minY: b,\n maxX: r,\n maxY: t,\n i: i\n });\n }\n return new spatial_1.SpatialIndex(points);\n };\n ImageView.prototype._lrtb = function (i) {\n var l = this._x[i];\n var r = l + this._dw[i];\n var b = this._y[i];\n var t = b + this._dh[i];\n return [\n l,\n r,\n t,\n b\n ];\n };\n ImageView.prototype._image_index = function (index, x, y) {\n var _a = this._lrtb(index), l = _a[0], r = _a[1], t = _a[2], b = _a[3];\n var width = this._width[index];\n var height = this._height[index];\n var dx = (r - l) / width;\n var dy = (t - b) / height;\n var dim1 = Math.floor((x - l) / dx);\n var dim2 = Math.floor((y - b) / dy);\n return {\n index: index,\n dim1: dim1,\n dim2: dim2,\n flat_index: dim2 * width + dim1\n };\n };\n ImageView.prototype._hit_point = function (geometry) {\n var sx = geometry.sx, sy = geometry.sy;\n var x = this.renderer.xscale.invert(sx);\n var y = this.renderer.yscale.invert(sy);\n var bbox = hittest.validate_bbox_coords([\n x,\n x\n ], [\n y,\n y\n ]);\n var candidates = this.index.indices(bbox);\n var result = hittest.create_empty_hit_test_result();\n result.image_indices = [];\n for (var _i = 0, candidates_1 = candidates; _i < candidates_1.length; _i++) {\n var index = candidates_1[_i];\n if (sx != Infinity && sy != Infinity) {\n result.image_indices.push(this._image_index(index, x, y));\n }\n }\n return result;\n };\n ImageView.prototype._set_data = function () {\n if (this.image_data == null || this.image_data.length != this._image.length)\n this.image_data = new Array(this._image.length);\n if (this._width == null || this._width.length != this._image.length)\n this._width = new Array(this._image.length);\n if (this._height == null || this._height.length != this._image.length)\n this._height = new Array(this._image.length);\n var cmap = this.model.color_mapper.rgba_mapper;\n for (var i = 0, end = this._image.length; i < end; i++) {\n var img = void 0;\n if (this._image_shape != null && this._image_shape[i].length > 0) {\n img = this._image[i];\n var shape = this._image_shape[i];\n this._height[i] = shape[0];\n this._width[i] = shape[1];\n } else {\n var _image = this._image[i];\n img = array_1.concat(_image);\n this._height[i] = _image.length;\n this._width[i] = _image[0].length;\n }\n var _image_data = this.image_data[i];\n var canvas = void 0;\n if (_image_data != null && _image_data.width == this._width[i] && _image_data.height == this._height[i])\n canvas = _image_data;\n else {\n canvas = document.createElement('canvas');\n canvas.width = this._width[i];\n canvas.height = this._height[i];\n }\n var ctx = canvas.getContext('2d');\n var image_data = ctx.getImageData(0, 0, this._width[i], this._height[i]);\n var buf8 = cmap.v_compute(img);\n image_data.data.set(buf8);\n ctx.putImageData(image_data, 0, 0);\n this.image_data[i] = canvas;\n this.max_dw = 0;\n if (this.model.properties.dw.units == 'data')\n this.max_dw = array_1.max(this._dw);\n this.max_dh = 0;\n if (this.model.properties.dh.units == 'data')\n this.max_dh = array_1.max(this._dh);\n }\n };\n ImageView.prototype._map_data = function () {\n switch (this.model.properties.dw.units) {\n case 'data': {\n this.sw = this.sdist(this.renderer.xscale, this._x, this._dw, 'edge', this.model.dilate);\n break;\n }\n case 'screen': {\n this.sw = this._dw;\n break;\n }\n }\n switch (this.model.properties.dh.units) {\n case 'data': {\n this.sh = this.sdist(this.renderer.yscale, this._y, this._dh, 'edge', this.model.dilate);\n break;\n }\n case 'screen': {\n this.sh = this._dh;\n break;\n }\n }\n };\n ImageView.prototype._render = function (ctx, indices, _a) {\n var image_data = _a.image_data, sx = _a.sx, sy = _a.sy, sw = _a.sw, sh = _a.sh;\n var old_smoothing = ctx.getImageSmoothingEnabled();\n ctx.setImageSmoothingEnabled(false);\n ctx.globalAlpha = this.model.global_alpha;\n for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {\n var i = indices_1[_i];\n if (image_data[i] == null)\n continue;\n if (isNaN(sx[i] + sy[i] + sw[i] + sh[i]))\n continue;\n var y_offset = sy[i];\n ctx.translate(0, y_offset);\n ctx.scale(1, -1);\n ctx.translate(0, -y_offset);\n ctx.drawImage(image_data[i], sx[i] | 0, sy[i] | 0, sw[i], sh[i]);\n ctx.translate(0, y_offset);\n ctx.scale(1, -1);\n ctx.translate(0, -y_offset);\n }\n ctx.setImageSmoothingEnabled(old_smoothing);\n };\n ImageView.prototype.bounds = function () {\n var bbox = this.index.bbox;\n bbox.maxX += this.max_dw;\n bbox.maxY += this.max_dh;\n return bbox;\n };\n return ImageView;\n }(xy_glyph_1.XYGlyphView);\n exports.ImageView = ImageView;\n // NOTE: this needs to be redefined here, because palettes are located in bokeh-api.js bundle\n var Greys9 = function () {\n return [\n '#000000',\n '#252525',\n '#525252',\n '#737373',\n '#969696',\n '#bdbdbd',\n '#d9d9d9',\n '#f0f0f0',\n '#ffffff'\n ];\n };\n var Image = function (_super) {\n tslib_1.__extends(Image, _super);\n function Image(attrs) {\n return _super.call(this, attrs) || this;\n }\n Image.initClass = function () {\n this.prototype.type = 'Image';\n this.prototype.default_view = ImageView;\n this.define({\n image: [p.NumberSpec],\n dw: [p.DistanceSpec],\n dh: [p.DistanceSpec],\n dilate: [\n p.Bool,\n false\n ],\n global_alpha: [\n p.Number,\n 1\n ],\n color_mapper: [\n p.Instance,\n function () {\n return new linear_color_mapper_1.LinearColorMapper({ palette: Greys9() });\n }\n ]\n });\n };\n return Image;\n }(xy_glyph_1.XYGlyph);\n exports.Image = Image;\n Image.initClass(); \n}","/*models/glyphs/image_rgba*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var xy_glyph_1 = require(135 /* ./xy_glyph */);\n var p = require(15 /* core/properties */);\n var array_1 = require(21 /* core/util/array */);\n var ImageRGBAView = function (_super) {\n tslib_1.__extends(ImageRGBAView, _super);\n function ImageRGBAView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n ImageRGBAView.prototype.initialize = function (options) {\n var _this = this;\n _super.prototype.initialize.call(this, options);\n this.connect(this.model.properties.global_alpha.change, function () {\n return _this.renderer.request_render();\n });\n };\n ImageRGBAView.prototype._set_data = function (indices) {\n if (this.image_data == null || this.image_data.length != this._image.length)\n this.image_data = new Array(this._image.length);\n if (this._width == null || this._width.length != this._image.length)\n this._width = new Array(this._image.length);\n if (this._height == null || this._height.length != this._image.length)\n this._height = new Array(this._image.length);\n for (var i = 0, end = this._image.length; i < end; i++) {\n if (indices != null && indices.indexOf(i) < 0)\n continue;\n var buf = void 0;\n if (this._image_shape != null && this._image_shape[i].length > 0) {\n buf = this._image[i].buffer;\n var shape = this._image_shape[i];\n this._height[i] = shape[0];\n this._width[i] = shape[1];\n } else {\n var _image = this._image[i];\n var flat = array_1.concat(_image);\n buf = new ArrayBuffer(flat.length * 4);\n var color = new Uint32Array(buf);\n for (var j = 0, endj = flat.length; j < endj; j++) {\n color[j] = flat[j];\n }\n this._height[i] = _image.length;\n this._width[i] = _image[0].length;\n }\n var _image_data = this.image_data[i];\n var canvas = void 0;\n if (_image_data != null && _image_data.width == this._width[i] && _image_data.height == this._height[i])\n canvas = _image_data;\n else {\n canvas = document.createElement('canvas');\n canvas.width = this._width[i];\n canvas.height = this._height[i];\n }\n var ctx = canvas.getContext('2d');\n var image_data = ctx.getImageData(0, 0, this._width[i], this._height[i]);\n var buf8 = new Uint8Array(buf);\n image_data.data.set(buf8);\n ctx.putImageData(image_data, 0, 0);\n this.image_data[i] = canvas;\n this.max_dw = 0;\n if (this.model.properties.dw.units == 'data')\n this.max_dw = array_1.max(this._dw);\n this.max_dh = 0;\n if (this.model.properties.dh.units == 'data')\n this.max_dh = array_1.max(this._dh);\n }\n };\n ImageRGBAView.prototype._map_data = function () {\n switch (this.model.properties.dw.units) {\n case 'data': {\n this.sw = this.sdist(this.renderer.xscale, this._x, this._dw, 'edge', this.model.dilate);\n break;\n }\n case 'screen': {\n this.sw = this._dw;\n break;\n }\n }\n switch (this.model.properties.dh.units) {\n case 'data': {\n this.sh = this.sdist(this.renderer.yscale, this._y, this._dh, 'edge', this.model.dilate);\n break;\n }\n case 'screen': {\n this.sh = this._dh;\n break;\n }\n }\n };\n ImageRGBAView.prototype._render = function (ctx, indices, _a) {\n var image_data = _a.image_data, sx = _a.sx, sy = _a.sy, sw = _a.sw, sh = _a.sh;\n var old_smoothing = ctx.getImageSmoothingEnabled();\n ctx.setImageSmoothingEnabled(false);\n ctx.globalAlpha = this.model.global_alpha;\n for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {\n var i = indices_1[_i];\n if (isNaN(sx[i] + sy[i] + sw[i] + sh[i]))\n continue;\n var y_offset = sy[i];\n ctx.translate(0, y_offset);\n ctx.scale(1, -1);\n ctx.translate(0, -y_offset);\n ctx.drawImage(image_data[i], sx[i] | 0, sy[i] | 0, sw[i], sh[i]);\n ctx.translate(0, y_offset);\n ctx.scale(1, -1);\n ctx.translate(0, -y_offset);\n }\n ctx.setImageSmoothingEnabled(old_smoothing);\n };\n ImageRGBAView.prototype.bounds = function () {\n var bbox = this.index.bbox;\n bbox.maxX += this.max_dw;\n bbox.maxY += this.max_dh;\n return bbox;\n };\n return ImageRGBAView;\n }(xy_glyph_1.XYGlyphView);\n exports.ImageRGBAView = ImageRGBAView;\n var ImageRGBA = function (_super) {\n tslib_1.__extends(ImageRGBA, _super);\n function ImageRGBA(attrs) {\n return _super.call(this, attrs) || this;\n }\n ImageRGBA.initClass = function () {\n this.prototype.type = 'ImageRGBA';\n this.prototype.default_view = ImageRGBAView;\n this.define({\n image: [p.NumberSpec],\n dw: [p.DistanceSpec],\n dh: [p.DistanceSpec],\n global_alpha: [\n p.Number,\n 1\n ],\n dilate: [\n p.Bool,\n false\n ]\n });\n };\n return ImageRGBA;\n }(xy_glyph_1.XYGlyph);\n exports.ImageRGBA = ImageRGBA;\n ImageRGBA.initClass(); \n}","/*models/glyphs/image_url*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var xy_glyph_1 = require(135 /* ./xy_glyph */);\n var logging_1 = require(14 /* core/logging */);\n var p = require(15 /* core/properties */);\n var arrayable_1 = require(22 /* core/util/arrayable */);\n var spatial_1 = require(37 /* core/util/spatial */);\n exports.CanvasImage = Image;\n var ImageURLView = function (_super) {\n tslib_1.__extends(ImageURLView, _super);\n function ImageURLView() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this._images_rendered = false;\n return _this;\n }\n ImageURLView.prototype.initialize = function (options) {\n var _this = this;\n _super.prototype.initialize.call(this, options);\n this.connect(this.model.properties.global_alpha.change, function () {\n return _this.renderer.request_render();\n });\n };\n ImageURLView.prototype._index_data = function () {\n return new spatial_1.SpatialIndex([]);\n };\n ImageURLView.prototype._set_data = function () {\n var _this = this;\n if (this.image == null || this.image.length != this._url.length)\n this.image = arrayable_1.map(this._url, function () {\n return null;\n });\n var _a = this.model, retry_attempts = _a.retry_attempts, retry_timeout = _a.retry_timeout;\n this.retries = arrayable_1.map(this._url, function () {\n return retry_attempts;\n });\n var _loop_1 = function (i, end) {\n if (this_1._url[i] == null)\n return 'continue';\n var img = new exports.CanvasImage();\n img.onerror = function () {\n if (_this.retries[i] > 0) {\n logging_1.logger.trace('ImageURL failed to load ' + _this._url[i] + ' image, retrying in ' + retry_timeout + ' ms');\n setTimeout(function () {\n return img.src = _this._url[i];\n }, retry_timeout);\n } else\n logging_1.logger.warn('ImageURL unable to load ' + _this._url[i] + ' image after ' + retry_attempts + ' retries');\n _this.retries[i] -= 1;\n };\n img.onload = function () {\n _this.image[i] = img;\n _this.renderer.request_render();\n };\n img.src = this_1._url[i];\n };\n var this_1 = this;\n for (var i = 0, end = this._url.length; i < end; i++) {\n _loop_1(i, end);\n }\n };\n ImageURLView.prototype.has_finished = function () {\n return _super.prototype.has_finished.call(this) && this._images_rendered == true;\n };\n ImageURLView.prototype._map_data = function () {\n // Better to check this.model.w and this.model.h for null since the set_data\n // machinery will have converted this._w and this._w to lists of null\n var ws = this.model.w != null ? this._w : arrayable_1.map(this._x, function () {\n return NaN;\n });\n var hs = this.model.h != null ? this._h : arrayable_1.map(this._x, function () {\n return NaN;\n });\n switch (this.model.properties.w.units) {\n case 'data': {\n this.sw = this.sdist(this.renderer.xscale, this._x, ws, 'edge', this.model.dilate);\n break;\n }\n case 'screen': {\n this.sw = ws;\n break;\n }\n }\n switch (this.model.properties.h.units) {\n case 'data': {\n this.sh = this.sdist(this.renderer.yscale, this._y, hs, 'edge', this.model.dilate);\n break;\n }\n case 'screen': {\n this.sh = hs;\n break;\n }\n }\n };\n ImageURLView.prototype._render = function (ctx, indices, _a) {\n var _url = _a._url, image = _a.image, sx = _a.sx, sy = _a.sy, sw = _a.sw, sh = _a.sh, _angle = _a._angle;\n // TODO (bev): take actual border width into account when clipping\n var frame = this.renderer.plot_view.frame;\n ctx.rect(frame._left.value + 1, frame._top.value + 1, frame._width.value - 2, frame._height.value - 2);\n ctx.clip();\n var finished = true;\n for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {\n var i = indices_1[_i];\n if (isNaN(sx[i] + sy[i] + _angle[i]))\n continue;\n if (this.retries[i] == -1)\n continue;\n var img = image[i];\n if (img == null) {\n finished = false;\n continue;\n }\n this._render_image(ctx, i, img, sx, sy, sw, sh, _angle);\n }\n if (finished && !this._images_rendered) {\n this._images_rendered = true;\n this.notify_finished();\n }\n };\n ImageURLView.prototype._final_sx_sy = function (anchor, sx, sy, sw, sh) {\n switch (anchor) {\n case 'top_left':\n return [\n sx,\n sy\n ];\n case 'top_center':\n return [\n sx - sw / 2,\n sy\n ];\n case 'top_right':\n return [\n sx - sw,\n sy\n ];\n case 'center_right':\n return [\n sx - sw,\n sy - sh / 2\n ];\n case 'bottom_right':\n return [\n sx - sw,\n sy - sh\n ];\n case 'bottom_center':\n return [\n sx - sw / 2,\n sy - sh\n ];\n case 'bottom_left':\n return [\n sx,\n sy - sh\n ];\n case 'center_left':\n return [\n sx,\n sy - sh / 2\n ];\n case 'center':\n return [\n sx - sw / 2,\n sy - sh / 2\n ];\n }\n };\n ImageURLView.prototype._render_image = function (ctx, i, image, sx, sy, sw, sh, angle) {\n if (isNaN(sw[i]))\n sw[i] = image.width;\n if (isNaN(sh[i]))\n sh[i] = image.height;\n var anchor = this.model.anchor;\n var _a = this._final_sx_sy(anchor, sx[i], sy[i], sw[i], sh[i]), sxi = _a[0], syi = _a[1];\n ctx.save();\n ctx.globalAlpha = this.model.global_alpha;\n if (angle[i]) {\n ctx.translate(sxi, syi);\n ctx.rotate(angle[i]);\n ctx.drawImage(image, 0, 0, sw[i], sh[i]);\n ctx.rotate(-angle[i]);\n ctx.translate(-sxi, -syi);\n } else\n ctx.drawImage(image, sxi, syi, sw[i], sh[i]);\n ctx.restore();\n };\n return ImageURLView;\n }(xy_glyph_1.XYGlyphView);\n exports.ImageURLView = ImageURLView;\n var ImageURL = function (_super) {\n tslib_1.__extends(ImageURL, _super);\n function ImageURL(attrs) {\n return _super.call(this, attrs) || this;\n }\n ImageURL.initClass = function () {\n this.prototype.type = 'ImageURL';\n this.prototype.default_view = ImageURLView;\n this.define({\n url: [p.StringSpec],\n anchor: [\n p.Anchor,\n 'top_left'\n ],\n global_alpha: [\n p.Number,\n 1\n ],\n angle: [\n p.AngleSpec,\n 0\n ],\n w: [p.DistanceSpec],\n h: [p.DistanceSpec],\n dilate: [\n p.Bool,\n false\n ],\n retry_attempts: [\n p.Number,\n 0\n ],\n retry_timeout: [\n p.Number,\n 0\n ]\n });\n };\n return ImageURL;\n }(xy_glyph_1.XYGlyph);\n exports.ImageURL = ImageURL;\n ImageURL.initClass(); \n}","/*models/glyphs/index*/\nfunction _(require, module, exports) {\n var annular_wedge_1 = require(106 /* ./annular_wedge */);\n exports.AnnularWedge = annular_wedge_1.AnnularWedge;\n var annulus_1 = require(107 /* ./annulus */);\n exports.Annulus = annulus_1.Annulus;\n var arc_1 = require(108 /* ./arc */);\n exports.Arc = arc_1.Arc;\n var bezier_1 = require(109 /* ./bezier */);\n exports.Bezier = bezier_1.Bezier;\n var circle_1 = require(111 /* ./circle */);\n exports.Circle = circle_1.Circle;\n var ellipse_1 = require(112 /* ./ellipse */);\n exports.Ellipse = ellipse_1.Ellipse;\n var glyph_1 = require(113 /* ./glyph */);\n exports.Glyph = glyph_1.Glyph;\n var hbar_1 = require(114 /* ./hbar */);\n exports.HBar = hbar_1.HBar;\n var hex_tile_1 = require(115 /* ./hex_tile */);\n exports.HexTile = hex_tile_1.HexTile;\n var image_1 = require(116 /* ./image */);\n exports.Image = image_1.Image;\n var image_rgba_1 = require(117 /* ./image_rgba */);\n exports.ImageRGBA = image_rgba_1.ImageRGBA;\n var image_url_1 = require(118 /* ./image_url */);\n exports.ImageURL = image_url_1.ImageURL;\n var line_1 = require(120 /* ./line */);\n exports.Line = line_1.Line;\n var multi_line_1 = require(121 /* ./multi_line */);\n exports.MultiLine = multi_line_1.MultiLine;\n var oval_1 = require(122 /* ./oval */);\n exports.Oval = oval_1.Oval;\n var patch_1 = require(123 /* ./patch */);\n exports.Patch = patch_1.Patch;\n var patches_1 = require(124 /* ./patches */);\n exports.Patches = patches_1.Patches;\n var quad_1 = require(125 /* ./quad */);\n exports.Quad = quad_1.Quad;\n var quadratic_1 = require(126 /* ./quadratic */);\n exports.Quadratic = quadratic_1.Quadratic;\n var ray_1 = require(127 /* ./ray */);\n exports.Ray = ray_1.Ray;\n var rect_1 = require(128 /* ./rect */);\n exports.Rect = rect_1.Rect;\n var segment_1 = require(129 /* ./segment */);\n exports.Segment = segment_1.Segment;\n var step_1 = require(130 /* ./step */);\n exports.Step = step_1.Step;\n var text_1 = require(131 /* ./text */);\n exports.Text = text_1.Text;\n var vbar_1 = require(133 /* ./vbar */);\n exports.VBar = vbar_1.VBar;\n var wedge_1 = require(134 /* ./wedge */);\n exports.Wedge = wedge_1.Wedge;\n var xy_glyph_1 = require(135 /* ./xy_glyph */);\n exports.XYGlyph = xy_glyph_1.XYGlyph; \n}","/*models/glyphs/line*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var xy_glyph_1 = require(135 /* ./xy_glyph */);\n var utils_1 = require(132 /* ./utils */);\n var hittest = require(9 /* core/hittest */);\n var LineView = function (_super) {\n tslib_1.__extends(LineView, _super);\n function LineView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n LineView.prototype._render = function (ctx, indices, _a) {\n var sx = _a.sx, sy = _a.sy;\n var drawing = false;\n var last_index = null;\n this.visuals.line.set_value(ctx);\n for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {\n var i = indices_1[_i];\n if (drawing) {\n if (!isFinite(sx[i] + sy[i])) {\n ctx.stroke();\n ctx.beginPath();\n drawing = false;\n last_index = i;\n continue;\n }\n if (last_index != null && i - last_index > 1) {\n ctx.stroke();\n drawing = false;\n }\n }\n if (drawing)\n ctx.lineTo(sx[i], sy[i]);\n else {\n ctx.beginPath();\n ctx.moveTo(sx[i], sy[i]);\n drawing = true;\n }\n last_index = i;\n }\n if (drawing)\n ctx.stroke();\n };\n LineView.prototype._hit_point = function (geometry) {\n var _this = this;\n /* Check if the point geometry hits this line glyph and return an object\n that describes the hit result:\n Args:\n * geometry (object): object with the following keys\n * sx (float): screen x coordinate of the point\n * sy (float): screen y coordinate of the point\n * type (str): type of geometry (in this case it's a point)\n Output:\n Object with the following keys:\n * 0d (bool): whether the point hits the glyph or not\n * 1d (array(int)): array with the indices hit by the point\n */\n var result = hittest.create_empty_hit_test_result();\n var point = {\n x: geometry.sx,\n y: geometry.sy\n };\n var shortest = 9999;\n var threshold = Math.max(2, this.visuals.line.line_width.value() / 2);\n for (var i = 0, end = this.sx.length - 1; i < end; i++) {\n var p0 = {\n x: this.sx[i],\n y: this.sy[i]\n };\n var p1 = {\n x: this.sx[i + 1],\n y: this.sy[i + 1]\n };\n var dist = hittest.dist_to_segment(point, p0, p1);\n if (dist < threshold && dist < shortest) {\n shortest = dist;\n result.add_to_selected_glyphs(this.model);\n result.get_view = function () {\n return _this;\n };\n result.line_indices = [i];\n }\n }\n return result;\n };\n LineView.prototype._hit_span = function (geometry) {\n var _this = this;\n var sx = geometry.sx, sy = geometry.sy;\n var result = hittest.create_empty_hit_test_result();\n var val;\n var values;\n if (geometry.direction == 'v') {\n val = this.renderer.yscale.invert(sy);\n values = this._y;\n } else {\n val = this.renderer.xscale.invert(sx);\n values = this._x;\n }\n for (var i = 0, end = values.length - 1; i < end; i++) {\n if (values[i] <= val && val <= values[i + 1] || values[i + 1] <= val && val <= values[i]) {\n result.add_to_selected_glyphs(this.model);\n result.get_view = function () {\n return _this;\n };\n result.line_indices.push(i);\n }\n }\n return result;\n };\n LineView.prototype.get_interpolation_hit = function (i, geometry) {\n var sx = geometry.sx, sy = geometry.sy;\n var _a = [\n this._x[i],\n this._y[i],\n this._x[i + 1],\n this._y[i + 1]\n ], x2 = _a[0], y2 = _a[1], x3 = _a[2], y3 = _a[3];\n var x0, x1;\n var y0, y1;\n if (geometry.type == 'point') {\n ;\n _b = this.renderer.yscale.r_invert(sy - 1, sy + 1), y0 = _b[0], y1 = _b[1];\n _c = this.renderer.xscale.r_invert(sx - 1, sx + 1), x0 = _c[0], x1 = _c[1];\n } else {\n if (geometry.direction == 'v') {\n ;\n _d = this.renderer.yscale.r_invert(sy, sy), y0 = _d[0], y1 = _d[1];\n _e = [\n x2,\n x3\n ], x0 = _e[0], x1 = _e[1];\n } else {\n ;\n _f = this.renderer.xscale.r_invert(sx, sx), x0 = _f[0], x1 = _f[1];\n _g = [\n y2,\n y3\n ], y0 = _g[0], y1 = _g[1];\n }\n }\n var _h = hittest.check_2_segments_intersect(x0, y0, x1, y1, x2, y2, x3, y3), x = _h.x, y = _h.y;\n return [\n x,\n y\n ];\n // XXX: null is not handled at use sites\n var _b, _c, _d, _e, _f, _g;\n };\n LineView.prototype.draw_legend_for_index = function (ctx, bbox, index) {\n utils_1.generic_line_legend(this.visuals, ctx, bbox, index);\n };\n return LineView;\n }(xy_glyph_1.XYGlyphView);\n exports.LineView = LineView;\n var Line = function (_super) {\n tslib_1.__extends(Line, _super);\n function Line(attrs) {\n return _super.call(this, attrs) || this;\n }\n Line.initClass = function () {\n this.prototype.type = 'Line';\n this.prototype.default_view = LineView;\n this.mixins(['line']);\n };\n return Line;\n }(xy_glyph_1.XYGlyph);\n exports.Line = Line;\n Line.initClass(); \n}","/*models/glyphs/multi_line*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var spatial_1 = require(37 /* core/util/spatial */);\n var hittest = require(9 /* core/hittest */);\n var object_1 = require(32 /* core/util/object */);\n var array_1 = require(21 /* core/util/array */);\n var types_1 = require(44 /* core/util/types */);\n var glyph_1 = require(113 /* ./glyph */);\n var utils_1 = require(132 /* ./utils */);\n var MultiLineView = function (_super) {\n tslib_1.__extends(MultiLineView, _super);\n function MultiLineView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n MultiLineView.prototype._index_data = function () {\n var points = [];\n for (var i = 0, end = this._xs.length; i < end; i++) {\n if (this._xs[i] == null || this._xs[i].length === 0)\n continue;\n var _xsi = this._xs[i];\n var xs = [];\n for (var j = 0, n = _xsi.length; j < n; j++) {\n var x = _xsi[j];\n if (!types_1.isStrictNaN(x))\n xs.push(x);\n }\n var _ysi = this._ys[i];\n var ys = [];\n for (var j = 0, n = _ysi.length; j < n; j++) {\n var y = _ysi[j];\n if (!types_1.isStrictNaN(y))\n ys.push(y);\n }\n var _a = [\n array_1.min(xs),\n array_1.max(xs)\n ], minX = _a[0], maxX = _a[1];\n var _b = [\n array_1.min(ys),\n array_1.max(ys)\n ], minY = _b[0], maxY = _b[1];\n points.push({\n minX: minX,\n minY: minY,\n maxX: maxX,\n maxY: maxY,\n i: i\n });\n }\n return new spatial_1.SpatialIndex(points);\n };\n MultiLineView.prototype._render = function (ctx, indices, _a) {\n var sxs = _a.sxs, sys = _a.sys;\n for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {\n var i = indices_1[_i];\n var _b = [\n sxs[i],\n sys[i]\n ], sx = _b[0], sy = _b[1];\n this.visuals.line.set_vectorize(ctx, i);\n for (var j = 0, end = sx.length; j < end; j++) {\n if (j == 0) {\n ctx.beginPath();\n ctx.moveTo(sx[j], sy[j]);\n continue;\n } else if (isNaN(sx[j]) || isNaN(sy[j])) {\n ctx.stroke();\n ctx.beginPath();\n continue;\n } else\n ctx.lineTo(sx[j], sy[j]);\n }\n ctx.stroke();\n }\n };\n MultiLineView.prototype._hit_point = function (geometry) {\n var result = hittest.create_empty_hit_test_result();\n var point = {\n x: geometry.sx,\n y: geometry.sy\n };\n var shortest = 9999;\n var hits = {};\n for (var i = 0, end = this.sxs.length; i < end; i++) {\n var threshold = Math.max(2, this.visuals.line.cache_select('line_width', i) / 2);\n var points = null;\n for (var j = 0, endj = this.sxs[i].length - 1; j < endj; j++) {\n var p0 = {\n x: this.sxs[i][j],\n y: this.sys[i][j]\n };\n var p1 = {\n x: this.sxs[i][j + 1],\n y: this.sys[i][j + 1]\n };\n var dist = hittest.dist_to_segment(point, p0, p1);\n if (dist < threshold && dist < shortest) {\n shortest = dist;\n points = [j];\n }\n }\n if (points)\n hits[i] = points;\n }\n result.indices = object_1.keys(hits).map(function (x) {\n return parseInt(x, 10);\n });\n result.multiline_indices = hits;\n return result;\n };\n MultiLineView.prototype._hit_span = function (geometry) {\n var sx = geometry.sx, sy = geometry.sy;\n var result = hittest.create_empty_hit_test_result();\n var val;\n var values;\n if (geometry.direction === 'v') {\n val = this.renderer.yscale.invert(sy);\n values = this._ys;\n } else {\n val = this.renderer.xscale.invert(sx);\n values = this._xs;\n }\n var hits = {};\n for (var i = 0, end = values.length; i < end; i++) {\n var points = [];\n for (var j = 0, endj = values[i].length - 1; j < endj; j++) {\n if (values[i][j] <= val && val <= values[i][j + 1])\n points.push(j);\n }\n if (points.length > 0)\n hits[i] = points;\n }\n result.indices = object_1.keys(hits).map(function (x) {\n return parseInt(x, 10);\n });\n result.multiline_indices = hits;\n return result;\n };\n MultiLineView.prototype.get_interpolation_hit = function (i, point_i, geometry) {\n var sx = geometry.sx, sy = geometry.sy;\n var x2 = this._xs[i][point_i];\n var y2 = this._ys[i][point_i];\n var x3 = this._xs[i][point_i + 1];\n var y3 = this._ys[i][point_i + 1];\n var x0, x1;\n var y0, y1;\n if (geometry.type == 'point') {\n ;\n _a = this.renderer.yscale.r_invert(sy - 1, sy + 1), y0 = _a[0], y1 = _a[1];\n _b = this.renderer.xscale.r_invert(sx - 1, sx + 1), x0 = _b[0], x1 = _b[1];\n } else {\n if (geometry.direction == 'v') {\n ;\n _c = this.renderer.yscale.r_invert(sy, sy), y0 = _c[0], y1 = _c[1];\n _d = [\n x2,\n x3\n ], x0 = _d[0], x1 = _d[1];\n } else {\n ;\n _e = this.renderer.xscale.r_invert(sx, sx), x0 = _e[0], x1 = _e[1];\n _f = [\n y2,\n y3\n ], y0 = _f[0], y1 = _f[1];\n }\n }\n var _g = hittest.check_2_segments_intersect(x0, y0, x1, y1, x2, y2, x3, y3), x = _g.x, y = _g.y;\n return [\n x,\n y\n ];\n // XXX: null is not handled at use sites\n var _a, _b, _c, _d, _e, _f;\n };\n MultiLineView.prototype.draw_legend_for_index = function (ctx, bbox, index) {\n utils_1.generic_line_legend(this.visuals, ctx, bbox, index);\n };\n MultiLineView.prototype.scenterx = function () {\n throw new Error('not implemented');\n };\n MultiLineView.prototype.scentery = function () {\n throw new Error('not implemented');\n };\n return MultiLineView;\n }(glyph_1.GlyphView);\n exports.MultiLineView = MultiLineView;\n var MultiLine = function (_super) {\n tslib_1.__extends(MultiLine, _super);\n function MultiLine(attrs) {\n return _super.call(this, attrs) || this;\n }\n MultiLine.initClass = function () {\n this.prototype.type = 'MultiLine';\n this.prototype.default_view = MultiLineView;\n this.coords([[\n 'xs',\n 'ys'\n ]]);\n this.mixins(['line']);\n };\n return MultiLine;\n }(glyph_1.Glyph);\n exports.MultiLine = MultiLine;\n MultiLine.initClass(); \n}","/*models/glyphs/oval*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var xy_glyph_1 = require(135 /* ./xy_glyph */);\n var p = require(15 /* core/properties */);\n var OvalView = function (_super) {\n tslib_1.__extends(OvalView, _super);\n function OvalView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n OvalView.prototype._set_data = function () {\n this.max_w2 = 0;\n if (this.model.properties.width.units == 'data')\n this.max_w2 = this.max_width / 2;\n this.max_h2 = 0;\n if (this.model.properties.height.units == 'data')\n this.max_h2 = this.max_height / 2;\n };\n OvalView.prototype._map_data = function () {\n if (this.model.properties.width.units == 'data')\n this.sw = this.sdist(this.renderer.xscale, this._x, this._width, 'center');\n else\n this.sw = this._width;\n if (this.model.properties.height.units == 'data')\n this.sh = this.sdist(this.renderer.yscale, this._y, this._height, 'center');\n else\n this.sh = this._height;\n };\n OvalView.prototype._render = function (ctx, indices, _a) {\n var sx = _a.sx, sy = _a.sy, sw = _a.sw, sh = _a.sh, _angle = _a._angle;\n for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {\n var i = indices_1[_i];\n if (isNaN(sx[i] + sy[i] + sw[i] + sh[i] + _angle[i]))\n continue;\n ctx.translate(sx[i], sy[i]);\n ctx.rotate(_angle[i]);\n ctx.beginPath();\n ctx.moveTo(0, -sh[i] / 2);\n ctx.bezierCurveTo(sw[i] / 2, -sh[i] / 2, sw[i] / 2, sh[i] / 2, 0, sh[i] / 2);\n ctx.bezierCurveTo(-sw[i] / 2, sh[i] / 2, -sw[i] / 2, -sh[i] / 2, 0, -sh[i] / 2);\n ctx.closePath();\n if (this.visuals.fill.doit) {\n this.visuals.fill.set_vectorize(ctx, i);\n ctx.fill();\n }\n if (this.visuals.line.doit) {\n this.visuals.line.set_vectorize(ctx, i);\n ctx.stroke();\n }\n ctx.rotate(-_angle[i]);\n ctx.translate(-sx[i], -sy[i]);\n }\n };\n OvalView.prototype.draw_legend_for_index = function (ctx, _a, index) {\n var x0 = _a.x0, y0 = _a.y0, x1 = _a.x1, y1 = _a.y1;\n var len = index + 1;\n var sx = new Array(len);\n sx[index] = (x0 + x1) / 2;\n var sy = new Array(len);\n sy[index] = (y0 + y1) / 2;\n var scale = this.sw[index] / this.sh[index];\n var d = Math.min(Math.abs(x1 - x0), Math.abs(y1 - y0)) * 0.8;\n var sw = new Array(len);\n var sh = new Array(len);\n if (scale > 1) {\n sw[index] = d;\n sh[index] = d / scale;\n } else {\n sw[index] = d * scale;\n sh[index] = d;\n }\n this._render(ctx, [index], {\n sx: sx,\n sy: sy,\n sw: sw,\n sh: sh\n }); // XXX\n };\n OvalView.prototype._bounds = function (_a) {\n var minX = _a.minX, maxX = _a.maxX, minY = _a.minY, maxY = _a.maxY;\n return {\n minX: minX - this.max_w2,\n maxX: maxX + this.max_w2,\n minY: minY - this.max_h2,\n maxY: maxY + this.max_h2\n };\n };\n return OvalView;\n }(xy_glyph_1.XYGlyphView);\n exports.OvalView = OvalView;\n var Oval = function (_super) {\n tslib_1.__extends(Oval, _super);\n function Oval(attrs) {\n return _super.call(this, attrs) || this;\n }\n Oval.initClass = function () {\n this.prototype.type = 'Oval';\n this.prototype.default_view = OvalView;\n this.mixins([\n 'line',\n 'fill'\n ]);\n this.define({\n angle: [\n p.AngleSpec,\n 0\n ],\n width: [p.DistanceSpec],\n height: [p.DistanceSpec]\n });\n };\n return Oval;\n }(xy_glyph_1.XYGlyph);\n exports.Oval = Oval;\n Oval.initClass(); \n}","/*models/glyphs/patch*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var xy_glyph_1 = require(135 /* ./xy_glyph */);\n var utils_1 = require(132 /* ./utils */);\n var PatchView = function (_super) {\n tslib_1.__extends(PatchView, _super);\n function PatchView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n PatchView.prototype._render = function (ctx, indices, _a) {\n var sx = _a.sx, sy = _a.sy;\n if (this.visuals.fill.doit) {\n this.visuals.fill.set_value(ctx);\n for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {\n var i = indices_1[_i];\n if (i == 0) {\n ctx.beginPath();\n ctx.moveTo(sx[i], sy[i]);\n continue;\n } else if (isNaN(sx[i] + sy[i])) {\n ctx.closePath();\n ctx.fill();\n ctx.beginPath();\n continue;\n } else\n ctx.lineTo(sx[i], sy[i]);\n }\n ctx.closePath();\n ctx.fill();\n }\n if (this.visuals.line.doit) {\n this.visuals.line.set_value(ctx);\n for (var _b = 0, indices_2 = indices; _b < indices_2.length; _b++) {\n var i = indices_2[_b];\n if (i == 0) {\n ctx.beginPath();\n ctx.moveTo(sx[i], sy[i]);\n continue;\n } else if (isNaN(sx[i] + sy[i])) {\n ctx.closePath();\n ctx.stroke();\n ctx.beginPath();\n continue;\n } else\n ctx.lineTo(sx[i], sy[i]);\n }\n ctx.closePath();\n return ctx.stroke();\n }\n };\n PatchView.prototype.draw_legend_for_index = function (ctx, bbox, index) {\n utils_1.generic_area_legend(this.visuals, ctx, bbox, index);\n };\n return PatchView;\n }(xy_glyph_1.XYGlyphView);\n exports.PatchView = PatchView;\n var Patch = function (_super) {\n tslib_1.__extends(Patch, _super);\n function Patch(attrs) {\n return _super.call(this, attrs) || this;\n }\n Patch.initClass = function () {\n this.prototype.type = 'Patch';\n this.prototype.default_view = PatchView;\n this.mixins([\n 'line',\n 'fill'\n ]);\n };\n return Patch;\n }(xy_glyph_1.XYGlyph);\n exports.Patch = Patch;\n Patch.initClass(); \n}","/*models/glyphs/patches*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var spatial_1 = require(37 /* core/util/spatial */);\n var glyph_1 = require(113 /* ./glyph */);\n var utils_1 = require(132 /* ./utils */);\n var array_1 = require(21 /* core/util/array */);\n var arrayable_1 = require(22 /* core/util/arrayable */);\n var types_1 = require(44 /* core/util/types */);\n var hittest = require(9 /* core/hittest */);\n var PatchesView = function (_super) {\n tslib_1.__extends(PatchesView, _super);\n function PatchesView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n PatchesView.prototype._build_discontinuous_object = function (nanned_qs) {\n // _s is this.xs, this.ys, this.sxs, this.sys\n // an object of n 1-d arrays in either data or screen units\n //\n // Each 1-d array gets broken to an array of arrays split\n // on any NaNs\n //\n // So:\n // { 0: [x11, x12],\n // 1: [x21, x22, x23],\n // 2: [x31, NaN, x32]\n // }\n // becomes\n // { 0: [[x11, x12]],\n // 1: [[x21, x22, x23]],\n // 2: [[x31],[x32]]\n // }\n var ds = [];\n for (var i = 0, end = nanned_qs.length; i < end; i++) {\n ds[i] = [];\n var qs = array_1.copy(nanned_qs[i]);\n while (qs.length > 0) {\n var nan_index = array_1.findLastIndex(qs, function (q) {\n return types_1.isStrictNaN(q);\n });\n var qs_part = void 0;\n if (nan_index >= 0)\n qs_part = qs.splice(nan_index);\n else {\n qs_part = qs;\n qs = [];\n }\n var denanned = qs_part.filter(function (q) {\n return !types_1.isStrictNaN(q);\n });\n ds[i].push(denanned);\n }\n }\n return ds;\n };\n PatchesView.prototype._index_data = function () {\n var xss = this._build_discontinuous_object(this._xs);\n // XXX\n var yss = this._build_discontinuous_object(this._ys);\n // XXX\n var points = [];\n for (var i = 0, end = this._xs.length; i < end; i++) {\n for (var j = 0, endj = xss[i].length; j < endj; j++) {\n var xs = xss[i][j];\n var ys = yss[i][j];\n if (xs.length == 0)\n continue;\n points.push({\n minX: array_1.min(xs),\n minY: array_1.min(ys),\n maxX: array_1.max(xs),\n maxY: array_1.max(ys),\n i: i\n });\n }\n }\n return new spatial_1.SpatialIndex(points);\n };\n PatchesView.prototype._mask_data = function () {\n var xr = this.renderer.plot_view.frame.x_ranges['default'];\n var _a = [\n xr.min,\n xr.max\n ], x0 = _a[0], x1 = _a[1];\n var yr = this.renderer.plot_view.frame.y_ranges['default'];\n var _b = [\n yr.min,\n yr.max\n ], y0 = _b[0], y1 = _b[1];\n var bbox = hittest.validate_bbox_coords([\n x0,\n x1\n ], [\n y0,\n y1\n ]);\n var indices = this.index.indices(bbox);\n // TODO (bev) this should be under test\n return indices.sort(function (a, b) {\n return a - b;\n });\n };\n PatchesView.prototype._render = function (ctx, indices, _a) {\n var sxs = _a.sxs, sys = _a.sys;\n // this.sxss and this.syss are used by _hit_point and sxc, syc\n // This is the earliest we can build them, and only build them once\n this.sxss = this._build_discontinuous_object(sxs);\n // XXX\n this.syss = this._build_discontinuous_object(sys);\n // XXX\n for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {\n var i = indices_1[_i];\n var _b = [\n sxs[i],\n sys[i]\n ], sx = _b[0], sy = _b[1];\n if (this.visuals.fill.doit) {\n this.visuals.fill.set_vectorize(ctx, i);\n for (var j = 0, end = sx.length; j < end; j++) {\n if (j == 0) {\n ctx.beginPath();\n ctx.moveTo(sx[j], sy[j]);\n continue;\n } else if (isNaN(sx[j] + sy[j])) {\n ctx.closePath();\n ctx.fill();\n ctx.beginPath();\n continue;\n } else\n ctx.lineTo(sx[j], sy[j]);\n }\n ctx.closePath();\n ctx.fill();\n }\n if (this.visuals.line.doit) {\n this.visuals.line.set_vectorize(ctx, i);\n for (var j = 0, end = sx.length; j < end; j++) {\n if (j == 0) {\n ctx.beginPath();\n ctx.moveTo(sx[j], sy[j]);\n continue;\n } else if (isNaN(sx[j] + sy[j])) {\n ctx.closePath();\n ctx.stroke();\n ctx.beginPath();\n continue;\n } else\n ctx.lineTo(sx[j], sy[j]);\n }\n ctx.closePath();\n ctx.stroke();\n }\n }\n };\n PatchesView.prototype._hit_point = function (geometry) {\n var sx = geometry.sx, sy = geometry.sy;\n var x = this.renderer.xscale.invert(sx);\n var y = this.renderer.yscale.invert(sy);\n var candidates = this.index.indices({\n minX: x,\n minY: y,\n maxX: x,\n maxY: y\n });\n var hits = [];\n for (var i = 0, end = candidates.length; i < end; i++) {\n var idx = candidates[i];\n var sxs = this.sxss[idx];\n var sys = this.syss[idx];\n for (var j = 0, endj = sxs.length; j < endj; j++) {\n if (hittest.point_in_poly(sx, sy, sxs[j], sys[j])) {\n hits.push(idx);\n }\n }\n }\n var result = hittest.create_empty_hit_test_result();\n result.indices = hits;\n return result;\n };\n PatchesView.prototype._get_snap_coord = function (array) {\n return arrayable_1.sum(array) / array.length;\n };\n PatchesView.prototype.scenterx = function (i, sx, sy) {\n if (this.sxss[i].length == 1) {\n // We don't have discontinuous objects so we're ok\n return this._get_snap_coord(this.sxs[i]);\n } else {\n // We have discontinuous objects, so we need to find which\n // one we're in, we can use point_in_poly again\n var sxs = this.sxss[i];\n var sys = this.syss[i];\n for (var j = 0, end = sxs.length; j < end; j++) {\n if (hittest.point_in_poly(sx, sy, sxs[j], sys[j]))\n return this._get_snap_coord(sxs[j]);\n }\n }\n throw new Error('unreachable code');\n };\n PatchesView.prototype.scentery = function (i, sx, sy) {\n if (this.syss[i].length == 1) {\n // We don't have discontinuous objects so we're ok\n return this._get_snap_coord(this.sys[i]);\n } else {\n // We have discontinuous objects, so we need to find which\n // one we're in, we can use point_in_poly again\n var sxs = this.sxss[i];\n var sys = this.syss[i];\n for (var j = 0, end = sxs.length; j < end; j++) {\n if (hittest.point_in_poly(sx, sy, sxs[j], sys[j]))\n return this._get_snap_coord(sys[j]);\n }\n }\n throw new Error('unreachable code');\n };\n PatchesView.prototype.draw_legend_for_index = function (ctx, bbox, index) {\n utils_1.generic_area_legend(this.visuals, ctx, bbox, index);\n };\n return PatchesView;\n }(glyph_1.GlyphView);\n exports.PatchesView = PatchesView;\n var Patches = function (_super) {\n tslib_1.__extends(Patches, _super);\n function Patches(attrs) {\n return _super.call(this, attrs) || this;\n }\n Patches.initClass = function () {\n this.prototype.type = 'Patches';\n this.prototype.default_view = PatchesView;\n this.coords([[\n 'xs',\n 'ys'\n ]]);\n this.mixins([\n 'line',\n 'fill'\n ]);\n };\n return Patches;\n }(glyph_1.Glyph);\n exports.Patches = Patches;\n Patches.initClass(); \n}","/*models/glyphs/quad*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var box_1 = require(110 /* ./box */);\n var QuadView = function (_super) {\n tslib_1.__extends(QuadView, _super);\n function QuadView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n QuadView.prototype.get_anchor_point = function (anchor, i, _spt) {\n var left = Math.min(this.sleft[i], this.sright[i]);\n var right = Math.max(this.sright[i], this.sleft[i]);\n var top = Math.min(this.stop[i], this.sbottom[i]);\n // screen coordinates !!!\n var bottom = Math.max(this.sbottom[i], this.stop[i]);\n //\n switch (anchor) {\n case 'top_left':\n return {\n x: left,\n y: top\n };\n case 'top_center':\n return {\n x: (left + right) / 2,\n y: top\n };\n case 'top_right':\n return {\n x: right,\n y: top\n };\n case 'center_right':\n return {\n x: right,\n y: (top + bottom) / 2\n };\n case 'bottom_right':\n return {\n x: right,\n y: bottom\n };\n case 'bottom_center':\n return {\n x: (left + right) / 2,\n y: bottom\n };\n case 'bottom_left':\n return {\n x: left,\n y: bottom\n };\n case 'center_left':\n return {\n x: left,\n y: (top + bottom) / 2\n };\n case 'center':\n return {\n x: (left + right) / 2,\n y: (top + bottom) / 2\n };\n default:\n return null;\n }\n };\n QuadView.prototype.scenterx = function (i) {\n return (this.sleft[i] + this.sright[i]) / 2;\n };\n QuadView.prototype.scentery = function (i) {\n return (this.stop[i] + this.sbottom[i]) / 2;\n };\n QuadView.prototype._index_data = function () {\n return this._index_box(this._right.length);\n };\n QuadView.prototype._lrtb = function (i) {\n var l = this._left[i];\n var r = this._right[i];\n var t = this._top[i];\n var b = this._bottom[i];\n return [\n l,\n r,\n t,\n b\n ];\n };\n return QuadView;\n }(box_1.BoxView);\n exports.QuadView = QuadView;\n var Quad = function (_super) {\n tslib_1.__extends(Quad, _super);\n function Quad(attrs) {\n return _super.call(this, attrs) || this;\n }\n Quad.initClass = function () {\n this.prototype.type = 'Quad';\n this.prototype.default_view = QuadView;\n this.coords([\n [\n 'right',\n 'bottom'\n ],\n [\n 'left',\n 'top'\n ]\n ]);\n };\n return Quad;\n }(box_1.Box);\n exports.Quad = Quad;\n Quad.initClass(); \n}","/*models/glyphs/quadratic*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var spatial_1 = require(37 /* core/util/spatial */);\n var glyph_1 = require(113 /* ./glyph */);\n var utils_1 = require(132 /* ./utils */);\n // Formula from: http://pomax.nihongoresources.com/pages/bezier/\n //\n // if segment is quadratic bezier do:\n // for both directions do:\n // if control between start and end, compute linear bounding box\n // otherwise, compute\n // bound = u(1-t)^2 + 2v(1-t)t + wt^2\n // (with t = ((u-v) / (u-2v+w)), with {u = start, v = control, w = end})\n // if control precedes start, min = bound, otherwise max = bound\n function _qbb(u, v, w) {\n if (v == (u + w) / 2)\n return [\n u,\n w\n ];\n else {\n var t = (u - v) / (u - 2 * v + w);\n var bd = u * Math.pow(1 - t, 2) + 2 * v * (1 - t) * t + w * Math.pow(t, 2);\n return [\n Math.min(u, w, bd),\n Math.max(u, w, bd)\n ];\n }\n }\n var QuadraticView = function (_super) {\n tslib_1.__extends(QuadraticView, _super);\n function QuadraticView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n QuadraticView.prototype._index_data = function () {\n var points = [];\n for (var i = 0, end = this._x0.length; i < end; i++) {\n if (isNaN(this._x0[i] + this._x1[i] + this._y0[i] + this._y1[i] + this._cx[i] + this._cy[i]))\n continue;\n var _a = _qbb(this._x0[i], this._cx[i], this._x1[i]), x0 = _a[0], x1 = _a[1];\n var _b = _qbb(this._y0[i], this._cy[i], this._y1[i]), y0 = _b[0], y1 = _b[1];\n points.push({\n minX: x0,\n minY: y0,\n maxX: x1,\n maxY: y1,\n i: i\n });\n }\n return new spatial_1.SpatialIndex(points);\n };\n QuadraticView.prototype._render = function (ctx, indices, _a) {\n var sx0 = _a.sx0, sy0 = _a.sy0, sx1 = _a.sx1, sy1 = _a.sy1, scx = _a.scx, scy = _a.scy;\n if (this.visuals.line.doit) {\n for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {\n var i = indices_1[_i];\n if (isNaN(sx0[i] + sy0[i] + sx1[i] + sy1[i] + scx[i] + scy[i]))\n continue;\n ctx.beginPath();\n ctx.moveTo(sx0[i], sy0[i]);\n ctx.quadraticCurveTo(scx[i], scy[i], sx1[i], sy1[i]);\n this.visuals.line.set_vectorize(ctx, i);\n ctx.stroke();\n }\n }\n };\n QuadraticView.prototype.draw_legend_for_index = function (ctx, bbox, index) {\n utils_1.generic_line_legend(this.visuals, ctx, bbox, index);\n };\n QuadraticView.prototype.scenterx = function () {\n throw new Error('not implemented');\n };\n QuadraticView.prototype.scentery = function () {\n throw new Error('not implemented');\n };\n return QuadraticView;\n }(glyph_1.GlyphView);\n exports.QuadraticView = QuadraticView;\n var Quadratic = function (_super) {\n tslib_1.__extends(Quadratic, _super);\n function Quadratic(attrs) {\n return _super.call(this, attrs) || this;\n }\n Quadratic.initClass = function () {\n this.prototype.type = 'Quadratic';\n this.prototype.default_view = QuadraticView;\n this.coords([\n [\n 'x0',\n 'y0'\n ],\n [\n 'x1',\n 'y1'\n ],\n [\n 'cx',\n 'cy'\n ]\n ]);\n this.mixins(['line']);\n };\n return Quadratic;\n }(glyph_1.Glyph);\n exports.Quadratic = Quadratic;\n Quadratic.initClass(); \n}","/*models/glyphs/ray*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var xy_glyph_1 = require(135 /* ./xy_glyph */);\n var utils_1 = require(132 /* ./utils */);\n var p = require(15 /* core/properties */);\n var RayView = function (_super) {\n tslib_1.__extends(RayView, _super);\n function RayView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n RayView.prototype._map_data = function () {\n if (this.model.properties.length.units == 'data')\n this.slength = this.sdist(this.renderer.xscale, this._x, this._length);\n else\n this.slength = this._length;\n };\n RayView.prototype._render = function (ctx, indices, _a) {\n var sx = _a.sx, sy = _a.sy, slength = _a.slength, _angle = _a._angle;\n if (this.visuals.line.doit) {\n var width = this.renderer.plot_view.frame._width.value;\n var height = this.renderer.plot_view.frame._height.value;\n var inf_len = 2 * (width + height);\n for (var i = 0, end = slength.length; i < end; i++) {\n if (slength[i] == 0)\n slength[i] = inf_len;\n }\n for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {\n var i = indices_1[_i];\n if (isNaN(sx[i] + sy[i] + _angle[i] + slength[i]))\n continue;\n ctx.translate(sx[i], sy[i]);\n ctx.rotate(_angle[i]);\n ctx.beginPath();\n ctx.moveTo(0, 0);\n ctx.lineTo(slength[i], 0);\n this.visuals.line.set_vectorize(ctx, i);\n ctx.stroke();\n ctx.rotate(-_angle[i]);\n ctx.translate(-sx[i], -sy[i]);\n }\n }\n };\n RayView.prototype.draw_legend_for_index = function (ctx, bbox, index) {\n utils_1.generic_line_legend(this.visuals, ctx, bbox, index);\n };\n return RayView;\n }(xy_glyph_1.XYGlyphView);\n exports.RayView = RayView;\n var Ray = function (_super) {\n tslib_1.__extends(Ray, _super);\n function Ray(attrs) {\n return _super.call(this, attrs) || this;\n }\n Ray.initClass = function () {\n this.prototype.type = 'Ray';\n this.prototype.default_view = RayView;\n this.mixins(['line']);\n this.define({\n length: [p.DistanceSpec],\n angle: [p.AngleSpec]\n });\n };\n return Ray;\n }(xy_glyph_1.XYGlyph);\n exports.Ray = Ray;\n Ray.initClass(); \n}","/*models/glyphs/rect*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var xy_glyph_1 = require(135 /* ./xy_glyph */);\n var utils_1 = require(132 /* ./utils */);\n var hittest = require(9 /* core/hittest */);\n var p = require(15 /* core/properties */);\n var arrayable_1 = require(22 /* core/util/arrayable */);\n var RectView = function (_super) {\n tslib_1.__extends(RectView, _super);\n function RectView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n RectView.prototype._set_data = function () {\n this.max_w2 = 0;\n if (this.model.properties.width.units == 'data')\n this.max_w2 = this.max_width / 2;\n this.max_h2 = 0;\n if (this.model.properties.height.units == 'data')\n this.max_h2 = this.max_height / 2;\n };\n RectView.prototype._map_data = function () {\n if (this.model.properties.width.units == 'data')\n _a = this._map_dist_corner_for_data_side_length(this._x, this._width, this.renderer.xscale), this.sw = _a[0], this.sx0 = _a[1];\n else {\n this.sw = this._width;\n var n_1 = this.sx.length;\n this.sx0 = new Float64Array(n_1);\n for (var i = 0; i < n_1; i++)\n this.sx0[i] = this.sx[i] - this.sw[i] / 2;\n }\n if (this.model.properties.height.units == 'data')\n _b = this._map_dist_corner_for_data_side_length(this._y, this._height, this.renderer.yscale), this.sh = _b[0], this.sy1 = _b[1];\n else {\n this.sh = this._height;\n var n_2 = this.sy.length;\n this.sy1 = new Float64Array(n_2);\n for (var i = 0; i < n_2; i++)\n this.sy1[i] = this.sy[i] - this.sh[i] / 2;\n }\n var n = this.sw.length;\n this.ssemi_diag = new Float64Array(n);\n for (var i = 0; i < n; i++)\n this.ssemi_diag[i] = Math.sqrt(this.sw[i] / 2 * this.sw[i] / 2 + this.sh[i] / 2 * this.sh[i] / 2);\n var _a, _b;\n };\n RectView.prototype._render = function (ctx, indices, _a) {\n var sx = _a.sx, sy = _a.sy, sx0 = _a.sx0, sy1 = _a.sy1, sw = _a.sw, sh = _a.sh, _angle = _a._angle;\n if (this.visuals.fill.doit) {\n for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {\n var i = indices_1[_i];\n if (isNaN(sx[i] + sy[i] + sx0[i] + sy1[i] + sw[i] + sh[i] + _angle[i]))\n continue;\n //no need to test the return value, we call fillRect for every glyph anyway\n this.visuals.fill.set_vectorize(ctx, i);\n if (_angle[i]) {\n ctx.translate(sx[i], sy[i]);\n ctx.rotate(_angle[i]);\n ctx.fillRect(-sw[i] / 2, -sh[i] / 2, sw[i], sh[i]);\n ctx.rotate(-_angle[i]);\n ctx.translate(-sx[i], -sy[i]);\n } else\n ctx.fillRect(sx0[i], sy1[i], sw[i], sh[i]);\n }\n }\n if (this.visuals.line.doit) {\n ctx.beginPath();\n for (var _b = 0, indices_2 = indices; _b < indices_2.length; _b++) {\n var i = indices_2[_b];\n if (isNaN(sx[i] + sy[i] + sx0[i] + sy1[i] + sw[i] + sh[i] + _angle[i]))\n continue;\n // fillRect does not fill zero-height or -width rects, but rect(...)\n // does seem to stroke them (1px wide or tall). Explicitly ignore rects\n // with zero width or height to be consistent\n if (sw[i] == 0 || sh[i] == 0)\n continue;\n if (_angle[i]) {\n ctx.translate(sx[i], sy[i]);\n ctx.rotate(_angle[i]);\n ctx.rect(-sw[i] / 2, -sh[i] / 2, sw[i], sh[i]);\n ctx.rotate(-_angle[i]);\n ctx.translate(-sx[i], -sy[i]);\n } else\n ctx.rect(sx0[i], sy1[i], sw[i], sh[i]);\n this.visuals.line.set_vectorize(ctx, i);\n ctx.stroke();\n ctx.beginPath();\n }\n ctx.stroke();\n }\n };\n RectView.prototype._hit_rect = function (geometry) {\n return this._hit_rect_against_index(geometry);\n };\n RectView.prototype._hit_point = function (geometry) {\n var sx = geometry.sx, sy = geometry.sy;\n var x = this.renderer.xscale.invert(sx);\n var y = this.renderer.yscale.invert(sy);\n var scenter_x = [];\n for (var i = 0, end = this.sx0.length; i < end; i++) {\n scenter_x.push(this.sx0[i] + this.sw[i] / 2);\n }\n var scenter_y = [];\n for (var i = 0, end = this.sy1.length; i < end; i++) {\n scenter_y.push(this.sy1[i] + this.sh[i] / 2);\n }\n var max_x2_ddist = arrayable_1.max(this._ddist(0, scenter_x, this.ssemi_diag));\n var max_y2_ddist = arrayable_1.max(this._ddist(1, scenter_y, this.ssemi_diag));\n var x0 = x - max_x2_ddist;\n var x1 = x + max_x2_ddist;\n var y0 = y - max_y2_ddist;\n var y1 = y + max_y2_ddist;\n var hits = [];\n var bbox = hittest.validate_bbox_coords([\n x0,\n x1\n ], [\n y0,\n y1\n ]);\n for (var _i = 0, _a = this.index.indices(bbox); _i < _a.length; _i++) {\n var i = _a[_i];\n var height_in = void 0, width_in = void 0;\n if (this._angle[i]) {\n var s = Math.sin(-this._angle[i]);\n var c = Math.cos(-this._angle[i]);\n var px = c * (sx - this.sx[i]) - s * (sy - this.sy[i]) + this.sx[i];\n var py = s * (sx - this.sx[i]) + c * (sy - this.sy[i]) + this.sy[i];\n sx = px;\n sy = py;\n width_in = Math.abs(this.sx[i] - sx) <= this.sw[i] / 2;\n height_in = Math.abs(this.sy[i] - sy) <= this.sh[i] / 2;\n } else {\n width_in = sx - this.sx0[i] <= this.sw[i] && sx - this.sx0[i] >= 0;\n height_in = sy - this.sy1[i] <= this.sh[i] && sy - this.sy1[i] >= 0;\n }\n if (height_in && width_in)\n hits.push(i);\n }\n var result = hittest.create_empty_hit_test_result();\n result.indices = hits;\n return result;\n };\n RectView.prototype._map_dist_corner_for_data_side_length = function (coord, side_length, scale) {\n var n = coord.length;\n var pt0 = new Float64Array(n);\n var pt1 = new Float64Array(n);\n for (var i = 0; i < n; i++) {\n pt0[i] = Number(coord[i]) - side_length[i] / 2;\n pt1[i] = Number(coord[i]) + side_length[i] / 2;\n }\n var spt0 = scale.v_compute(pt0);\n var spt1 = scale.v_compute(pt1);\n var sside_length = this.sdist(scale, pt0, side_length, 'edge', this.model.dilate);\n var spt_corner = spt0;\n for (var i = 0, end = spt0.length; i < end; i++) {\n if (spt0[i] != spt1[i]) {\n spt_corner = spt0[i] < spt1[i] ? spt0 : spt1;\n break;\n }\n }\n return [\n sside_length,\n spt_corner\n ];\n };\n RectView.prototype._ddist = function (dim, spts, spans) {\n var scale = dim == 0 ? this.renderer.xscale : this.renderer.yscale;\n var spt0 = spts;\n var m = spt0.length;\n var spt1 = new Float64Array(m);\n for (var i = 0; i < m; i++)\n spt1[i] = spt0[i] + spans[i];\n var pt0 = scale.v_invert(spt0);\n var pt1 = scale.v_invert(spt1);\n var n = pt0.length;\n var ddist = new Float64Array(n);\n for (var i = 0; i < n; i++)\n ddist[i] = Math.abs(pt1[i] - pt0[i]);\n return ddist;\n };\n RectView.prototype.draw_legend_for_index = function (ctx, bbox, index) {\n utils_1.generic_area_legend(this.visuals, ctx, bbox, index);\n };\n RectView.prototype._bounds = function (_a) {\n var minX = _a.minX, maxX = _a.maxX, minY = _a.minY, maxY = _a.maxY;\n return {\n minX: minX - this.max_w2,\n maxX: maxX + this.max_w2,\n minY: minY - this.max_h2,\n maxY: maxY + this.max_h2\n };\n };\n return RectView;\n }(xy_glyph_1.XYGlyphView);\n exports.RectView = RectView;\n var Rect = function (_super) {\n tslib_1.__extends(Rect, _super);\n function Rect(attrs) {\n return _super.call(this, attrs) || this;\n }\n Rect.initClass = function () {\n this.prototype.type = 'Rect';\n this.prototype.default_view = RectView;\n this.mixins([\n 'line',\n 'fill'\n ]);\n this.define({\n angle: [\n p.AngleSpec,\n 0\n ],\n width: [p.DistanceSpec],\n height: [p.DistanceSpec],\n dilate: [\n p.Bool,\n false\n ]\n });\n };\n return Rect;\n }(xy_glyph_1.XYGlyph);\n exports.Rect = Rect;\n Rect.initClass(); \n}","/*models/glyphs/segment*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var hittest = require(9 /* core/hittest */);\n var spatial_1 = require(37 /* core/util/spatial */);\n var glyph_1 = require(113 /* ./glyph */);\n var utils_1 = require(132 /* ./utils */);\n var SegmentView = function (_super) {\n tslib_1.__extends(SegmentView, _super);\n function SegmentView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n SegmentView.prototype._index_data = function () {\n var points = [];\n for (var i = 0, end = this._x0.length; i < end; i++) {\n var x0 = this._x0[i];\n var x1 = this._x1[i];\n var y0 = this._y0[i];\n var y1 = this._y1[i];\n if (!isNaN(x0 + x1 + y0 + y1)) {\n points.push({\n minX: Math.min(x0, x1),\n minY: Math.min(y0, y1),\n maxX: Math.max(x0, x1),\n maxY: Math.max(y0, y1),\n i: i\n });\n }\n }\n return new spatial_1.SpatialIndex(points);\n };\n SegmentView.prototype._render = function (ctx, indices, _a) {\n var sx0 = _a.sx0, sy0 = _a.sy0, sx1 = _a.sx1, sy1 = _a.sy1;\n if (this.visuals.line.doit) {\n for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {\n var i = indices_1[_i];\n if (isNaN(sx0[i] + sy0[i] + sx1[i] + sy1[i]))\n continue;\n ctx.beginPath();\n ctx.moveTo(sx0[i], sy0[i]);\n ctx.lineTo(sx1[i], sy1[i]);\n this.visuals.line.set_vectorize(ctx, i);\n ctx.stroke();\n }\n }\n };\n SegmentView.prototype._hit_point = function (geometry) {\n var sx = geometry.sx, sy = geometry.sy;\n var point = {\n x: sx,\n y: sy\n };\n var hits = [];\n var lw_voffset = 2;\n // FIXME: Use maximum of segments line_width/2 instead of magic constant 2\n var _a = this.renderer.xscale.r_invert(sx - lw_voffset, sx + lw_voffset), minX = _a[0], maxX = _a[1];\n var _b = this.renderer.yscale.r_invert(sy - lw_voffset, sy + lw_voffset), minY = _b[0], maxY = _b[1];\n var candidates = this.index.indices({\n minX: minX,\n minY: minY,\n maxX: maxX,\n maxY: maxY\n });\n for (var _i = 0, candidates_1 = candidates; _i < candidates_1.length; _i++) {\n var i = candidates_1[_i];\n var threshold2 = Math.pow(Math.max(2, this.visuals.line.cache_select('line_width', i) / 2), 2);\n var p0 = {\n x: this.sx0[i],\n y: this.sy0[i]\n };\n var p1 = {\n x: this.sx1[i],\n y: this.sy1[i]\n };\n var dist2 = hittest.dist_to_segment_squared(point, p0, p1);\n if (dist2 < threshold2)\n hits.push(i);\n }\n var result = hittest.create_empty_hit_test_result();\n result.indices = hits;\n return result;\n };\n SegmentView.prototype._hit_span = function (geometry) {\n var _a = this.renderer.plot_view.frame.bbox.ranges, hr = _a[0], vr = _a[1];\n var sx = geometry.sx, sy = geometry.sy;\n var v0;\n var v1;\n var val;\n if (geometry.direction == 'v') {\n val = this.renderer.yscale.invert(sy);\n _b = [\n this._y0,\n this._y1\n ], v0 = _b[0], v1 = _b[1];\n } else {\n val = this.renderer.xscale.invert(sx);\n _c = [\n this._x0,\n this._x1\n ], v0 = _c[0], v1 = _c[1];\n }\n var hits = [];\n var _d = this.renderer.xscale.r_invert(hr.start, hr.end), minX = _d[0], maxX = _d[1];\n var _e = this.renderer.yscale.r_invert(vr.start, vr.end), minY = _e[0], maxY = _e[1];\n var candidates = this.index.indices({\n minX: minX,\n minY: minY,\n maxX: maxX,\n maxY: maxY\n });\n for (var _i = 0, candidates_2 = candidates; _i < candidates_2.length; _i++) {\n var i = candidates_2[_i];\n if (v0[i] <= val && val <= v1[i] || v1[i] <= val && val <= v0[i])\n hits.push(i);\n }\n var result = hittest.create_empty_hit_test_result();\n result.indices = hits;\n return result;\n var _b, _c;\n };\n SegmentView.prototype.scenterx = function (i) {\n return (this.sx0[i] + this.sx1[i]) / 2;\n };\n SegmentView.prototype.scentery = function (i) {\n return (this.sy0[i] + this.sy1[i]) / 2;\n };\n SegmentView.prototype.draw_legend_for_index = function (ctx, bbox, index) {\n utils_1.generic_line_legend(this.visuals, ctx, bbox, index);\n };\n return SegmentView;\n }(glyph_1.GlyphView);\n exports.SegmentView = SegmentView;\n var Segment = function (_super) {\n tslib_1.__extends(Segment, _super);\n function Segment(attrs) {\n return _super.call(this, attrs) || this;\n }\n Segment.initClass = function () {\n this.prototype.type = 'Segment';\n this.prototype.default_view = SegmentView;\n this.coords([\n [\n 'x0',\n 'y0'\n ],\n [\n 'x1',\n 'y1'\n ]\n ]);\n this.mixins(['line']);\n };\n return Segment;\n }(glyph_1.Glyph);\n exports.Segment = Segment;\n Segment.initClass(); \n}","/*models/glyphs/step*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var xy_glyph_1 = require(135 /* ./xy_glyph */);\n var utils_1 = require(132 /* ./utils */);\n var p = require(15 /* core/properties */);\n var StepView = function (_super) {\n tslib_1.__extends(StepView, _super);\n function StepView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n StepView.prototype._render = function (ctx, indices, _a) {\n var sx = _a.sx, sy = _a.sy;\n this.visuals.line.set_value(ctx);\n var L = indices.length;\n if (L < 2)\n return;\n ctx.beginPath();\n ctx.moveTo(sx[0], sy[0]);\n for (var i = 1; i < L; i++) {\n var x1 = void 0, x2 = void 0;\n var y1 = void 0, y2 = void 0;\n switch (this.model.mode) {\n case 'before': {\n ;\n _b = [\n sx[i - 1],\n sy[i]\n ], x1 = _b[0], y1 = _b[1];\n _c = [\n sx[i],\n sy[i]\n ], x2 = _c[0], y2 = _c[1];\n break;\n }\n case 'after': {\n ;\n _d = [\n sx[i],\n sy[i - 1]\n ], x1 = _d[0], y1 = _d[1];\n _e = [\n sx[i],\n sy[i]\n ], x2 = _e[0], y2 = _e[1];\n break;\n }\n case 'center': {\n var xm = (sx[i - 1] + sx[i]) / 2;\n _f = [\n xm,\n sy[i - 1]\n ], x1 = _f[0], y1 = _f[1];\n _g = [\n xm,\n sy[i]\n ], x2 = _g[0], y2 = _g[1];\n break;\n }\n default:\n throw new Error('unexpected');\n }\n ctx.lineTo(x1, y1);\n ctx.lineTo(x2, y2);\n }\n ctx.lineTo(sx[L - 1], sy[L - 1]);\n ctx.stroke();\n var _b, _c, _d, _e, _f, _g;\n };\n StepView.prototype.draw_legend_for_index = function (ctx, bbox, index) {\n utils_1.generic_line_legend(this.visuals, ctx, bbox, index);\n };\n return StepView;\n }(xy_glyph_1.XYGlyphView);\n exports.StepView = StepView;\n var Step = function (_super) {\n tslib_1.__extends(Step, _super);\n function Step(attrs) {\n return _super.call(this, attrs) || this;\n }\n Step.initClass = function () {\n this.prototype.type = 'Step';\n this.prototype.default_view = StepView;\n this.mixins(['line']);\n this.define({\n mode: [\n p.StepMode,\n 'before'\n ]\n });\n };\n return Step;\n }(xy_glyph_1.XYGlyph);\n exports.Step = Step;\n Step.initClass(); \n}","/*models/glyphs/text*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var xy_glyph_1 = require(135 /* ./xy_glyph */);\n var p = require(15 /* core/properties */);\n var text_1 = require(41 /* core/util/text */);\n var TextView = function (_super) {\n tslib_1.__extends(TextView, _super);\n function TextView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n TextView.prototype._render = function (ctx, indices, _a) {\n var sx = _a.sx, sy = _a.sy, _x_offset = _a._x_offset, _y_offset = _a._y_offset, _angle = _a._angle, _text = _a._text;\n for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {\n var i = indices_1[_i];\n if (isNaN(sx[i] + sy[i] + _x_offset[i] + _y_offset[i] + _angle[i]) || _text[i] == null)\n continue;\n if (this.visuals.text.doit) {\n var text = '' + _text[i];\n ctx.save();\n ctx.translate(sx[i] + _x_offset[i], sy[i] + _y_offset[i]);\n ctx.rotate(_angle[i]);\n this.visuals.text.set_vectorize(ctx, i);\n if (text.indexOf('\\n') == -1)\n ctx.fillText(text, 0, 0);\n else {\n var lines = text.split('\\n');\n var font = this.visuals.text.cache_select('font', i);\n var height = text_1.get_text_height(font).height;\n var line_height = this.visuals.text.text_line_height.value() * height;\n var block_height = line_height * lines.length;\n var baseline = this.visuals.text.cache_select('text_baseline', i);\n var y = void 0;\n switch (baseline) {\n case 'top': {\n y = 0;\n break;\n }\n case 'middle': {\n y = -block_height / 2 + line_height / 2;\n break;\n }\n case 'bottom': {\n y = -block_height + line_height;\n break;\n }\n default: {\n y = 0;\n console.warn('\\'' + baseline + '\\' baseline not supported with multi line text');\n }\n }\n for (var _b = 0, lines_1 = lines; _b < lines_1.length; _b++) {\n var line = lines_1[_b];\n ctx.fillText(line, 0, y);\n y += line_height;\n }\n }\n ctx.restore();\n }\n }\n };\n return TextView;\n }(xy_glyph_1.XYGlyphView);\n exports.TextView = TextView;\n var Text = function (_super) {\n tslib_1.__extends(Text, _super);\n function Text(attrs) {\n return _super.call(this, attrs) || this;\n }\n Text.initClass = function () {\n this.prototype.type = 'Text';\n this.prototype.default_view = TextView;\n this.mixins(['text']);\n this.define({\n text: [\n p.StringSpec,\n { field: 'text' }\n ],\n angle: [\n p.AngleSpec,\n 0\n ],\n x_offset: [\n p.NumberSpec,\n 0\n ],\n y_offset: [\n p.NumberSpec,\n 0\n ]\n });\n };\n return Text;\n }(xy_glyph_1.XYGlyph);\n exports.Text = Text;\n Text.initClass(); \n}","/*models/glyphs/utils*/\nfunction _(require, module, exports) {\n function generic_line_legend(visuals, ctx, _a, index) {\n var x0 = _a.x0, x1 = _a.x1, y0 = _a.y0, y1 = _a.y1;\n ctx.save();\n ctx.beginPath();\n ctx.moveTo(x0, (y0 + y1) / 2);\n ctx.lineTo(x1, (y0 + y1) / 2);\n if (visuals.line.doit) {\n visuals.line.set_vectorize(ctx, index);\n ctx.stroke();\n }\n ctx.restore();\n }\n exports.generic_line_legend = generic_line_legend;\n function generic_area_legend(visuals, ctx, _a, index) {\n var x0 = _a.x0, x1 = _a.x1, y0 = _a.y0, y1 = _a.y1;\n var w = Math.abs(x1 - x0);\n var dw = w * 0.1;\n var h = Math.abs(y1 - y0);\n var dh = h * 0.1;\n var sx0 = x0 + dw;\n var sx1 = x1 - dw;\n var sy0 = y0 + dh;\n var sy1 = y1 - dh;\n if (visuals.fill.doit) {\n visuals.fill.set_vectorize(ctx, index);\n ctx.fillRect(sx0, sy0, sx1 - sx0, sy1 - sy0);\n }\n if (visuals.line.doit) {\n ctx.beginPath();\n ctx.rect(sx0, sy0, sx1 - sx0, sy1 - sy0);\n visuals.line.set_vectorize(ctx, index);\n ctx.stroke();\n }\n }\n exports.generic_area_legend = generic_area_legend; \n}","/*models/glyphs/vbar*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var box_1 = require(110 /* ./box */);\n var p = require(15 /* core/properties */);\n var VBarView = function (_super) {\n tslib_1.__extends(VBarView, _super);\n function VBarView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n VBarView.prototype.scenterx = function (i) {\n return this.sx[i];\n };\n VBarView.prototype.scentery = function (i) {\n return (this.stop[i] + this.sbottom[i]) / 2;\n };\n VBarView.prototype._index_data = function () {\n return this._index_box(this._x.length);\n };\n VBarView.prototype._lrtb = function (i) {\n var l = this._x[i] - this._width[i] / 2;\n var r = this._x[i] + this._width[i] / 2;\n var t = Math.max(this._top[i], this._bottom[i]);\n var b = Math.min(this._top[i], this._bottom[i]);\n return [\n l,\n r,\n t,\n b\n ];\n };\n VBarView.prototype._map_data = function () {\n this.sx = this.renderer.xscale.v_compute(this._x);\n this.sw = this.sdist(this.renderer.xscale, this._x, this._width, 'center');\n this.stop = this.renderer.yscale.v_compute(this._top);\n this.sbottom = this.renderer.yscale.v_compute(this._bottom);\n var n = this.sx.length;\n this.sleft = new Float64Array(n);\n this.sright = new Float64Array(n);\n for (var i = 0; i < n; i++) {\n this.sleft[i] = this.sx[i] - this.sw[i] / 2;\n this.sright[i] = this.sx[i] + this.sw[i] / 2;\n }\n };\n return VBarView;\n }(box_1.BoxView);\n exports.VBarView = VBarView;\n var VBar = function (_super) {\n tslib_1.__extends(VBar, _super);\n function VBar(attrs) {\n return _super.call(this, attrs) || this;\n }\n VBar.initClass = function () {\n this.prototype.type = 'VBar';\n this.prototype.default_view = VBarView;\n this.coords([[\n 'x',\n 'bottom'\n ]]);\n this.define({\n width: [p.DistanceSpec],\n top: [p.NumberSpec]\n });\n this.override({ bottom: 0 });\n };\n return VBar;\n }(box_1.Box);\n exports.VBar = VBar;\n VBar.initClass(); \n}","/*models/glyphs/wedge*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var xy_glyph_1 = require(135 /* ./xy_glyph */);\n var utils_1 = require(132 /* ./utils */);\n var hittest = require(9 /* core/hittest */);\n var p = require(15 /* core/properties */);\n var math_1 = require(31 /* core/util/math */);\n var WedgeView = function (_super) {\n tslib_1.__extends(WedgeView, _super);\n function WedgeView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n WedgeView.prototype._map_data = function () {\n if (this.model.properties.radius.units == 'data')\n this.sradius = this.sdist(this.renderer.xscale, this._x, this._radius);\n else\n this.sradius = this._radius;\n };\n WedgeView.prototype._render = function (ctx, indices, _a) {\n var sx = _a.sx, sy = _a.sy, sradius = _a.sradius, _start_angle = _a._start_angle, _end_angle = _a._end_angle;\n var direction = this.model.properties.direction.value();\n for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {\n var i = indices_1[_i];\n if (isNaN(sx[i] + sy[i] + sradius[i] + _start_angle[i] + _end_angle[i]))\n continue;\n ctx.beginPath();\n ctx.arc(sx[i], sy[i], sradius[i], _start_angle[i], _end_angle[i], direction);\n ctx.lineTo(sx[i], sy[i]);\n ctx.closePath();\n if (this.visuals.fill.doit) {\n this.visuals.fill.set_vectorize(ctx, i);\n ctx.fill();\n }\n if (this.visuals.line.doit) {\n this.visuals.line.set_vectorize(ctx, i);\n ctx.stroke();\n }\n }\n };\n WedgeView.prototype._hit_point = function (geometry) {\n var dist, sx0, sx1, sy0, sy1, x0, x1, y0, y1;\n var sx = geometry.sx, sy = geometry.sy;\n var x = this.renderer.xscale.invert(sx);\n var y = this.renderer.yscale.invert(sy);\n // check radius first\n if (this.model.properties.radius.units === 'data') {\n x0 = x - this.max_radius;\n x1 = x + this.max_radius;\n y0 = y - this.max_radius;\n y1 = y + this.max_radius;\n } else {\n sx0 = sx - this.max_radius;\n sx1 = sx + this.max_radius;\n _a = this.renderer.xscale.r_invert(sx0, sx1), x0 = _a[0], x1 = _a[1];\n sy0 = sy - this.max_radius;\n sy1 = sy + this.max_radius;\n _b = this.renderer.yscale.r_invert(sy0, sy1), y0 = _b[0], y1 = _b[1];\n }\n var candidates = [];\n var bbox = hittest.validate_bbox_coords([\n x0,\n x1\n ], [\n y0,\n y1\n ]);\n for (var _i = 0, _c = this.index.indices(bbox); _i < _c.length; _i++) {\n var i = _c[_i];\n var r2 = Math.pow(this.sradius[i], 2);\n _d = this.renderer.xscale.r_compute(x, this._x[i]), sx0 = _d[0], sx1 = _d[1];\n _e = this.renderer.yscale.r_compute(y, this._y[i]), sy0 = _e[0], sy1 = _e[1];\n dist = Math.pow(sx0 - sx1, 2) + Math.pow(sy0 - sy1, 2);\n if (dist <= r2) {\n candidates.push([\n i,\n dist\n ]);\n }\n }\n var direction = this.model.properties.direction.value();\n var hits = [];\n for (var _f = 0, candidates_1 = candidates; _f < candidates_1.length; _f++) {\n var _g = candidates_1[_f], i = _g[0], dist_1 = _g[1];\n // NOTE: minus the angle because JS uses non-mathy convention for angles\n var angle = Math.atan2(sy - this.sy[i], sx - this.sx[i]);\n if (math_1.angle_between(-angle, -this._start_angle[i], -this._end_angle[i], direction)) {\n hits.push([\n i,\n dist_1\n ]);\n }\n }\n return hittest.create_hit_test_result_from_hits(hits);\n var _a, _b, _d, _e;\n };\n WedgeView.prototype.draw_legend_for_index = function (ctx, bbox, index) {\n utils_1.generic_area_legend(this.visuals, ctx, bbox, index);\n };\n return WedgeView;\n }(xy_glyph_1.XYGlyphView);\n exports.WedgeView = WedgeView;\n var Wedge = function (_super) {\n tslib_1.__extends(Wedge, _super);\n function Wedge(attrs) {\n return _super.call(this, attrs) || this;\n }\n Wedge.initClass = function () {\n this.prototype.type = 'Wedge';\n this.prototype.default_view = WedgeView;\n this.mixins([\n 'line',\n 'fill'\n ]);\n this.define({\n direction: [\n p.Direction,\n 'anticlock'\n ],\n radius: [p.DistanceSpec],\n start_angle: [p.AngleSpec],\n end_angle: [p.AngleSpec]\n });\n };\n return Wedge;\n }(xy_glyph_1.XYGlyph);\n exports.Wedge = Wedge;\n Wedge.initClass(); \n}","/*models/glyphs/xy_glyph*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var spatial_1 = require(37 /* core/util/spatial */);\n var glyph_1 = require(113 /* ./glyph */);\n var XYGlyphView = function (_super) {\n tslib_1.__extends(XYGlyphView, _super);\n function XYGlyphView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n XYGlyphView.prototype._index_data = function () {\n var points = [];\n for (var i = 0, end = this._x.length; i < end; i++) {\n var x = this._x[i];\n var y = this._y[i];\n if (isNaN(x + y) || !isFinite(x + y))\n continue;\n points.push({\n minX: x,\n minY: y,\n maxX: x,\n maxY: y,\n i: i\n });\n }\n return new spatial_1.SpatialIndex(points);\n };\n XYGlyphView.prototype.scenterx = function (i) {\n return this.sx[i];\n };\n XYGlyphView.prototype.scentery = function (i) {\n return this.sy[i];\n };\n return XYGlyphView;\n }(glyph_1.GlyphView);\n exports.XYGlyphView = XYGlyphView;\n var XYGlyph = function (_super) {\n tslib_1.__extends(XYGlyph, _super);\n function XYGlyph(attrs) {\n return _super.call(this, attrs) || this;\n }\n XYGlyph.initClass = function () {\n this.prototype.type = 'XYGlyph';\n this.coords([[\n 'x',\n 'y'\n ]]);\n };\n return XYGlyph;\n }(glyph_1.Glyph);\n exports.XYGlyph = XYGlyph;\n XYGlyph.initClass(); \n}","/*models/graphs/graph_hit_test_policy*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var model_1 = require(53 /* ../../model */);\n var arrayable_1 = require(22 /* core/util/arrayable */);\n var array_1 = require(21 /* core/util/array */);\n var hittest_1 = require(9 /* core/hittest */);\n var GraphHitTestPolicy = function (_super) {\n tslib_1.__extends(GraphHitTestPolicy, _super);\n function GraphHitTestPolicy(attrs) {\n return _super.call(this, attrs) || this;\n }\n GraphHitTestPolicy.initClass = function () {\n this.prototype.type = 'GraphHitTestPolicy';\n };\n GraphHitTestPolicy.prototype._hit_test_nodes = function (geometry, graph_view) {\n if (!graph_view.model.visible)\n return null;\n var hit_test_result = graph_view.node_view.glyph.hit_test(geometry);\n if (hit_test_result == null)\n return null;\n else\n return graph_view.node_view.model.view.convert_selection_from_subset(hit_test_result);\n };\n GraphHitTestPolicy.prototype._hit_test_edges = function (geometry, graph_view) {\n if (!graph_view.model.visible)\n return null;\n var hit_test_result = graph_view.edge_view.glyph.hit_test(geometry);\n if (hit_test_result == null)\n return null;\n else\n return graph_view.edge_view.model.view.convert_selection_from_subset(hit_test_result);\n };\n return GraphHitTestPolicy;\n }(model_1.Model);\n exports.GraphHitTestPolicy = GraphHitTestPolicy;\n var NodesOnly = function (_super) {\n tslib_1.__extends(NodesOnly, _super);\n function NodesOnly(attrs) {\n return _super.call(this, attrs) || this;\n }\n NodesOnly.initClass = function () {\n this.prototype.type = 'NodesOnly';\n };\n NodesOnly.prototype.hit_test = function (geometry, graph_view) {\n return this._hit_test_nodes(geometry, graph_view);\n };\n NodesOnly.prototype.do_selection = function (hit_test_result, graph, final, append) {\n if (hit_test_result == null)\n return false;\n var node_selection = graph.node_renderer.data_source.selected;\n node_selection.update(hit_test_result, final, append);\n graph.node_renderer.data_source._select.emit();\n return !node_selection.is_empty();\n };\n NodesOnly.prototype.do_inspection = function (hit_test_result, geometry, graph_view, final, append) {\n if (hit_test_result == null)\n return false;\n var node_inspection = graph_view.model.get_selection_manager().get_or_create_inspector(graph_view.node_view.model);\n node_inspection.update(hit_test_result, final, append);\n // silently set inspected attr to avoid triggering data_source.change event and rerender\n graph_view.node_view.model.data_source.setv({ inspected: node_inspection }, { silent: true });\n graph_view.node_view.model.data_source.inspect.emit([\n graph_view.node_view,\n { geometry: geometry }\n ]);\n return !node_inspection.is_empty();\n };\n return NodesOnly;\n }(GraphHitTestPolicy);\n exports.NodesOnly = NodesOnly;\n NodesOnly.initClass();\n var NodesAndLinkedEdges = function (_super) {\n tslib_1.__extends(NodesAndLinkedEdges, _super);\n function NodesAndLinkedEdges(attrs) {\n return _super.call(this, attrs) || this;\n }\n NodesAndLinkedEdges.initClass = function () {\n this.prototype.type = 'NodesAndLinkedEdges';\n };\n NodesAndLinkedEdges.prototype.hit_test = function (geometry, graph_view) {\n return this._hit_test_nodes(geometry, graph_view);\n };\n NodesAndLinkedEdges.prototype.get_linked_edges = function (node_source, edge_source, mode) {\n var node_indices = [];\n if (mode == 'selection') {\n node_indices = node_source.selected.indices.map(function (i) {\n return node_source.data.index[i];\n });\n } else if (mode == 'inspection') {\n node_indices = node_source.inspected.indices.map(function (i) {\n return node_source.data.index[i];\n });\n }\n var edge_indices = [];\n for (var i = 0; i < edge_source.data.start.length; i++) {\n if (array_1.contains(node_indices, edge_source.data.start[i]) || array_1.contains(node_indices, edge_source.data.end[i]))\n edge_indices.push(i);\n }\n var linked_edges = hittest_1.create_empty_hit_test_result();\n for (var _i = 0, edge_indices_1 = edge_indices; _i < edge_indices_1.length; _i++) {\n var i = edge_indices_1[_i];\n linked_edges.multiline_indices[i] = [0]; //currently only supports 2-element multilines, so this is all of it\n }\n linked_edges.indices = edge_indices;\n return linked_edges;\n };\n NodesAndLinkedEdges.prototype.do_selection = function (hit_test_result, graph, final, append) {\n if (hit_test_result == null)\n return false;\n var node_selection = graph.node_renderer.data_source.selected;\n node_selection.update(hit_test_result, final, append);\n var edge_selection = graph.edge_renderer.data_source.selected;\n var linked_edges_selection = this.get_linked_edges(graph.node_renderer.data_source, graph.edge_renderer.data_source, 'selection');\n edge_selection.update(linked_edges_selection, final, append);\n graph.node_renderer.data_source._select.emit();\n return !node_selection.is_empty();\n };\n NodesAndLinkedEdges.prototype.do_inspection = function (hit_test_result, geometry, graph_view, final, append) {\n if (hit_test_result == null)\n return false;\n var node_inspection = graph_view.node_view.model.data_source.selection_manager.get_or_create_inspector(graph_view.node_view.model);\n node_inspection.update(hit_test_result, final, append);\n graph_view.node_view.model.data_source.setv({ inspected: node_inspection }, { silent: true });\n var edge_inspection = graph_view.edge_view.model.data_source.selection_manager.get_or_create_inspector(graph_view.edge_view.model);\n var linked_edges = this.get_linked_edges(graph_view.node_view.model.data_source, graph_view.edge_view.model.data_source, 'inspection');\n edge_inspection.update(linked_edges, final, append);\n //silently set inspected attr to avoid triggering data_source.change event and rerender\n graph_view.edge_view.model.data_source.setv({ inspected: edge_inspection }, { silent: true });\n graph_view.node_view.model.data_source.inspect.emit([\n graph_view.node_view,\n { geometry: geometry }\n ]);\n return !node_inspection.is_empty();\n };\n return NodesAndLinkedEdges;\n }(GraphHitTestPolicy);\n exports.NodesAndLinkedEdges = NodesAndLinkedEdges;\n NodesAndLinkedEdges.initClass();\n var EdgesAndLinkedNodes = function (_super) {\n tslib_1.__extends(EdgesAndLinkedNodes, _super);\n function EdgesAndLinkedNodes(attrs) {\n return _super.call(this, attrs) || this;\n }\n EdgesAndLinkedNodes.initClass = function () {\n this.prototype.type = 'EdgesAndLinkedNodes';\n };\n EdgesAndLinkedNodes.prototype.hit_test = function (geometry, graph_view) {\n return this._hit_test_edges(geometry, graph_view);\n };\n EdgesAndLinkedNodes.prototype.get_linked_nodes = function (node_source, edge_source, mode) {\n var edge_indices = [];\n if (mode == 'selection')\n edge_indices = edge_source.selected.indices;\n else if (mode == 'inspection')\n edge_indices = edge_source.inspected.indices;\n var nodes = [];\n for (var _i = 0, edge_indices_2 = edge_indices; _i < edge_indices_2.length; _i++) {\n var i = edge_indices_2[_i];\n nodes.push(edge_source.data.start[i]);\n nodes.push(edge_source.data.end[i]);\n }\n var node_indices = array_1.uniq(nodes).map(function (i) {\n return arrayable_1.indexOf(node_source.data.index, i);\n });\n var linked_nodes = hittest_1.create_empty_hit_test_result();\n linked_nodes.indices = node_indices;\n return linked_nodes;\n };\n EdgesAndLinkedNodes.prototype.do_selection = function (hit_test_result, graph, final, append) {\n if (hit_test_result == null)\n return false;\n var edge_selection = graph.edge_renderer.data_source.selected;\n edge_selection.update(hit_test_result, final, append);\n var node_selection = graph.node_renderer.data_source.selected;\n var linked_nodes = this.get_linked_nodes(graph.node_renderer.data_source, graph.edge_renderer.data_source, 'selection');\n node_selection.update(linked_nodes, final, append);\n graph.edge_renderer.data_source._select.emit();\n return !edge_selection.is_empty();\n };\n EdgesAndLinkedNodes.prototype.do_inspection = function (hit_test_result, geometry, graph_view, final, append) {\n if (hit_test_result == null)\n return false;\n var edge_inspection = graph_view.edge_view.model.data_source.selection_manager.get_or_create_inspector(graph_view.edge_view.model);\n edge_inspection.update(hit_test_result, final, append);\n graph_view.edge_view.model.data_source.setv({ inspected: edge_inspection }, { silent: true });\n var node_inspection = graph_view.node_view.model.data_source.selection_manager.get_or_create_inspector(graph_view.node_view.model);\n var linked_nodes = this.get_linked_nodes(graph_view.node_view.model.data_source, graph_view.edge_view.model.data_source, 'inspection');\n node_inspection.update(linked_nodes, final, append);\n // silently set inspected attr to avoid triggering data_source.change event and rerender\n graph_view.node_view.model.data_source.setv({ inspected: node_inspection }, { silent: true });\n graph_view.edge_view.model.data_source.inspect.emit([\n graph_view.edge_view,\n { geometry: geometry }\n ]);\n return !edge_inspection.is_empty();\n };\n return EdgesAndLinkedNodes;\n }(GraphHitTestPolicy);\n exports.EdgesAndLinkedNodes = EdgesAndLinkedNodes;\n EdgesAndLinkedNodes.initClass(); \n}","/*models/graphs/index*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n tslib_1.__exportStar(require(136 /* ./graph_hit_test_policy */), exports);\n tslib_1.__exportStar(require(138 /* ./layout_provider */), exports);\n tslib_1.__exportStar(require(139 /* ./static_layout_provider */), exports); \n}","/*models/graphs/layout_provider*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var model_1 = require(53 /* ../../model */);\n var LayoutProvider = function (_super) {\n tslib_1.__extends(LayoutProvider, _super);\n function LayoutProvider(attrs) {\n return _super.call(this, attrs) || this;\n }\n LayoutProvider.initClass = function () {\n this.prototype.type = 'LayoutProvider';\n };\n return LayoutProvider;\n }(model_1.Model);\n exports.LayoutProvider = LayoutProvider;\n LayoutProvider.initClass(); \n}","/*models/graphs/static_layout_provider*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var layout_provider_1 = require(138 /* ./layout_provider */);\n var p = require(15 /* ../../core/properties */);\n var StaticLayoutProvider = function (_super) {\n tslib_1.__extends(StaticLayoutProvider, _super);\n function StaticLayoutProvider(attrs) {\n return _super.call(this, attrs) || this;\n }\n StaticLayoutProvider.initClass = function () {\n this.prototype.type = 'StaticLayoutProvider';\n this.define({\n graph_layout: [\n p.Any,\n {}\n ]\n });\n };\n StaticLayoutProvider.prototype.get_node_coordinates = function (node_source) {\n var xs = [];\n var ys = [];\n var index = node_source.data.index;\n for (var i = 0, end = index.length; i < end; i++) {\n var point = this.graph_layout[index[i]];\n var _a = point != null ? point : [\n NaN,\n NaN\n ], x = _a[0], y = _a[1];\n xs.push(x);\n ys.push(y);\n }\n return [\n xs,\n ys\n ];\n };\n StaticLayoutProvider.prototype.get_edge_coordinates = function (edge_source) {\n var xs = [];\n var ys = [];\n var starts = edge_source.data.start;\n var ends = edge_source.data.end;\n var has_paths = edge_source.data.xs != null && edge_source.data.ys != null;\n for (var i = 0, endi = starts.length; i < endi; i++) {\n var in_layout = this.graph_layout[starts[i]] != null && this.graph_layout[ends[i]] != null;\n if (has_paths && in_layout) {\n xs.push(edge_source.data.xs[i]);\n ys.push(edge_source.data.ys[i]);\n } else {\n var end = void 0, start = void 0;\n if (in_layout)\n _a = [\n this.graph_layout[starts[i]],\n this.graph_layout[ends[i]]\n ], start = _a[0], end = _a[1];\n else\n _b = [\n [\n NaN,\n NaN\n ],\n [\n NaN,\n NaN\n ]\n ], start = _b[0], end = _b[1];\n xs.push([\n start[0],\n end[0]\n ]);\n ys.push([\n start[1],\n end[1]\n ]);\n }\n }\n return [\n xs,\n ys\n ];\n var _a, _b;\n };\n return StaticLayoutProvider;\n }(layout_provider_1.LayoutProvider);\n exports.StaticLayoutProvider = StaticLayoutProvider;\n StaticLayoutProvider.initClass(); \n}","/*models/grids/grid*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var axis_1 = require(72 /* ../axes/axis */);\n var guide_renderer_1 = require(171 /* ../renderers/guide_renderer */);\n var p = require(15 /* core/properties */);\n var types_1 = require(44 /* core/util/types */);\n var GridView = function (_super) {\n tslib_1.__extends(GridView, _super);\n function GridView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n Object.defineProperty(GridView.prototype, '_x_range_name', {\n get: function () {\n return this.model.x_range_name;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(GridView.prototype, '_y_range_name', {\n get: function () {\n return this.model.y_range_name;\n },\n enumerable: true,\n configurable: true\n });\n GridView.prototype.render = function () {\n if (!this.model.visible)\n return;\n var ctx = this.plot_view.canvas_view.ctx;\n ctx.save();\n this._draw_regions(ctx);\n this._draw_minor_grids(ctx);\n this._draw_grids(ctx);\n ctx.restore();\n };\n GridView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.model.change, function () {\n return _this.request_render();\n });\n };\n GridView.prototype._draw_regions = function (ctx) {\n if (!this.visuals.band_fill.doit)\n return;\n var _a = this.model.grid_coords('major', false), xs = _a[0], ys = _a[1];\n this.visuals.band_fill.set_value(ctx);\n for (var i = 0; i < xs.length - 1; i++) {\n if (i % 2 == 1) {\n var _b = this.plot_view.map_to_screen(xs[i], ys[i], this._x_range_name, this._y_range_name), sx0 = _b[0], sy0 = _b[1];\n var _c = this.plot_view.map_to_screen(xs[i + 1], ys[i + 1], this._x_range_name, this._y_range_name), sx1 = _c[0], sy1 = _c[1];\n ctx.fillRect(sx0[0], sy0[0], sx1[1] - sx0[0], sy1[1] - sy0[0]);\n ctx.fill();\n }\n }\n };\n GridView.prototype._draw_grids = function (ctx) {\n if (!this.visuals.grid_line.doit)\n return;\n var _a = this.model.grid_coords('major'), xs = _a[0], ys = _a[1];\n this._draw_grid_helper(ctx, this.visuals.grid_line, xs, ys);\n };\n GridView.prototype._draw_minor_grids = function (ctx) {\n if (!this.visuals.minor_grid_line.doit)\n return;\n var _a = this.model.grid_coords('minor'), xs = _a[0], ys = _a[1];\n this._draw_grid_helper(ctx, this.visuals.minor_grid_line, xs, ys);\n };\n GridView.prototype._draw_grid_helper = function (ctx, visuals, xs, ys) {\n visuals.set_value(ctx);\n for (var i = 0; i < xs.length; i++) {\n var _a = this.plot_view.map_to_screen(xs[i], ys[i], this._x_range_name, this._y_range_name), sx = _a[0], sy = _a[1];\n ctx.beginPath();\n ctx.moveTo(Math.round(sx[0]), Math.round(sy[0]));\n for (var i_1 = 1; i_1 < sx.length; i_1++)\n ctx.lineTo(Math.round(sx[i_1]), Math.round(sy[i_1]));\n ctx.stroke();\n }\n };\n return GridView;\n }(guide_renderer_1.GuideRendererView);\n exports.GridView = GridView;\n var Grid = function (_super) {\n tslib_1.__extends(Grid, _super);\n function Grid(attrs) {\n return _super.call(this, attrs) || this;\n }\n Grid.initClass = function () {\n this.prototype.type = 'Grid';\n this.prototype.default_view = GridView;\n this.mixins([\n 'line:grid_',\n 'line:minor_grid_',\n 'fill:band_'\n ]);\n this.define({\n bounds: [\n p.Any,\n 'auto'\n ],\n dimension: [\n p.Number,\n 0\n ],\n ticker: [p.Instance],\n x_range_name: [\n p.String,\n 'default'\n ],\n y_range_name: [\n p.String,\n 'default'\n ]\n });\n this.override({\n level: 'underlay',\n band_fill_color: null,\n band_fill_alpha: 0,\n grid_line_color: '#e5e5e5',\n minor_grid_line_color: null\n });\n };\n Grid.prototype.ranges = function () {\n var i = this.dimension;\n var j = (i + 1) % 2;\n var frame = this.plot.plot_canvas.frame;\n var ranges = [\n frame.x_ranges[this.x_range_name],\n frame.y_ranges[this.y_range_name]\n ];\n return [\n ranges[i],\n ranges[j]\n ];\n };\n Grid.prototype.computed_bounds = function () {\n var range = this.ranges()[0];\n var user_bounds = this.bounds;\n var range_bounds = [\n range.min,\n range.max\n ];\n var start;\n var end;\n if (types_1.isArray(user_bounds)) {\n start = Math.min(user_bounds[0], user_bounds[1]);\n end = Math.max(user_bounds[0], user_bounds[1]);\n if (start < range_bounds[0])\n start = range_bounds[0];\n // XXX:\n //else if (start > range_bounds[1])\n // start = null\n if (end > range_bounds[1])\n end = range_bounds[1]; // XXX:\n //else if (end < range_bounds[0])\n // end = null\n } else {\n start = range_bounds[0], end = range_bounds[1];\n for (var _i = 0, _a = this.plot.select(axis_1.Axis); _i < _a.length; _i++) {\n var axis = _a[_i];\n if (axis.dimension == this.dimension && axis.x_range_name == this.x_range_name && axis.y_range_name == this.y_range_name) {\n _b = axis.computed_bounds, start = _b[0], end = _b[1];\n }\n }\n }\n return [\n start,\n end\n ];\n var _b;\n };\n Grid.prototype.grid_coords = function (location, exclude_ends) {\n if (exclude_ends === void 0) {\n exclude_ends = true;\n }\n var i = this.dimension;\n var j = (i + 1) % 2;\n var _a = this.ranges(), range = _a[0], cross_range = _a[1];\n var _b = this.computed_bounds(), start = _b[0], end = _b[1];\n _c = [\n Math.min(start, end),\n Math.max(start, end)\n ], start = _c[0], end = _c[1];\n // TODO: (bev) using cross_range.min for cross_loc is a bit of a cheat. Since we\n // currently only support \"straight line\" grids, this should be OK for now. If\n // we ever want to support \"curved\" grids, e.g. for some projections, we may\n // have to communicate more than just a single cross location.\n var ticks = this.ticker.get_ticks(start, end, range, cross_range.min, {})[location];\n var min = range.min;\n var max = range.max;\n var cmin = cross_range.min;\n var cmax = cross_range.max;\n var coords = [\n [],\n []\n ];\n if (!exclude_ends) {\n if (ticks[0] != min)\n ticks.splice(0, 0, min);\n if (ticks[ticks.length - 1] != max)\n ticks.push(max);\n }\n for (var ii = 0; ii < ticks.length; ii++) {\n if ((ticks[ii] == min || ticks[ii] == max) && exclude_ends)\n continue;\n var dim_i = [];\n var dim_j = [];\n var N = 2;\n for (var n = 0; n < N; n++) {\n var loc = cmin + (cmax - cmin) / (N - 1) * n;\n dim_i.push(ticks[ii]);\n dim_j.push(loc);\n }\n coords[i].push(dim_i);\n coords[j].push(dim_j);\n }\n return coords;\n var _c;\n };\n return Grid;\n }(guide_renderer_1.GuideRenderer);\n exports.Grid = Grid;\n Grid.initClass(); \n}","/*models/grids/index*/\nfunction _(require, module, exports) {\n var grid_1 = require(140 /* ./grid */);\n exports.Grid = grid_1.Grid; \n}","/*models/index*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n tslib_1.__exportStar(require(60 /* ./annotations */), exports);\n tslib_1.__exportStar(require(76 /* ./axes */), exports);\n tslib_1.__exportStar(require(82 /* ./callbacks */), exports);\n tslib_1.__exportStar(require(86 /* ./canvas */), exports);\n tslib_1.__exportStar(require(88 /* ./expressions */), exports);\n tslib_1.__exportStar(require(94 /* ./filters */), exports);\n tslib_1.__exportStar(require(100 /* ./formatters */), exports);\n tslib_1.__exportStar(require(119 /* ./glyphs */), exports);\n tslib_1.__exportStar(require(137 /* ./graphs */), exports);\n tslib_1.__exportStar(require(141 /* ./grids */), exports);\n tslib_1.__exportStar(require(145 /* ./layouts */), exports);\n tslib_1.__exportStar(require(153 /* ./mappers */), exports);\n tslib_1.__exportStar(require(254 /* ./transforms */), exports);\n tslib_1.__exportStar(require(156 /* ./markers */), exports);\n tslib_1.__exportStar(require(160 /* ./plots */), exports);\n tslib_1.__exportStar(require(166 /* ./ranges */), exports);\n tslib_1.__exportStar(require(172 /* ./renderers */), exports);\n tslib_1.__exportStar(require(175 /* ./scales */), exports);\n tslib_1.__exportStar(require(179 /* ./selections */), exports);\n tslib_1.__exportStar(require(188 /* ./sources */), exports);\n tslib_1.__exportStar(require(198 /* ./tickers */), exports);\n tslib_1.__exportStar(require(208 /* ./tiles */), exports);\n tslib_1.__exportStar(require(240 /* ./tools */), exports); \n}","/*models/layouts/box*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var solver_1 = require(13 /* core/layout/solver */);\n var p = require(15 /* core/properties */);\n var array_1 = require(21 /* core/util/array */);\n var object_1 = require(32 /* core/util/object */);\n var layout_dom_1 = require(146 /* ./layout_dom */);\n var BoxView = function (_super) {\n tslib_1.__extends(BoxView, _super);\n function BoxView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n BoxView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.model.properties.children.change, function () {\n return _this.rebuild_child_views();\n });\n };\n BoxView.prototype.css_classes = function () {\n return _super.prototype.css_classes.call(this).concat('bk-grid');\n };\n BoxView.prototype.get_height = function () {\n var children = this.model.get_layoutable_children();\n var child_heights = children.map(function (child) {\n return child._height.value;\n });\n var height;\n if (this.model._horizontal)\n height = array_1.max(child_heights);\n else\n height = array_1.sum(child_heights);\n return height;\n };\n BoxView.prototype.get_width = function () {\n var children = this.model.get_layoutable_children();\n var child_widths = children.map(function (child) {\n return child._width.value;\n });\n var width;\n if (this.model._horizontal)\n width = array_1.sum(child_widths);\n else\n width = array_1.max(child_widths);\n return width;\n };\n return BoxView;\n }(layout_dom_1.LayoutDOMView);\n exports.BoxView = BoxView;\n var Box = function (_super) {\n tslib_1.__extends(Box, _super);\n function Box(attrs) {\n return _super.call(this, attrs) || this;\n }\n Box.initClass = function () {\n this.prototype.type = 'Box';\n this.prototype.default_view = BoxView;\n this.define({\n children: [\n p.Array,\n []\n ]\n });\n this.internal({\n spacing: [\n p.Number,\n 6\n ]\n });\n };\n Box.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n this._child_equal_size_width = new solver_1.Variable(this.toString() + '.child_equal_size_width');\n this._child_equal_size_height = new solver_1.Variable(this.toString() + '.child_equal_size_height');\n this._box_equal_size_top = new solver_1.Variable(this.toString() + '.box_equal_size_top');\n this._box_equal_size_bottom = new solver_1.Variable(this.toString() + '.box_equal_size_bottom');\n this._box_equal_size_left = new solver_1.Variable(this.toString() + '.box_equal_size_left');\n this._box_equal_size_right = new solver_1.Variable(this.toString() + '.box_equal_size_right');\n this._box_cell_align_top = new solver_1.Variable(this.toString() + '.box_cell_align_top');\n this._box_cell_align_bottom = new solver_1.Variable(this.toString() + '.box_cell_align_bottom');\n this._box_cell_align_left = new solver_1.Variable(this.toString() + '.box_cell_align_left');\n this._box_cell_align_right = new solver_1.Variable(this.toString() + '.box_cell_align_right');\n };\n Box.prototype.get_layoutable_children = function () {\n return this.children;\n };\n Box.prototype.get_constrained_variables = function () {\n return object_1.extend({}, _super.prototype.get_constrained_variables.call(this), {\n box_equal_size_top: this._box_equal_size_top,\n box_equal_size_bottom: this._box_equal_size_bottom,\n box_equal_size_left: this._box_equal_size_left,\n box_equal_size_right: this._box_equal_size_right,\n box_cell_align_top: this._box_cell_align_top,\n box_cell_align_bottom: this._box_cell_align_bottom,\n box_cell_align_left: this._box_cell_align_left,\n box_cell_align_right: this._box_cell_align_right\n });\n };\n Box.prototype.get_constraints = function () {\n var constraints = _super.prototype.get_constraints.call(this);\n var add = function () {\n var new_constraints = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n new_constraints[_i] = arguments[_i];\n }\n constraints.push.apply(constraints, new_constraints);\n };\n var children = this.get_layoutable_children();\n if (children.length == 0)\n // No need to continue further if there are no children. Children sure do\n // make life a lot more complicated.\n return constraints;\n for (var _i = 0, children_1 = children; _i < children_1.length; _i++) {\n var child = children_1[_i];\n var vars_1 = child.get_constrained_variables();\n // Make total widget sizes fill the orthogonal direction\n // TODO(bird) Can't we make this shorter by using span which has already picked a\n // dominant direction (we'd just also need to set a doc_span)\n var rect = this._child_rect(vars_1);\n if (this._horizontal) {\n if (vars_1.height != null)\n add(solver_1.EQ(rect.height, [\n -1,\n this._height\n ]));\n } else {\n if (vars_1.width != null)\n add(solver_1.EQ(rect.width, [\n -1,\n this._width\n ]));\n }\n // Add equal_size constraint\n // - A child's \"interesting area\" (like the plot area) is the same size as the previous child\n // (a child can opt out of this by not returning the box_equal_size variables)\n if (this._horizontal) {\n if (vars_1.box_equal_size_left != null && vars_1.box_equal_size_right != null && vars_1.width != null)\n add(solver_1.EQ([\n -1,\n vars_1.box_equal_size_left\n ], [\n -1,\n vars_1.box_equal_size_right\n ], vars_1.width, this._child_equal_size_width));\n } else {\n if (vars_1.box_equal_size_top != null && vars_1.box_equal_size_bottom != null && vars_1.height != null)\n add(solver_1.EQ([\n -1,\n vars_1.box_equal_size_top\n ], [\n -1,\n vars_1.box_equal_size_bottom\n ], vars_1.height, this._child_equal_size_height));\n }\n }\n // TODO(bird) - This is the second time we loop through children\n var last = this._info(children[0].get_constrained_variables());\n add(solver_1.EQ(last.span.start, 0));\n for (var i = 1; i < children.length; i++) {\n var next = this._info(children[i].get_constrained_variables());\n // Each child's start equals the previous child's end (unless we have a fixed layout\n // in which case size may not be available)\n if (last.span.size)\n add(solver_1.EQ(last.span.start, last.span.size, [\n -1,\n next.span.start\n ]));\n // The whitespace at end of one child + start of next must equal the box spacing.\n // This must be a weak constraint because it can conflict with aligning the\n // alignable edges in each child. Alignment is generally more important visually than spacing.\n add(solver_1.WEAK_EQ(last.whitespace.after, next.whitespace.before, 0 - this.spacing));\n // If we can't satisfy the whitespace being equal to box spacing, we should fix\n // it (align things) by increasing rather than decreasing the whitespace.\n add(solver_1.GE(last.whitespace.after, next.whitespace.before, 0 - this.spacing));\n last = next;\n }\n // Child's side has to stick to the end of the box\n var vars = children[children.length - 1].get_constrained_variables();\n if (this._horizontal) {\n if (vars.width != null)\n add(solver_1.EQ(last.span.start, last.span.size, [\n -1,\n this._width\n ]));\n } else {\n if (vars.height != null)\n add(solver_1.EQ(last.span.start, last.span.size, [\n -1,\n this._height\n ]));\n }\n constraints = constraints.concat(// align outermost edges in both dimensions\n this._align_outer_edges_constraints(true), // horizontal=true\n this._align_outer_edges_constraints(false), // line up edges in same_arity boxes\n this._align_inner_cell_edges_constraints(), // build our equal_size bounds from the child ones\n this._box_equal_size_bounds(true), // horizontal=true\n this._box_equal_size_bounds(false), // propagate cell alignment (between same_arity boxes) up the hierarchy\n this._box_cell_align_bounds(true), // horizontal=true\n this._box_cell_align_bounds(false), // build our whitespace from the child ones\n this._box_whitespace(true), // horizontal=true\n this._box_whitespace(false));\n return constraints;\n };\n Box.prototype._child_rect = function (vars) {\n return {\n x: vars.origin_x,\n y: vars.origin_y,\n width: vars.width,\n height: vars.height\n };\n };\n Box.prototype._span = function (rect) {\n // return [coordinate, size] pair in box_aligned direction\n if (this._horizontal)\n return {\n start: rect.x,\n size: rect.width\n };\n else\n return {\n start: rect.y,\n size: rect.height\n };\n };\n Box.prototype._info = function (vars) {\n var whitespace;\n if (this._horizontal)\n whitespace = {\n before: vars.whitespace_left,\n after: vars.whitespace_right\n };\n else\n whitespace = {\n before: vars.whitespace_top,\n after: vars.whitespace_bottom\n };\n var span = this._span(this._child_rect(vars));\n return {\n span: span,\n whitespace: whitespace\n };\n };\n Box.prototype._flatten_cell_edge_variables = function (horizontal) {\n /*\n * All alignment happens in terms of the\n * box_cell_align_{left,right,top,bottom} variables. We add\n * \"path\" information to variables so we know which ones align,\n * where the \"path\" includes the box arity and box cell we went\n * through.\n *\n * If we have a row of three plots, we should align the top and\n * bottom variables between the three plots.\n *\n * The flattened dictionary in this case (for the top and left\n * only) should be:\n *\n * box_cell_align_top : [ 3 vars ]\n * box_cell_align_bottom : [ 3 vars ]\n *\n * We don't do left/right starting from a row, and left/right\n * edges have nothing to align with here.\n *\n * Now say we have a row of three columns, each with three\n * plots (3x3 = 9). We should align the top/bottom variables\n * across the top three, middle three, and bottom three plots,\n * as if those groupings were rows. We do this by flattening\n * starting from the row first, which gets us a dictionary only\n * of top/bottom variables.\n *\n * box_cell_align_top col-3-0- : [ 3 plots from top of columns ]\n * box_cell_align_top col-3-1- : [ 3 plots from middle of columns ]\n * box_cell_align_top col-3-2- : [ 3 plots from bottom of columns ]\n *\n * \"col-3-1-\" = 3-cell column, cell index 1.\n *\n * In three later, separate calls to\n * _align_inner_cell_edges_constraints() on each column, we'll\n * get the left/right variables:\n *\n * box_cell_align_left : [ 3 left-column plots ]\n * box_cell_align_left : [ 3 middle-column plots ]\n * box_cell_align_left : [ 3 right-column plots ]\n *\n * Now add another nesting - we have a row of three columns,\n * each with three rows, each with three plots. This is\n * arranged 3x9 = 27.\n *\n * box_cell_align_top col-3-0- : [ 9 plots from top rows of columns ]\n * box_cell_align_top col-3-1- : [ 9 plots from middle rows of columns ]\n * box_cell_align_top col-3-2- : [ 9 plots from bottom rows of columns ]\n *\n * When we make the _align_inner_cell_edges_constraints() calls on each of the three\n * columns, each column will return row-pathed values\n *\n * box_cell_align_left row-3-0-: [ 3 plots in left column of left column ]\n * box_cell_align_left row-3-1-: [ 3 plots in middle column of left column ]\n * box_cell_align_left row-3-2-: [ 3 plots in right column of left column ]\n * ... same for the middle and right columns\n *\n * Anyway in essence what we do is that we add only rows to the\n * path to left/right variables, and only columns to the path\n * to top/bottom variables.\n *\n * If we nest yet another level we would finally get paths with\n * multiple rows or multiple columns in them.\n */\n var relevant_edges;\n if (horizontal)\n relevant_edges = Box._top_bottom_inner_cell_edge_variables;\n else\n relevant_edges = Box._left_right_inner_cell_edge_variables;\n var add_path = horizontal != this._horizontal;\n var children = this.get_layoutable_children();\n var arity = children.length;\n var flattened = {};\n var cell = 0;\n for (var _i = 0, children_2 = children; _i < children_2.length; _i++) {\n var child = children_2[_i];\n var cell_vars = void 0;\n if (child instanceof Box)\n cell_vars = child._flatten_cell_edge_variables(horizontal);\n else\n cell_vars = {};\n var all_vars = child.get_constrained_variables();\n for (var _a = 0, relevant_edges_1 = relevant_edges; _a < relevant_edges_1.length; _a++) {\n var name_1 = relevant_edges_1[_a];\n if (name_1 in all_vars)\n cell_vars[name_1] = [all_vars[name_1]];\n }\n for (var key in cell_vars) {\n var variables = cell_vars[key];\n var new_key = void 0;\n if (add_path) {\n var parsed = key.split(' ');\n var kind = parsed[0];\n var path = parsed.length > 1 ? parsed[1] : '';\n var direction = this._horizontal ? 'row' : 'col';\n // TODO should we \"ignore\" arity-1 boxes potentially by not adding a path suffix?\n new_key = kind + ' ' + direction + '-' + arity + '-' + cell + '-' + path;\n } else\n new_key = key;\n if (new_key in flattened)\n flattened[new_key] = flattened[new_key].concat(variables);\n else\n flattened[new_key] = variables;\n }\n cell++;\n }\n return flattened;\n };\n // This should only be called on the toplevel box (twice,\n // once with horizontal=true and once with horizontal=false)\n Box.prototype._align_inner_cell_edges_constraints = function () {\n var constraints = [];\n // XXX: checking for `this.document?` is a temporary hack, because document isn't always\n // attached properly. However, if document is not attached then we know it can't be\n // a root, because otherwise add_root() would attach it. All this layout logic should\n // be part of views instead of models and use is_root, etc.\n if (this.document != null && array_1.includes(this.document.roots(), this)) {\n var flattened = this._flatten_cell_edge_variables(this._horizontal);\n for (var key in flattened) {\n var variables = flattened[key];\n if (variables.length > 1) {\n //console.log(\"constraining \", key, \" \", variables)\n var last = variables[0];\n for (var i = 1; i < variables.length; i++)\n constraints.push(solver_1.EQ(variables[i], [\n -1,\n last\n ]));\n }\n }\n }\n return constraints;\n };\n // returns a two-item array where each item is a list of edge\n // children from the start and end respectively\n Box.prototype._find_edge_leaves = function (horizontal) {\n var children = this.get_layoutable_children();\n // console.log(` finding edge leaves in ${children.length}-${this.type}, ` +\n // `our orientation ${this._horizontal} finding ${horizontal} children `, children)\n var leaves = [\n [],\n []\n ];\n if (children.length > 0) {\n if (this._horizontal == horizontal) {\n // note start and end may be the same\n var start = children[0];\n var end = children[children.length - 1];\n if (start instanceof Box)\n leaves[0] = leaves[0].concat(start._find_edge_leaves(horizontal)[0]);\n else\n leaves[0].push(start);\n if (end instanceof Box)\n leaves[1] = leaves[1].concat(end._find_edge_leaves(horizontal)[1]);\n else\n leaves[1].push(end);\n } else {\n // if we are a column and someone wants the horizontal edges,\n // we return the horizontal edges from all of our children\n for (var _i = 0, children_3 = children; _i < children_3.length; _i++) {\n var child = children_3[_i];\n if (child instanceof Box) {\n var child_leaves = child._find_edge_leaves(horizontal);\n leaves[0] = leaves[0].concat(child_leaves[0]);\n leaves[1] = leaves[1].concat(child_leaves[1]);\n } else {\n leaves[0].push(child);\n leaves[1].push(child);\n }\n }\n }\n }\n // console.log(\" start leaves \", leaves[0].map((leaf) -> leaf.id)\n // console.log(\" end leaves \", leaves[1].map((leaf) -> leaf.id)\n return leaves;\n };\n Box.prototype._align_outer_edges_constraints = function (horizontal) {\n // console.log(`${if horizontal then 'horizontal' else 'vertical'} outer edge constraints in ${this.get_layoutable_children().length}-${this.type}`)\n var _a = this._find_edge_leaves(horizontal), start_leaves = _a[0], end_leaves = _a[1];\n var start_variable;\n var end_variable;\n if (horizontal) {\n start_variable = 'on_edge_align_left';\n end_variable = 'on_edge_align_right';\n } else {\n start_variable = 'on_edge_align_top';\n end_variable = 'on_edge_align_bottom';\n }\n var collect_vars = function (leaves, name) {\n //console.log(`collecting ${name} in `, leaves)\n var edges = [];\n for (var _i = 0, leaves_1 = leaves; _i < leaves_1.length; _i++) {\n var leaf = leaves_1[_i];\n var vars = leaf.get_constrained_variables();\n if (name in vars)\n edges.push(vars[name]);\n }\n return edges;\n };\n var start_edges = collect_vars(start_leaves, start_variable);\n var end_edges = collect_vars(end_leaves, end_variable);\n var result = [];\n var add_all_equal = function (edges) {\n if (edges.length > 1) {\n var first = edges[0];\n for (var i = 1; i < edges.length; i++) {\n var edge = edges[i];\n //console.log(` constraining ${first._debug} == ${edge._debug}`)\n result.push(solver_1.EQ([\n -1,\n first\n ], edge));\n }\n }\n };\n add_all_equal(start_edges);\n add_all_equal(end_edges);\n // console.log(\"computed constraints \", result)\n return result;\n };\n Box.prototype._box_insets_from_child_insets = function (horizontal, child_variable_prefix, our_variable_prefix, minimum) {\n var _a = this._find_edge_leaves(horizontal), start_leaves = _a[0], end_leaves = _a[1];\n var start_variable;\n var end_variable;\n var our_start;\n var our_end;\n if (horizontal) {\n start_variable = child_variable_prefix + '_left';\n end_variable = child_variable_prefix + '_right';\n our_start = this[our_variable_prefix + '_left'];\n our_end = this[our_variable_prefix + '_right'];\n } else {\n start_variable = child_variable_prefix + '_top';\n end_variable = child_variable_prefix + '_bottom';\n our_start = this[our_variable_prefix + '_top'];\n our_end = this[our_variable_prefix + '_bottom'];\n }\n var result = [];\n var add_constraints = function (ours, leaves, name) {\n for (var _i = 0, leaves_2 = leaves; _i < leaves_2.length; _i++) {\n var leaf = leaves_2[_i];\n var vars = leaf.get_constrained_variables();\n if (name in vars) {\n if (minimum)\n result.push(solver_1.GE([\n -1,\n ours\n ], vars[name]));\n else\n result.push(solver_1.EQ([\n -1,\n ours\n ], vars[name]));\n }\n }\n };\n add_constraints(our_start, start_leaves, start_variable);\n add_constraints(our_end, end_leaves, end_variable);\n return result;\n };\n Box.prototype._box_equal_size_bounds = function (horizontal) {\n // false = box bounds equal all outer child bounds exactly\n return this._box_insets_from_child_insets(horizontal, 'box_equal_size', '_box_equal_size', false);\n };\n Box.prototype._box_cell_align_bounds = function (horizontal) {\n // false = box bounds equal all outer child bounds exactly\n return this._box_insets_from_child_insets(horizontal, 'box_cell_align', '_box_cell_align', false);\n };\n Box.prototype._box_whitespace = function (horizontal) {\n // true = box whitespace must be the minimum of child\n // whitespaces (i.e. distance from box edge to the outermost\n // child pixels)\n return this._box_insets_from_child_insets(horizontal, 'whitespace', '_whitespace', true);\n };\n Box._left_right_inner_cell_edge_variables = [\n 'box_cell_align_left',\n 'box_cell_align_right'\n ];\n Box._top_bottom_inner_cell_edge_variables = [\n 'box_cell_align_top',\n 'box_cell_align_bottom'\n ];\n return Box;\n }(layout_dom_1.LayoutDOM);\n exports.Box = Box;\n Box.initClass(); \n}","/*models/layouts/column*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var box_1 = require(143 /* ./box */);\n var ColumnView = function (_super) {\n tslib_1.__extends(ColumnView, _super);\n function ColumnView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n ColumnView.prototype.css_classes = function () {\n return _super.prototype.css_classes.call(this).concat('bk-grid-column');\n };\n return ColumnView;\n }(box_1.BoxView);\n exports.ColumnView = ColumnView;\n var Column = function (_super) {\n tslib_1.__extends(Column, _super);\n function Column(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this._horizontal = false;\n return _this;\n }\n Column.initClass = function () {\n this.prototype.type = 'Column';\n this.prototype.default_view = ColumnView;\n };\n return Column;\n }(box_1.Box);\n exports.Column = Column;\n Column.initClass(); \n}","/*models/layouts/index*/\nfunction _(require, module, exports) {\n var box_1 = require(143 /* ./box */);\n exports.Box = box_1.Box;\n var column_1 = require(144 /* ./column */);\n exports.Column = column_1.Column;\n var layout_dom_1 = require(146 /* ./layout_dom */);\n exports.LayoutDOM = layout_dom_1.LayoutDOM;\n var row_1 = require(147 /* ./row */);\n exports.Row = row_1.Row;\n var spacer_1 = require(148 /* ./spacer */);\n exports.Spacer = spacer_1.Spacer;\n var widget_box_1 = require(149 /* ./widget_box */);\n exports.WidgetBox = widget_box_1.WidgetBox; \n}","/*models/layouts/layout_dom*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var model_1 = require(53 /* ../../model */);\n var dom_1 = require(5 /* core/dom */);\n var p = require(15 /* core/properties */);\n var layout_canvas_1 = require(11 /* core/layout/layout_canvas */);\n var solver_1 = require(13 /* core/layout/solver */);\n var build_views_1 = require(4 /* core/build_views */);\n var dom_view_1 = require(6 /* core/dom_view */);\n var LayoutDOMView = function (_super) {\n tslib_1.__extends(LayoutDOMView, _super);\n function LayoutDOMView() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this._solver_inited = false;\n _this._idle_notified = false;\n return _this;\n }\n LayoutDOMView.prototype.initialize = function (options) {\n _super.prototype.initialize.call(this, options);\n // this is a root view\n if (this.is_root)\n this._solver = new solver_1.Solver();\n this.child_views = {};\n this.build_child_views();\n };\n LayoutDOMView.prototype.remove = function () {\n for (var model_id in this.child_views) {\n var view = this.child_views[model_id];\n view.remove();\n }\n this.child_views = {};\n // remove on_resize\n _super.prototype.remove.call(this);\n };\n LayoutDOMView.prototype.has_finished = function () {\n if (!_super.prototype.has_finished.call(this))\n return false;\n for (var model_id in this.child_views) {\n var child = this.child_views[model_id];\n if (!child.has_finished())\n return false;\n }\n return true;\n };\n LayoutDOMView.prototype.notify_finished = function () {\n if (!this.is_root)\n _super.prototype.notify_finished.call(this);\n else {\n if (!this._idle_notified && this.has_finished()) {\n if (this.model.document != null) {\n this._idle_notified = true;\n this.model.document.notify_idle(this.model);\n }\n }\n }\n };\n LayoutDOMView.prototype._calc_width_height = function () {\n var measuring = this.el;\n while (measuring = measuring.parentElement) {\n // .bk-root element doesn't bring any value\n if (measuring.classList.contains('bk-root'))\n continue;\n // we reached element, so use viewport size\n if (measuring == document.body) {\n var _a = dom_1.margin(document.body), left_1 = _a.left, right_1 = _a.right, top_1 = _a.top, bottom_1 = _a.bottom;\n var width_1 = document.documentElement.clientWidth - left_1 - right_1;\n var height_1 = document.documentElement.clientHeight - top_1 - bottom_1;\n return [\n width_1,\n height_1\n ];\n }\n // stop on first element with sensible dimensions\n var _b = dom_1.padding(measuring), left = _b.left, right = _b.right, top_2 = _b.top, bottom = _b.bottom;\n var rect = measuring.getBoundingClientRect();\n var width = rect.width - left - right;\n var height = rect.height - top_2 - bottom;\n if (width != 0 && height != 0)\n return [\n width,\n height\n ];\n }\n // this element is detached from DOM\n return [\n null,\n null\n ];\n };\n LayoutDOMView.prototype._init_solver = function () {\n this._root_width = new solver_1.Variable(this.toString() + '.root_width');\n this._root_height = new solver_1.Variable(this.toString() + '.root_height');\n // XXX: this relies on the fact that missing `strength` argument results\n // in strength being NaN, which behaves like `Strength.required`. However,\n // this is banned by the API.\n this._solver.add_edit_variable(this._root_width, NaN);\n this._solver.add_edit_variable(this._root_height, NaN);\n var editables = this.model.get_all_editables();\n for (var _i = 0, editables_1 = editables; _i < editables_1.length; _i++) {\n var edit_variable = editables_1[_i];\n this._solver.add_edit_variable(edit_variable, solver_1.Strength.strong);\n }\n var constraints = this.model.get_all_constraints();\n for (var _a = 0, constraints_1 = constraints; _a < constraints_1.length; _a++) {\n var constraint = constraints_1[_a];\n this._solver.add_constraint(constraint);\n }\n var variables = this.model.get_constrained_variables();\n if (variables.width != null)\n this._solver.add_constraint(solver_1.EQ(variables.width, this._root_width));\n if (variables.height != null)\n this._solver.add_constraint(solver_1.EQ(variables.height, this._root_height));\n this._solver.update_variables();\n this._solver_inited = true;\n };\n LayoutDOMView.prototype._suggest_dims = function (width, height) {\n var variables = this.model.get_constrained_variables();\n if (variables.width != null || variables.height != null) {\n if (width == null || height == null)\n _a = this._calc_width_height(), width = _a[0], height = _a[1];\n if (variables.width != null && width != null)\n this._solver.suggest_value(this._root_width, width);\n if (variables.height != null && height != null)\n this._solver.suggest_value(this._root_height, height);\n this._solver.update_variables();\n }\n var _a;\n };\n LayoutDOMView.prototype.resize = function (width, height) {\n if (width === void 0) {\n width = null;\n }\n if (height === void 0) {\n height = null;\n }\n if (!this.is_root)\n this.root.resize(width, height);\n else\n this._do_layout(false, width, height);\n };\n LayoutDOMView.prototype.partial_layout = function () {\n if (!this.is_root)\n this.root.partial_layout();\n else\n this._do_layout(false);\n };\n LayoutDOMView.prototype.layout = function () {\n if (!this.is_root)\n this.root.layout();\n else\n this._do_layout(true);\n };\n LayoutDOMView.prototype._do_layout = function (full, width, height) {\n if (width === void 0) {\n width = null;\n }\n if (height === void 0) {\n height = null;\n }\n if (!this._solver_inited || full) {\n this._solver.clear();\n this._init_solver();\n }\n this._suggest_dims(width, height);\n // XXX: do layout twice, because there are interdependencies between views,\n // which currently cannot be resolved with one pass. The third one triggers\n // rendering and (expensive) painting.\n this._layout();\n // layout (1)\n this._layout();\n // layout (2)\n this._layout(true);\n // render & paint\n this.notify_finished();\n };\n LayoutDOMView.prototype._layout = function (final) {\n if (final === void 0) {\n final = false;\n }\n for (var _i = 0, _a = this.model.get_layoutable_children(); _i < _a.length; _i++) {\n var child = _a[_i];\n var child_view = this.child_views[child.id];\n if (child_view._layout != null)\n child_view._layout(final);\n }\n this.render();\n if (final)\n this._has_finished = true;\n };\n LayoutDOMView.prototype.rebuild_child_views = function () {\n this.solver.clear();\n this.build_child_views();\n this.layout();\n };\n LayoutDOMView.prototype.build_child_views = function () {\n var children = this.model.get_layoutable_children();\n build_views_1.build_views(this.child_views, children, { parent: this });\n dom_1.empty(this.el);\n for (var _i = 0, children_1 = children; _i < children_1.length; _i++) {\n var child = children_1[_i];\n // Look-up the child_view in this.child_views and then append We can't just\n // read from this.child_views because then we don't get guaranteed ordering.\n // Which is a problem in non-box layouts.\n var child_view = this.child_views[child.id];\n this.el.appendChild(child_view.el);\n }\n };\n LayoutDOMView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n if (this.is_root)\n window.addEventListener('resize', function () {\n return _this.resize();\n });\n // XXX: this.connect(this.model.change, () => this.layout())\n this.connect(this.model.properties.sizing_mode.change, function () {\n return _this.layout();\n });\n };\n LayoutDOMView.prototype._render_classes = function () {\n this.el.className = '';\n // removes all classes\n for (var _i = 0, _a = this.css_classes(); _i < _a.length; _i++) {\n var name_1 = _a[_i];\n this.el.classList.add(name_1);\n }\n this.el.classList.add('bk-layout-' + this.model.sizing_mode);\n for (var _b = 0, _c = this.model.css_classes; _b < _c.length; _b++) {\n var cls = _c[_b];\n this.el.classList.add(cls);\n }\n };\n LayoutDOMView.prototype.render = function () {\n this._render_classes();\n switch (this.model.sizing_mode) {\n case 'fixed': {\n // If the width or height is unset:\n // - compute it from children\n // - but then save for future use\n // (for some reason widget boxes keep shrinking if you keep computing\n // but this is more efficient and appropriate for fixed anyway).\n var width = void 0;\n if (this.model.width != null)\n width = this.model.width;\n else\n width = this.get_width();\n this.model.setv({ width: width }, { silent: true });\n var height = void 0;\n if (this.model.height != null)\n height = this.model.height;\n else\n height = this.get_height();\n this.model.setv({ height: height }, { silent: true });\n this.solver.suggest_value(this.model._width, width);\n this.solver.suggest_value(this.model._height, height);\n break;\n }\n case 'scale_width': {\n var height = this.get_height();\n this.solver.suggest_value(this.model._height, height);\n break;\n }\n case 'scale_height': {\n var width = this.get_width();\n this.solver.suggest_value(this.model._width, width);\n break;\n }\n case 'scale_both': {\n var _a = this.get_width_height(), width = _a[0], height = _a[1];\n this.solver.suggest_value(this.model._width, width);\n this.solver.suggest_value(this.model._height, height);\n break;\n }\n }\n this.solver.update_variables();\n this.position();\n };\n LayoutDOMView.prototype.position = function () {\n switch (this.model.sizing_mode) {\n case 'fixed':\n case 'scale_width':\n case 'scale_height': {\n this.el.style.position = 'relative';\n this.el.style.left = '';\n this.el.style.top = '';\n break;\n }\n case 'scale_both':\n case 'stretch_both': {\n this.el.style.position = 'absolute';\n this.el.style.left = this.model._dom_left.value + 'px';\n this.el.style.top = this.model._dom_top.value + 'px';\n break;\n }\n }\n this.el.style.width = this.model._width.value + 'px';\n this.el.style.height = this.model._height.value + 'px';\n };\n LayoutDOMView.prototype.get_width_height = function () {\n var parent = this.el.parentElement;\n if (parent == null)\n throw new Error('detached element');\n var parent_height = parent.clientHeight;\n var parent_width = parent.clientWidth;\n var ar = this.model.get_aspect_ratio();\n var new_width_1 = parent_width;\n var new_height_1 = parent_width / ar;\n var new_width_2 = parent_height * ar;\n var new_height_2 = parent_height;\n var width;\n var height;\n if (new_width_1 < new_width_2) {\n width = new_width_1;\n height = new_height_1;\n } else {\n width = new_width_2;\n height = new_height_2;\n }\n return [\n width,\n height\n ];\n };\n return LayoutDOMView;\n }(dom_view_1.DOMView);\n exports.LayoutDOMView = LayoutDOMView;\n var LayoutDOM = function (_super) {\n tslib_1.__extends(LayoutDOM, _super);\n function LayoutDOM(attrs) {\n return _super.call(this, attrs) || this;\n }\n LayoutDOM.initClass = function () {\n this.prototype.type = 'LayoutDOM';\n this.define({\n height: [p.Number],\n width: [p.Number],\n disabled: [\n p.Bool,\n false\n ],\n sizing_mode: [\n p.SizingMode,\n 'fixed'\n ],\n css_classes: [\n p.Array,\n []\n ]\n });\n };\n LayoutDOM.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n this._width = new solver_1.Variable(this.toString() + '.width');\n this._height = new solver_1.Variable(this.toString() + '.height');\n this._left = new solver_1.Variable(this.toString() + '.left');\n this._right = new solver_1.Variable(this.toString() + '.right');\n this._top = new solver_1.Variable(this.toString() + '.top');\n this._bottom = new solver_1.Variable(this.toString() + '.bottom');\n this._dom_top = new solver_1.Variable(this.toString() + '.dom_top');\n this._dom_left = new solver_1.Variable(this.toString() + '.dom_left');\n this._width_minus_right = new solver_1.Variable(this.toString() + '.width_minus_right');\n this._height_minus_bottom = new solver_1.Variable(this.toString() + '.height_minus_bottom');\n this._whitespace_top = new solver_1.Variable(this.toString() + '.whitespace_top');\n this._whitespace_bottom = new solver_1.Variable(this.toString() + '.whitespace_bottom');\n this._whitespace_left = new solver_1.Variable(this.toString() + '.whitespace_left');\n this._whitespace_right = new solver_1.Variable(this.toString() + '.whitespace_right');\n };\n Object.defineProperty(LayoutDOM.prototype, 'layout_bbox', {\n get: function () {\n return {\n top: this._top.value,\n left: this._left.value,\n width: this._width.value,\n height: this._height.value,\n right: this._right.value,\n bottom: this._bottom.value,\n dom_top: this._dom_top.value,\n dom_left: this._dom_left.value\n };\n },\n enumerable: true,\n configurable: true\n });\n LayoutDOM.prototype.dump_layout = function () {\n var layoutables = {};\n var pending = [this];\n var obj;\n while (obj = pending.shift()) {\n pending.push.apply(pending, obj.get_layoutable_children());\n layoutables[obj.toString()] = obj.layout_bbox;\n }\n console.table(layoutables);\n };\n LayoutDOM.prototype.get_all_constraints = function () {\n var constraints = this.get_constraints();\n for (var _i = 0, _a = this.get_layoutable_children(); _i < _a.length; _i++) {\n var child = _a[_i];\n if (child instanceof layout_canvas_1.LayoutCanvas)\n constraints = constraints.concat(child.get_constraints());\n else\n constraints = constraints.concat(child.get_all_constraints());\n }\n return constraints;\n };\n LayoutDOM.prototype.get_all_editables = function () {\n var editables = this.get_editables();\n for (var _i = 0, _a = this.get_layoutable_children(); _i < _a.length; _i++) {\n var child = _a[_i];\n if (child instanceof layout_canvas_1.LayoutCanvas)\n editables = editables.concat(child.get_editables());\n else\n editables = editables.concat(child.get_all_editables());\n }\n return editables;\n };\n LayoutDOM.prototype.get_constraints = function () {\n return [\n // Make sure things dont squeeze out of their bounding box\n solver_1.GE(this._dom_left),\n solver_1.GE(this._dom_top),\n // Plot has to be inside the width/height\n solver_1.GE(this._left),\n solver_1.GE(this._width, [\n -1,\n this._right\n ]),\n solver_1.GE(this._top),\n solver_1.GE(this._height, [\n -1,\n this._bottom\n ]),\n // Declare computed constraints\n solver_1.EQ(this._width_minus_right, [\n -1,\n this._width\n ], this._right),\n solver_1.EQ(this._height_minus_bottom, [\n -1,\n this._height\n ], this._bottom)\n ];\n };\n LayoutDOM.prototype.get_layoutable_children = function () {\n return [];\n };\n LayoutDOM.prototype.get_editables = function () {\n switch (this.sizing_mode) {\n case 'fixed':\n return [\n this._height,\n this._width\n ];\n case 'scale_width':\n return [this._height];\n case 'scale_height':\n return [this._width];\n case 'scale_both':\n return [\n this._width,\n this._height\n ];\n default:\n return [];\n }\n };\n LayoutDOM.prototype.get_constrained_variables = function () {\n /*\n * THE FOLLOWING ARE OPTIONAL VARS THAT\n * YOU COULD ADD INTO SUBCLASSES\n *\n * # When this widget is on the edge of a box visually,\n * # align these variables down that edge. Right/bottom\n * # are an inset from the edge.\n * on_edge_align_top : this._top\n * on_edge_align_bottom : this._height_minus_bottom\n * on_edge_align_left : this._left\n * on_edge_align_right : this._width_minus_right\n * # When this widget is in a box cell with the same \"arity\n * # path\" as a widget in another cell, align these variables\n * # between the two box cells. Right/bottom are an inset from\n * # the edge.\n * box_cell_align_top : this._top\n * box_cell_align_bottom: this._height_minus_bottom\n * box_cell_align_left : this._left\n * box_cell_align_right : this._width_minus_right\n * # When this widget is in a box, make these the same distance\n * # apart in every widget. Right/bottom are inset from the edge.\n * box_equal_size_top : this._top\n * box_equal_size_bottom: this._height_minus_bottom\n * box_equal_size_left : this._left\n * box_equal_size_right : this._width_minus_right\n */\n var vars = {\n origin_x: this._dom_left,\n origin_y: this._dom_top,\n whitespace_top: this._whitespace_top,\n whitespace_bottom: this._whitespace_bottom,\n whitespace_left: this._whitespace_left,\n whitespace_right: this._whitespace_right\n };\n switch (this.sizing_mode) {\n case 'stretch_both':\n vars.width = this._width;\n vars.height = this._height;\n break;\n case 'scale_width':\n vars.width = this._width;\n break;\n case 'scale_height':\n vars.height = this._height;\n break;\n }\n return vars;\n };\n LayoutDOM.prototype.get_aspect_ratio = function () {\n return this.width / this.height;\n };\n return LayoutDOM;\n }(model_1.Model);\n exports.LayoutDOM = LayoutDOM;\n LayoutDOM.initClass(); \n}","/*models/layouts/row*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var box_1 = require(143 /* ./box */);\n var RowView = function (_super) {\n tslib_1.__extends(RowView, _super);\n function RowView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n RowView.prototype.css_classes = function () {\n return _super.prototype.css_classes.call(this).concat('bk-grid-row');\n };\n return RowView;\n }(box_1.BoxView);\n exports.RowView = RowView;\n var Row = function (_super) {\n tslib_1.__extends(Row, _super);\n function Row(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this._horizontal = true;\n return _this;\n }\n Row.initClass = function () {\n this.prototype.type = 'Row';\n this.prototype.default_view = RowView;\n };\n return Row;\n }(box_1.Box);\n exports.Row = Row;\n Row.initClass(); \n}","/*models/layouts/spacer*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var layout_dom_1 = require(146 /* ./layout_dom */);\n var object_1 = require(32 /* core/util/object */);\n var SpacerView = function (_super) {\n tslib_1.__extends(SpacerView, _super);\n function SpacerView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n SpacerView.prototype.render = function () {\n _super.prototype.render.call(this);\n if (this.model.sizing_mode == 'fixed') {\n this.el.style.width = this.model.width + 'px';\n this.el.style.height = this.model.height + 'px';\n }\n };\n SpacerView.prototype.css_classes = function () {\n return _super.prototype.css_classes.call(this).concat('bk-spacer-box');\n };\n // spacer must always have some width/height\n SpacerView.prototype.get_width = function () {\n return 1;\n };\n SpacerView.prototype.get_height = function () {\n return 1;\n };\n return SpacerView;\n }(layout_dom_1.LayoutDOMView);\n exports.SpacerView = SpacerView;\n var Spacer = function (_super) {\n tslib_1.__extends(Spacer, _super);\n function Spacer(attrs) {\n return _super.call(this, attrs) || this;\n }\n Spacer.initClass = function () {\n this.prototype.type = 'Spacer';\n this.prototype.default_view = SpacerView;\n };\n Spacer.prototype.get_constrained_variables = function () {\n return object_1.extend({}, _super.prototype.get_constrained_variables.call(this), {\n on_edge_align_top: this._top,\n on_edge_align_bottom: this._height_minus_bottom,\n on_edge_align_left: this._left,\n on_edge_align_right: this._width_minus_right,\n box_cell_align_top: this._top,\n box_cell_align_bottom: this._height_minus_bottom,\n box_cell_align_left: this._left,\n box_cell_align_right: this._width_minus_right,\n box_equal_size_top: this._top,\n box_equal_size_bottom: this._height_minus_bottom,\n box_equal_size_left: this._left,\n box_equal_size_right: this._width_minus_right\n });\n };\n return Spacer;\n }(layout_dom_1.LayoutDOM);\n exports.Spacer = Spacer;\n Spacer.initClass(); \n}","/*models/layouts/widget_box*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var logging_1 = require(14 /* core/logging */);\n var p = require(15 /* core/properties */);\n var object_1 = require(32 /* core/util/object */);\n var layout_dom_1 = require(146 /* ../layouts/layout_dom */);\n var WidgetBoxView = function (_super) {\n tslib_1.__extends(WidgetBoxView, _super);\n function WidgetBoxView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n WidgetBoxView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.model.properties.children.change, function () {\n return _this.rebuild_child_views();\n });\n };\n WidgetBoxView.prototype.css_classes = function () {\n return _super.prototype.css_classes.call(this).concat('bk-widget-box');\n };\n WidgetBoxView.prototype.render = function () {\n this._render_classes();\n // XXX: because no super()\n if (this.model.sizing_mode == 'fixed' || this.model.sizing_mode == 'scale_height') {\n var width = this.get_width();\n if (this.model._width.value != width)\n this.solver.suggest_value(this.model._width, width);\n }\n if (this.model.sizing_mode == 'fixed' || this.model.sizing_mode == 'scale_width') {\n var height = this.get_height();\n if (this.model._height.value != height)\n this.solver.suggest_value(this.model._height, height);\n }\n this.solver.update_variables();\n if (this.model.sizing_mode == 'stretch_both') {\n this.el.style.position = 'absolute';\n this.el.style.left = this.model._dom_left.value + 'px';\n this.el.style.top = this.model._dom_top.value + 'px';\n this.el.style.width = this.model._width.value + 'px';\n this.el.style.height = this.model._height.value + 'px';\n } else {\n // Note we DO NOT want to set a height (except in stretch_both). Widgets\n // are happier sizing themselves. We've tried to tell the layout what\n // the height is with the suggest_value. But that doesn't mean we need\n // to put it in the dom.\n var css_width = void 0;\n if (this.model._width.value - 20 > 0)\n css_width = this.model._width.value - 20 + 'px';\n else\n css_width = '100%';\n this.el.style.width = css_width;\n }\n };\n WidgetBoxView.prototype.get_height = function () {\n var height = 0;\n for (var key in this.child_views) {\n var child_view = this.child_views[key];\n var el = child_view.el;\n var style = getComputedStyle(el);\n var marginTop = parseInt(style.marginTop) || 0;\n var marginBottom = parseInt(style.marginBottom) || 0;\n height += el.offsetHeight + marginTop + marginBottom;\n }\n return height + 20;\n };\n WidgetBoxView.prototype.get_width = function () {\n if (this.model.width != null)\n return this.model.width;\n else {\n var width = this.el.scrollWidth + 20;\n for (var key in this.child_views) {\n var child_view = this.child_views[key];\n // Take the max width of all the children as the constrainer.\n var child_width = child_view.el.scrollWidth;\n if (child_width > width)\n width = child_width;\n }\n return width;\n }\n };\n return WidgetBoxView;\n }(layout_dom_1.LayoutDOMView);\n exports.WidgetBoxView = WidgetBoxView;\n var WidgetBox = function (_super) {\n tslib_1.__extends(WidgetBox, _super);\n function WidgetBox(attrs) {\n return _super.call(this, attrs) || this;\n }\n WidgetBox.initClass = function () {\n this.prototype.type = 'WidgetBox';\n this.prototype.default_view = WidgetBoxView;\n this.define({\n children: [\n p.Array,\n []\n ]\n });\n };\n WidgetBox.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n if (this.sizing_mode == 'fixed' && this.width == null) {\n this.width = 300;\n // Set a default for fixed.\n logging_1.logger.info('WidgetBox mode is fixed, but no width specified. Using default of 300.');\n }\n };\n WidgetBox.prototype.get_constrained_variables = function () {\n var vars = object_1.extend({}, _super.prototype.get_constrained_variables.call(this), {\n on_edge_align_top: this._top,\n on_edge_align_bottom: this._height_minus_bottom,\n on_edge_align_left: this._left,\n on_edge_align_right: this._width_minus_right,\n box_cell_align_top: this._top,\n box_cell_align_bottom: this._height_minus_bottom,\n box_cell_align_left: this._left,\n box_cell_align_right: this._width_minus_right,\n box_equal_size_top: this._top,\n box_equal_size_bottom: this._height_minus_bottom\n });\n if (this.sizing_mode != 'fixed') {\n vars.box_equal_size_left = this._left;\n vars.box_equal_size_right = this._width_minus_right;\n }\n return vars;\n };\n WidgetBox.prototype.get_layoutable_children = function () {\n return this.children;\n };\n return WidgetBox;\n }(layout_dom_1.LayoutDOM);\n exports.WidgetBox = WidgetBox;\n WidgetBox.initClass(); \n}","/*models/mappers/categorical_color_mapper*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var color_mapper_1 = require(151 /* ./color_mapper */);\n var p = require(15 /* core/properties */);\n var array_1 = require(21 /* core/util/array */);\n var types_1 = require(44 /* core/util/types */);\n function _equals(a, b) {\n if (a.length != b.length)\n return false;\n for (var i = 0, end = a.length; i < end; i++) {\n if (a[i] !== b[i])\n return false;\n }\n return true;\n }\n var CategoricalColorMapper = function (_super) {\n tslib_1.__extends(CategoricalColorMapper, _super);\n function CategoricalColorMapper(attrs) {\n return _super.call(this, attrs) || this;\n }\n CategoricalColorMapper.initClass = function () {\n this.prototype.type = 'CategoricalColorMapper';\n this.define({\n factors: [p.Array],\n start: [\n p.Number,\n 0\n ],\n end: [p.Number]\n });\n };\n CategoricalColorMapper.prototype._v_compute = function (data, values, palette, _a) {\n var nan_color = _a.nan_color;\n var _loop_1 = function (i, end) {\n var d = data[i];\n var key = void 0;\n if (types_1.isString(d))\n key = this_1.factors.indexOf(d);\n else {\n if (this_1.start != null) {\n if (this_1.end != null)\n d = d.slice(this_1.start, this_1.end);\n else\n d = d.slice(this_1.start);\n } else if (this_1.end != null)\n d = d.slice(0, this_1.end);\n if (d.length == 1)\n key = this_1.factors.indexOf(d[0]);\n else\n key = array_1.findIndex(this_1.factors, function (x) {\n return _equals(x, d);\n });\n }\n var color = void 0;\n if (key < 0 || key >= palette.length)\n color = nan_color;\n else\n color = palette[key];\n values[i] = color;\n };\n var this_1 = this;\n for (var i = 0, end = data.length; i < end; i++) {\n _loop_1(i, end);\n }\n };\n return CategoricalColorMapper;\n }(color_mapper_1.ColorMapper);\n exports.CategoricalColorMapper = CategoricalColorMapper;\n CategoricalColorMapper.initClass(); \n}","/*models/mappers/color_mapper*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var transform_1 = require(259 /* ../transforms/transform */);\n var p = require(15 /* core/properties */);\n var color_1 = require(27 /* core/util/color */);\n var compat_1 = require(28 /* core/util/compat */);\n function _convert_color(color) {\n if (color[0] != '#')\n color = color_1.color2hex(color);\n if (color.length != 9)\n color = color + 'ff';\n return parseInt(color.slice(1), 16);\n }\n exports._convert_color = _convert_color;\n function _convert_palette(palette) {\n var new_palette = new Uint32Array(palette.length);\n for (var i = 0, end = palette.length; i < end; i++)\n new_palette[i] = _convert_color(palette[i]);\n return new_palette;\n }\n exports._convert_palette = _convert_palette;\n function _uint32_to_rgba(values) {\n if (compat_1.is_little_endian) {\n var view = new DataView(values.buffer);\n for (var i = 0, end = values.length; i < end; i++)\n view.setUint32(i * 4, values[i]);\n }\n return new Uint8Array(values.buffer);\n }\n exports._uint32_to_rgba = _uint32_to_rgba;\n var ColorMapper = function (_super) {\n tslib_1.__extends(ColorMapper, _super);\n function ColorMapper(attrs) {\n return _super.call(this, attrs) || this;\n }\n ColorMapper.initClass = function () {\n this.prototype.type = 'ColorMapper';\n this.define({\n palette: [p.Any],\n nan_color: [\n p.Color,\n 'gray'\n ]\n });\n };\n ColorMapper.prototype.compute = function (_x) {\n // If it's just a single value, then a color mapper doesn't really make sense.\n throw new Error('not supported');\n };\n ColorMapper.prototype.v_compute = function (xs) {\n var values = new Array(xs.length);\n this._v_compute(xs, values, this.palette, this._colors(function (c) {\n return c;\n }));\n return values;\n };\n Object.defineProperty(ColorMapper.prototype, 'rgba_mapper', {\n get: function () {\n var self = this;\n var palette = _convert_palette(this.palette);\n var colors = this._colors(_convert_color);\n return {\n v_compute: function (xs) {\n var values = new Uint32Array(xs.length);\n self._v_compute(xs, values, palette, colors);\n return _uint32_to_rgba(values);\n }\n };\n },\n enumerable: true,\n configurable: true\n });\n ColorMapper.prototype._colors = function (conv) {\n return { nan_color: conv(this.nan_color) };\n };\n return ColorMapper;\n }(transform_1.Transform);\n exports.ColorMapper = ColorMapper;\n ColorMapper.initClass(); \n}","/*models/mappers/continuous_color_mapper*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var color_mapper_1 = require(151 /* ./color_mapper */);\n var p = require(15 /* core/properties */);\n var ContinuousColorMapper = function (_super) {\n tslib_1.__extends(ContinuousColorMapper, _super);\n function ContinuousColorMapper(attrs) {\n return _super.call(this, attrs) || this;\n }\n ContinuousColorMapper.initClass = function () {\n this.prototype.type = 'ContinuousColorMapper';\n this.define({\n high: [p.Number],\n low: [p.Number],\n high_color: [p.Color],\n low_color: [p.Color]\n });\n };\n ContinuousColorMapper.prototype._colors = function (conv) {\n return tslib_1.__assign({}, _super.prototype._colors.call(this, conv), {\n low_color: this.low_color != null ? conv(this.low_color) : undefined,\n high_color: this.high_color != null ? conv(this.high_color) : undefined\n });\n };\n return ContinuousColorMapper;\n }(color_mapper_1.ColorMapper);\n exports.ContinuousColorMapper = ContinuousColorMapper;\n ContinuousColorMapper.initClass(); \n}","/*models/mappers/index*/\nfunction _(require, module, exports) {\n var categorical_color_mapper_1 = require(150 /* ./categorical_color_mapper */);\n exports.CategoricalColorMapper = categorical_color_mapper_1.CategoricalColorMapper;\n var continuous_color_mapper_1 = require(152 /* ./continuous_color_mapper */);\n exports.ContinuousColorMapper = continuous_color_mapper_1.ContinuousColorMapper;\n var color_mapper_1 = require(151 /* ./color_mapper */);\n exports.ColorMapper = color_mapper_1.ColorMapper;\n var linear_color_mapper_1 = require(154 /* ./linear_color_mapper */);\n exports.LinearColorMapper = linear_color_mapper_1.LinearColorMapper;\n var log_color_mapper_1 = require(155 /* ./log_color_mapper */);\n exports.LogColorMapper = log_color_mapper_1.LogColorMapper; \n}","/*models/mappers/linear_color_mapper*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var continuous_color_mapper_1 = require(152 /* ./continuous_color_mapper */);\n var arrayable_1 = require(22 /* core/util/arrayable */);\n var LinearColorMapper = function (_super) {\n tslib_1.__extends(LinearColorMapper, _super);\n function LinearColorMapper(attrs) {\n return _super.call(this, attrs) || this;\n }\n LinearColorMapper.initClass = function () {\n this.prototype.type = 'LinearColorMapper';\n };\n LinearColorMapper.prototype._v_compute = function (data, values, palette, colors) {\n var nan_color = colors.nan_color, low_color = colors.low_color, high_color = colors.high_color;\n var low = this.low != null ? this.low : arrayable_1.min(data);\n var high = this.high != null ? this.high : arrayable_1.max(data);\n var max_key = palette.length - 1;\n var norm_factor = 1 / (high - low);\n var normed_interval = 1 / palette.length;\n for (var i = 0, end = data.length; i < end; i++) {\n var d = data[i];\n if (isNaN(d)) {\n values[i] = nan_color;\n continue;\n }\n // This handles the edge case where d == high, since the code below maps\n // values exactly equal to high to palette.length, which is greater than\n // max_key\n if (d == high) {\n values[i] = palette[max_key];\n continue;\n }\n var normed_d = (d - low) * norm_factor;\n var key = Math.floor(normed_d / normed_interval);\n if (key < 0)\n values[i] = low_color != null ? low_color : palette[0];\n else if (key > max_key)\n values[i] = high_color != null ? high_color : palette[max_key];\n else\n values[i] = palette[key];\n }\n };\n return LinearColorMapper;\n }(continuous_color_mapper_1.ContinuousColorMapper);\n exports.LinearColorMapper = LinearColorMapper;\n LinearColorMapper.initClass(); \n}","/*models/mappers/log_color_mapper*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var continuous_color_mapper_1 = require(152 /* ./continuous_color_mapper */);\n var arrayable_1 = require(22 /* core/util/arrayable */);\n // Math.log1p() is not supported by any version of IE, so let's use a polyfill based on\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/log1p.\n var log1p = Math.log1p != null ? Math.log1p : function (x) {\n return Math.log(1 + x);\n };\n var LogColorMapper = function (_super) {\n tslib_1.__extends(LogColorMapper, _super);\n function LogColorMapper(attrs) {\n return _super.call(this, attrs) || this;\n }\n LogColorMapper.initClass = function () {\n this.prototype.type = 'LogColorMapper';\n };\n LogColorMapper.prototype._v_compute = function (data, values, palette, colors) {\n var nan_color = colors.nan_color, low_color = colors.low_color, high_color = colors.high_color;\n var n = palette.length;\n var low = this.low != null ? this.low : arrayable_1.min(data);\n var high = this.high != null ? this.high : arrayable_1.max(data);\n var scale = n / (log1p(high) - log1p(low));\n // subtract the low offset\n var max_key = palette.length - 1;\n for (var i = 0, end = data.length; i < end; i++) {\n var d = data[i];\n // Check NaN\n if (isNaN(d)) {\n values[i] = nan_color;\n continue;\n }\n if (d > high) {\n values[i] = high_color != null ? high_color : palette[max_key];\n continue;\n }\n // This handles the edge case where d == high, since the code below maps\n // values exactly equal to high to palette.length, which is greater than\n // max_key\n if (d == high) {\n values[i] = palette[max_key];\n continue;\n }\n if (d < low) {\n values[i] = low_color != null ? low_color : palette[0];\n continue;\n }\n // Get the key\n var log = log1p(d) - log1p(low);\n // subtract the low offset\n var key = Math.floor(log * scale);\n // Deal with upper bound\n if (key > max_key)\n key = max_key;\n values[i] = palette[key];\n }\n };\n return LogColorMapper;\n }(continuous_color_mapper_1.ContinuousColorMapper);\n exports.LogColorMapper = LogColorMapper;\n LogColorMapper.initClass(); \n}","/*models/markers/index*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var marker_1 = require(157 /* ./marker */);\n var SQ3 = Math.sqrt(3);\n function _one_x(ctx, r) {\n ctx.moveTo(-r, r);\n ctx.lineTo(r, -r);\n ctx.moveTo(-r, -r);\n ctx.lineTo(r, r);\n }\n function _one_cross(ctx, r) {\n ctx.moveTo(0, r);\n ctx.lineTo(0, -r);\n ctx.moveTo(-r, 0);\n ctx.lineTo(r, 0);\n }\n function _one_diamond(ctx, r) {\n ctx.moveTo(0, r);\n ctx.lineTo(r / 1.5, 0);\n ctx.lineTo(0, -r);\n ctx.lineTo(-r / 1.5, 0);\n ctx.closePath();\n }\n function _one_hex(ctx, r) {\n var r2 = r / 2;\n var h = SQ3 * r2;\n ctx.moveTo(r, 0);\n ctx.lineTo(r2, -h);\n ctx.lineTo(-r2, -h);\n ctx.lineTo(-r, 0);\n ctx.lineTo(-r2, h);\n ctx.lineTo(r2, h);\n ctx.closePath();\n }\n function _one_tri(ctx, r) {\n var h = r * SQ3;\n var a = h / 3;\n ctx.moveTo(-r, a);\n ctx.lineTo(r, a);\n ctx.lineTo(0, a - h);\n ctx.closePath();\n }\n function asterisk(ctx, i, r, line, _fill) {\n var r2 = r * 0.65;\n _one_cross(ctx, r);\n _one_x(ctx, r2);\n if (line.doit) {\n line.set_vectorize(ctx, i);\n ctx.stroke();\n }\n }\n function circle_cross(ctx, i, r, line, fill) {\n ctx.arc(0, 0, r, 0, 2 * Math.PI, false);\n if (fill.doit) {\n fill.set_vectorize(ctx, i);\n ctx.fill();\n }\n if (line.doit) {\n line.set_vectorize(ctx, i);\n _one_cross(ctx, r);\n ctx.stroke();\n }\n }\n function circle_x(ctx, i, r, line, fill) {\n ctx.arc(0, 0, r, 0, 2 * Math.PI, false);\n if (fill.doit) {\n fill.set_vectorize(ctx, i);\n ctx.fill();\n }\n if (line.doit) {\n line.set_vectorize(ctx, i);\n _one_x(ctx, r);\n ctx.stroke();\n }\n }\n function cross(ctx, i, r, line, _fill) {\n _one_cross(ctx, r);\n if (line.doit) {\n line.set_vectorize(ctx, i);\n ctx.stroke();\n }\n }\n function diamond(ctx, i, r, line, fill) {\n _one_diamond(ctx, r);\n if (fill.doit) {\n fill.set_vectorize(ctx, i);\n ctx.fill();\n }\n if (line.doit) {\n line.set_vectorize(ctx, i);\n ctx.stroke();\n }\n }\n function diamond_cross(ctx, i, r, line, fill) {\n _one_diamond(ctx, r);\n if (fill.doit) {\n fill.set_vectorize(ctx, i);\n ctx.fill();\n }\n if (line.doit) {\n line.set_vectorize(ctx, i);\n _one_cross(ctx, r);\n ctx.stroke();\n }\n }\n function hex(ctx, i, r, line, fill) {\n _one_hex(ctx, r);\n if (fill.doit) {\n fill.set_vectorize(ctx, i);\n ctx.fill();\n }\n if (line.doit) {\n line.set_vectorize(ctx, i);\n ctx.stroke();\n }\n }\n function inverted_triangle(ctx, i, r, line, fill) {\n ctx.rotate(Math.PI);\n _one_tri(ctx, r);\n ctx.rotate(-Math.PI);\n if (fill.doit) {\n fill.set_vectorize(ctx, i);\n ctx.fill();\n }\n if (line.doit) {\n line.set_vectorize(ctx, i);\n ctx.stroke();\n }\n }\n function square(ctx, i, r, line, fill) {\n var size = 2 * r;\n ctx.rect(-r, -r, size, size);\n if (fill.doit) {\n fill.set_vectorize(ctx, i);\n ctx.fill();\n }\n if (line.doit) {\n line.set_vectorize(ctx, i);\n ctx.stroke();\n }\n }\n function square_cross(ctx, i, r, line, fill) {\n var size = 2 * r;\n ctx.rect(-r, -r, size, size);\n if (fill.doit) {\n fill.set_vectorize(ctx, i);\n ctx.fill();\n }\n if (line.doit) {\n line.set_vectorize(ctx, i);\n _one_cross(ctx, r);\n ctx.stroke();\n }\n }\n function square_x(ctx, i, r, line, fill) {\n var size = 2 * r;\n ctx.rect(-r, -r, size, size);\n if (fill.doit) {\n fill.set_vectorize(ctx, i);\n ctx.fill();\n }\n if (line.doit) {\n line.set_vectorize(ctx, i);\n _one_x(ctx, r);\n ctx.stroke();\n }\n }\n function triangle(ctx, i, r, line, fill) {\n _one_tri(ctx, r);\n if (fill.doit) {\n fill.set_vectorize(ctx, i);\n ctx.fill();\n }\n if (line.doit) {\n line.set_vectorize(ctx, i);\n ctx.stroke();\n }\n }\n function x(ctx, i, r, line, _fill) {\n _one_x(ctx, r);\n if (line.doit) {\n line.set_vectorize(ctx, i);\n ctx.stroke();\n }\n }\n function _mk_model(type, f) {\n var view = function (_super) {\n tslib_1.__extends(class_1, _super);\n function class_1() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n class_1.initClass = function () {\n this.prototype._render_one = f;\n };\n return class_1;\n }(marker_1.MarkerView);\n view.initClass();\n var model = function (_super) {\n tslib_1.__extends(class_2, _super);\n function class_2() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n class_2.initClass = function () {\n this.prototype.default_view = view;\n this.prototype.type = type;\n };\n return class_2;\n }(marker_1.Marker);\n model.initClass();\n return model;\n }\n // markers are final, so no need to export views\n exports.Asterisk = _mk_model('Asterisk', asterisk);\n exports.CircleCross = _mk_model('CircleCross', circle_cross);\n exports.CircleX = _mk_model('CircleX', circle_x);\n exports.Cross = _mk_model('Cross', cross);\n exports.Diamond = _mk_model('Diamond', diamond);\n exports.DiamondCross = _mk_model('DiamondCross', diamond_cross);\n exports.Hex = _mk_model('Hex', hex);\n exports.InvertedTriangle = _mk_model('InvertedTriangle', inverted_triangle);\n exports.Square = _mk_model('Square', square);\n exports.SquareCross = _mk_model('SquareCross', square_cross);\n exports.SquareX = _mk_model('SquareX', square_x);\n exports.Triangle = _mk_model('Triangle', triangle);\n exports.X = _mk_model('X', x); \n}","/*models/markers/marker*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var xy_glyph_1 = require(135 /* ../glyphs/xy_glyph */);\n var hittest = require(9 /* core/hittest */);\n var p = require(15 /* core/properties */);\n var array_1 = require(21 /* core/util/array */);\n var MarkerView = function (_super) {\n tslib_1.__extends(MarkerView, _super);\n function MarkerView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n MarkerView.prototype._render = function (ctx, indices, _a) {\n var sx = _a.sx, sy = _a.sy, _size = _a._size, _angle = _a._angle;\n for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {\n var i = indices_1[_i];\n if (isNaN(sx[i] + sy[i] + _size[i] + _angle[i]))\n continue;\n var r = _size[i] / 2;\n ctx.beginPath();\n ctx.translate(sx[i], sy[i]);\n if (_angle[i])\n ctx.rotate(_angle[i]);\n this._render_one(ctx, i, r, this.visuals.line, this.visuals.fill);\n if (_angle[i])\n ctx.rotate(-_angle[i]);\n ctx.translate(-sx[i], -sy[i]);\n }\n };\n MarkerView.prototype._mask_data = function () {\n // dilate the inner screen region by max_size and map back to data space for use in\n // spatial query\n var hr = this.renderer.plot_view.frame.bbox.h_range;\n var sx0 = hr.start - this.max_size;\n var sx1 = hr.end + this.max_size;\n var _a = this.renderer.xscale.r_invert(sx0, sx1), x0 = _a[0], x1 = _a[1];\n var vr = this.renderer.plot_view.frame.bbox.v_range;\n var sy0 = vr.start - this.max_size;\n var sy1 = vr.end + this.max_size;\n var _b = this.renderer.yscale.r_invert(sy0, sy1), y0 = _b[0], y1 = _b[1];\n var bbox = hittest.validate_bbox_coords([\n x0,\n x1\n ], [\n y0,\n y1\n ]);\n return this.index.indices(bbox);\n };\n MarkerView.prototype._hit_point = function (geometry) {\n var sx = geometry.sx, sy = geometry.sy;\n var sx0 = sx - this.max_size;\n var sx1 = sx + this.max_size;\n var _a = this.renderer.xscale.r_invert(sx0, sx1), x0 = _a[0], x1 = _a[1];\n var sy0 = sy - this.max_size;\n var sy1 = sy + this.max_size;\n var _b = this.renderer.yscale.r_invert(sy0, sy1), y0 = _b[0], y1 = _b[1];\n var bbox = hittest.validate_bbox_coords([\n x0,\n x1\n ], [\n y0,\n y1\n ]);\n var candidates = this.index.indices(bbox);\n var hits = [];\n for (var _i = 0, candidates_1 = candidates; _i < candidates_1.length; _i++) {\n var i = candidates_1[_i];\n var s2 = this._size[i] / 2;\n var dist = Math.abs(this.sx[i] - sx) + Math.abs(this.sy[i] - sy);\n if (Math.abs(this.sx[i] - sx) <= s2 && Math.abs(this.sy[i] - sy) <= s2) {\n hits.push([\n i,\n dist\n ]);\n }\n }\n return hittest.create_hit_test_result_from_hits(hits);\n };\n MarkerView.prototype._hit_span = function (geometry) {\n var sx = geometry.sx, sy = geometry.sy;\n var _a = this.bounds(), minX = _a.minX, minY = _a.minY, maxX = _a.maxX, maxY = _a.maxY;\n var result = hittest.create_empty_hit_test_result();\n var x0, x1;\n var y0, y1;\n if (geometry.direction == 'h') {\n y0 = minY;\n y1 = maxY;\n var ms = this.max_size / 2;\n var sx0 = sx - ms;\n var sx1 = sx + ms;\n _b = this.renderer.xscale.r_invert(sx0, sx1), x0 = _b[0], x1 = _b[1];\n } else {\n x0 = minX;\n x1 = maxX;\n var ms = this.max_size / 2;\n var sy0 = sy - ms;\n var sy1 = sy + ms;\n _c = this.renderer.yscale.r_invert(sy0, sy1), y0 = _c[0], y1 = _c[1];\n }\n var bbox = hittest.validate_bbox_coords([\n x0,\n x1\n ], [\n y0,\n y1\n ]);\n var hits = this.index.indices(bbox);\n result.indices = hits;\n return result;\n var _b, _c;\n };\n MarkerView.prototype._hit_rect = function (geometry) {\n var sx0 = geometry.sx0, sx1 = geometry.sx1, sy0 = geometry.sy0, sy1 = geometry.sy1;\n var _a = this.renderer.xscale.r_invert(sx0, sx1), x0 = _a[0], x1 = _a[1];\n var _b = this.renderer.yscale.r_invert(sy0, sy1), y0 = _b[0], y1 = _b[1];\n var bbox = hittest.validate_bbox_coords([\n x0,\n x1\n ], [\n y0,\n y1\n ]);\n var result = hittest.create_empty_hit_test_result();\n result.indices = this.index.indices(bbox);\n return result;\n };\n MarkerView.prototype._hit_poly = function (geometry) {\n var sx = geometry.sx, sy = geometry.sy;\n // TODO (bev) use spatial index to pare candidate list\n var candidates = array_1.range(0, this.sx.length);\n var hits = [];\n for (var i = 0, end = candidates.length; i < end; i++) {\n var idx = candidates[i];\n if (hittest.point_in_poly(this.sx[i], this.sy[i], sx, sy))\n hits.push(idx);\n }\n var result = hittest.create_empty_hit_test_result();\n result.indices = hits;\n return result;\n };\n MarkerView.prototype.draw_legend_for_index = function (ctx, _a, index) {\n var x0 = _a.x0, x1 = _a.x1, y0 = _a.y0, y1 = _a.y1;\n // using objects like this seems a little wonky, since the keys are coerced to\n // stings, but it works\n var len = index + 1;\n var sx = new Array(len);\n sx[index] = (x0 + x1) / 2;\n var sy = new Array(len);\n sy[index] = (y0 + y1) / 2;\n var size = new Array(len);\n size[index] = Math.min(Math.abs(x1 - x0), Math.abs(y1 - y0)) * 0.4;\n var angle = new Array(len);\n angle[index] = this._angle[index];\n this._render(ctx, [index], {\n sx: sx,\n sy: sy,\n _size: size,\n _angle: angle\n }); // XXX\n };\n return MarkerView;\n }(xy_glyph_1.XYGlyphView);\n exports.MarkerView = MarkerView;\n var Marker = function (_super) {\n tslib_1.__extends(Marker, _super);\n function Marker(attrs) {\n return _super.call(this, attrs) || this;\n }\n Marker.initClass = function () {\n this.mixins([\n 'line',\n 'fill'\n ]);\n this.define({\n size: [\n p.DistanceSpec,\n {\n units: 'screen',\n value: 4\n }\n ],\n angle: [\n p.AngleSpec,\n 0\n ]\n });\n };\n return Marker;\n }(xy_glyph_1.XYGlyph);\n exports.Marker = Marker;\n Marker.initClass(); \n}","/*models/plots/gmap_plot*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var logging_1 = require(14 /* core/logging */);\n var gmap_plot_canvas_1 = require(159 /* ./gmap_plot_canvas */);\n var plot_1 = require(161 /* ./plot */);\n var p = require(15 /* core/properties */);\n var model_1 = require(53 /* ../../model */);\n var MapOptions = function (_super) {\n tslib_1.__extends(MapOptions, _super);\n function MapOptions(attrs) {\n return _super.call(this, attrs) || this;\n }\n MapOptions.initClass = function () {\n this.prototype.type = 'MapOptions';\n this.define({\n lat: [p.Number],\n lng: [p.Number],\n zoom: [\n p.Number,\n 12\n ]\n });\n };\n return MapOptions;\n }(model_1.Model);\n exports.MapOptions = MapOptions;\n MapOptions.initClass();\n var GMapOptions = function (_super) {\n tslib_1.__extends(GMapOptions, _super);\n function GMapOptions(attrs) {\n return _super.call(this, attrs) || this;\n }\n GMapOptions.initClass = function () {\n this.prototype.type = 'GMapOptions';\n this.define({\n map_type: [\n p.String,\n 'roadmap'\n ],\n scale_control: [\n p.Bool,\n false\n ],\n styles: [p.String]\n });\n };\n return GMapOptions;\n }(MapOptions);\n exports.GMapOptions = GMapOptions;\n GMapOptions.initClass();\n var GMapPlotView = function (_super) {\n tslib_1.__extends(GMapPlotView, _super);\n function GMapPlotView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return GMapPlotView;\n }(plot_1.PlotView);\n exports.GMapPlotView = GMapPlotView;\n var GMapPlot = function (_super) {\n tslib_1.__extends(GMapPlot, _super);\n function GMapPlot(attrs) {\n return _super.call(this, attrs) || this;\n }\n GMapPlot.initClass = function () {\n this.prototype.type = 'GMapPlot';\n this.prototype.default_view = GMapPlotView;\n // Set all the PlotCanvas properties as internal.\n // This seems to be necessary so that everything can initialize.\n // Feels very clumsy, but I'm not sure how the properties system wants\n // to handle something like this situation.\n this.define({\n map_options: [p.Instance],\n api_key: [p.String]\n });\n };\n GMapPlot.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n if (!this.api_key)\n logging_1.logger.error('api_key is required. See https://developers.google.com/maps/documentation/javascript/get-api-key for more information on how to obtain your own.');\n };\n GMapPlot.prototype._init_plot_canvas = function () {\n return new gmap_plot_canvas_1.GMapPlotCanvas({ plot: this });\n };\n return GMapPlot;\n }(plot_1.Plot);\n exports.GMapPlot = GMapPlot;\n GMapPlot.initClass(); \n}","/*models/plots/gmap_plot_canvas*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var signaling_1 = require(19 /* core/signaling */);\n var projections_1 = require(33 /* core/util/projections */);\n var plot_canvas_1 = require(162 /* ./plot_canvas */);\n var gmaps_ready = new signaling_1.Signal0({}, 'gmaps_ready');\n var load_google_api = function (api_key) {\n _bokeh_gmaps_callback = function () {\n return gmaps_ready.emit();\n };\n var script = document.createElement('script');\n script.type = 'text/javascript';\n script.src = 'https://maps.googleapis.com/maps/api/js?key=' + api_key + '&callback=_bokeh_gmaps_callback';\n document.body.appendChild(script);\n };\n var GMapPlotCanvasView = function (_super) {\n tslib_1.__extends(GMapPlotCanvasView, _super);\n function GMapPlotCanvasView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n GMapPlotCanvasView.prototype.initialize = function (options) {\n var _this = this;\n this.pause();\n _super.prototype.initialize.call(this, options);\n this._tiles_loaded = false;\n this.zoom_count = 0;\n var _a = this.model.plot.map_options, zoom = _a.zoom, lat = _a.lat, lng = _a.lng;\n this.initial_zoom = zoom;\n this.initial_lat = lat;\n this.initial_lng = lng;\n this.canvas_view.map_el.style.position = 'absolute';\n if (typeof google === 'undefined' || google.maps == null) {\n if (typeof _bokeh_gmaps_callback === 'undefined') {\n load_google_api(this.model.plot.api_key);\n }\n gmaps_ready.connect(function () {\n return _this.request_render();\n });\n }\n this.unpause();\n };\n GMapPlotCanvasView.prototype.update_range = function (range_info) {\n // RESET -------------------------\n if (range_info == null) {\n this.map.setCenter({\n lat: this.initial_lat,\n lng: this.initial_lng\n });\n this.map.setOptions({ zoom: this.initial_zoom });\n _super.prototype.update_range.call(this, null); // PAN ----------------------------\n } else if (range_info.sdx != null || range_info.sdy != null) {\n this.map.panBy(range_info.sdx || 0, range_info.sdy || 0);\n _super.prototype.update_range.call(this, range_info); // ZOOM ---------------------------\n } else if (range_info.factor != null) {\n // The zoom count decreases the sensitivity of the zoom. (We could make this user configurable)\n var zoom_change = void 0;\n if (this.zoom_count !== 10) {\n this.zoom_count += 1;\n return;\n }\n this.zoom_count = 0;\n this.pause();\n _super.prototype.update_range.call(this, range_info);\n if (range_info.factor < 0)\n zoom_change = -1;\n else\n zoom_change = 1;\n var old_map_zoom = this.map.getZoom();\n var new_map_zoom = old_map_zoom + zoom_change;\n // Zooming out too far causes problems\n if (new_map_zoom >= 2) {\n this.map.setZoom(new_map_zoom);\n // Check we haven't gone out of bounds, and if we have undo the zoom\n var _a = this._get_projected_bounds(), proj_xstart = _a[0], proj_xend = _a[1];\n if (proj_xend - proj_xstart < 0) {\n this.map.setZoom(old_map_zoom);\n }\n }\n this.unpause();\n }\n // Finally re-center\n this._set_bokeh_ranges();\n };\n GMapPlotCanvasView.prototype._build_map = function () {\n var _this = this;\n var maps = google.maps;\n this.map_types = {\n satellite: maps.MapTypeId.SATELLITE,\n terrain: maps.MapTypeId.TERRAIN,\n roadmap: maps.MapTypeId.ROADMAP,\n hybrid: maps.MapTypeId.HYBRID\n };\n var mo = this.model.plot.map_options;\n var map_options = {\n center: new maps.LatLng(mo.lat, mo.lng),\n zoom: mo.zoom,\n disableDefaultUI: true,\n mapTypeId: this.map_types[mo.map_type],\n scaleControl: mo.scale_control\n };\n if (mo.styles != null)\n map_options.styles = JSON.parse(mo.styles);\n // create the map with above options in div\n this.map = new maps.Map(this.canvas_view.map_el, map_options);\n // update bokeh ranges whenever the map idles, which should be after most UI action\n maps.event.addListener(this.map, 'idle', function () {\n return _this._set_bokeh_ranges();\n });\n // also need an event when bounds change so that map resizes trigger renders too\n maps.event.addListener(this.map, 'bounds_changed', function () {\n return _this._set_bokeh_ranges();\n });\n maps.event.addListenerOnce(this.map, 'tilesloaded', function () {\n return _this._render_finished();\n });\n // wire up listeners so that changes to properties are reflected\n this.connect(this.model.plot.properties.map_options.change, function () {\n return _this._update_options();\n });\n this.connect(this.model.plot.map_options.properties.styles.change, function () {\n return _this._update_styles();\n });\n this.connect(this.model.plot.map_options.properties.lat.change, function () {\n return _this._update_center('lat');\n });\n this.connect(this.model.plot.map_options.properties.lng.change, function () {\n return _this._update_center('lng');\n });\n this.connect(this.model.plot.map_options.properties.zoom.change, function () {\n return _this._update_zoom();\n });\n this.connect(this.model.plot.map_options.properties.map_type.change, function () {\n return _this._update_map_type();\n });\n this.connect(this.model.plot.map_options.properties.scale_control.change, function () {\n return _this._update_scale_control();\n });\n };\n GMapPlotCanvasView.prototype._render_finished = function () {\n this._tiles_loaded = true;\n this.notify_finished();\n };\n GMapPlotCanvasView.prototype.has_finished = function () {\n return _super.prototype.has_finished.call(this) && this._tiles_loaded === true;\n };\n GMapPlotCanvasView.prototype._get_latlon_bounds = function () {\n var bounds = this.map.getBounds();\n var top_right = bounds.getNorthEast();\n var bottom_left = bounds.getSouthWest();\n var xstart = bottom_left.lng();\n var xend = top_right.lng();\n var ystart = bottom_left.lat();\n var yend = top_right.lat();\n return [\n xstart,\n xend,\n ystart,\n yend\n ];\n };\n GMapPlotCanvasView.prototype._get_projected_bounds = function () {\n var _a = this._get_latlon_bounds(), xstart = _a[0], xend = _a[1], ystart = _a[2], yend = _a[3];\n var _b = projections_1.wgs84_mercator.forward([\n xstart,\n ystart\n ]), proj_xstart = _b[0], proj_ystart = _b[1];\n var _c = projections_1.wgs84_mercator.forward([\n xend,\n yend\n ]), proj_xend = _c[0], proj_yend = _c[1];\n return [\n proj_xstart,\n proj_xend,\n proj_ystart,\n proj_yend\n ];\n };\n GMapPlotCanvasView.prototype._set_bokeh_ranges = function () {\n var _a = this._get_projected_bounds(), proj_xstart = _a[0], proj_xend = _a[1], proj_ystart = _a[2], proj_yend = _a[3];\n this.frame.x_range.setv({\n start: proj_xstart,\n end: proj_xend\n });\n this.frame.y_range.setv({\n start: proj_ystart,\n end: proj_yend\n });\n };\n GMapPlotCanvasView.prototype._update_center = function (fld) {\n var c = this.map.getCenter().toJSON();\n c[fld] = this.model.plot.map_options[fld];\n this.map.setCenter(c);\n this._set_bokeh_ranges();\n };\n GMapPlotCanvasView.prototype._update_map_type = function () {\n this.map.setOptions({ mapTypeId: this.map_types[this.model.plot.map_options.map_type] });\n };\n GMapPlotCanvasView.prototype._update_scale_control = function () {\n this.map.setOptions({ scaleControl: this.model.plot.map_options.scale_control });\n };\n GMapPlotCanvasView.prototype._update_options = function () {\n this._update_styles();\n this._update_center('lat');\n this._update_center('lng');\n this._update_zoom();\n this._update_map_type();\n };\n GMapPlotCanvasView.prototype._update_styles = function () {\n this.map.setOptions({ styles: JSON.parse(this.model.plot.map_options.styles) });\n };\n GMapPlotCanvasView.prototype._update_zoom = function () {\n this.map.setOptions({ zoom: this.model.plot.map_options.zoom });\n this._set_bokeh_ranges();\n };\n // this method is expected and called by PlotCanvasView.render\n GMapPlotCanvasView.prototype._map_hook = function (_ctx, frame_box) {\n var left = frame_box[0], top = frame_box[1], width = frame_box[2], height = frame_box[3];\n this.canvas_view.map_el.style.top = top + 'px';\n this.canvas_view.map_el.style.left = left + 'px';\n this.canvas_view.map_el.style.width = width + 'px';\n this.canvas_view.map_el.style.height = height + 'px';\n if (this.map == null && typeof google !== 'undefined' && google.maps != null)\n this._build_map();\n };\n // this overrides the standard _paint_empty to make the inner canvas transparent\n GMapPlotCanvasView.prototype._paint_empty = function (ctx, frame_box) {\n var ow = this.canvas._width.value;\n var oh = this.canvas._height.value;\n var left = frame_box[0], top = frame_box[1], iw = frame_box[2], ih = frame_box[3];\n ctx.clearRect(0, 0, ow, oh);\n ctx.beginPath();\n ctx.moveTo(0, 0);\n ctx.lineTo(0, oh);\n ctx.lineTo(ow, oh);\n ctx.lineTo(ow, 0);\n ctx.lineTo(0, 0);\n ctx.moveTo(left, top);\n ctx.lineTo(left + iw, top);\n ctx.lineTo(left + iw, top + ih);\n ctx.lineTo(left, top + ih);\n ctx.lineTo(left, top);\n ctx.closePath();\n ctx.fillStyle = this.model.plot.border_fill_color;\n ctx.fill();\n };\n return GMapPlotCanvasView;\n }(plot_canvas_1.PlotCanvasView);\n exports.GMapPlotCanvasView = GMapPlotCanvasView;\n var GMapPlotCanvas = function (_super) {\n tslib_1.__extends(GMapPlotCanvas, _super);\n function GMapPlotCanvas(attrs) {\n return _super.call(this, attrs) || this;\n }\n GMapPlotCanvas.initClass = function () {\n this.prototype.type = 'GMapPlotCanvas';\n this.prototype.default_view = GMapPlotCanvasView;\n };\n GMapPlotCanvas.prototype.initialize = function () {\n this.use_map = true;\n _super.prototype.initialize.call(this);\n };\n return GMapPlotCanvas;\n }(plot_canvas_1.PlotCanvas);\n exports.GMapPlotCanvas = GMapPlotCanvas;\n GMapPlotCanvas.initClass(); \n}","/*models/plots/index*/\nfunction _(require, module, exports) {\n var gmap_plot_1 = require(158 /* ./gmap_plot */);\n exports.MapOptions = gmap_plot_1.MapOptions;\n var gmap_plot_2 = require(158 /* ./gmap_plot */);\n exports.GMapOptions = gmap_plot_2.GMapOptions;\n var gmap_plot_3 = require(158 /* ./gmap_plot */);\n exports.GMapPlot = gmap_plot_3.GMapPlot;\n var gmap_plot_canvas_1 = require(159 /* ./gmap_plot_canvas */);\n exports.GMapPlotCanvas = gmap_plot_canvas_1.GMapPlotCanvas;\n var plot_1 = require(161 /* ./plot */);\n exports.Plot = plot_1.Plot;\n var plot_canvas_1 = require(162 /* ./plot_canvas */);\n exports.PlotCanvas = plot_canvas_1.PlotCanvas; \n}","/*models/plots/plot*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var solver_1 = require(13 /* core/layout/solver */);\n var logging_1 = require(14 /* core/logging */);\n var p = require(15 /* core/properties */);\n var signaling_1 = require(19 /* core/signaling */);\n var array_1 = require(21 /* core/util/array */);\n var object_1 = require(32 /* core/util/object */);\n var types_1 = require(44 /* core/util/types */);\n var layout_dom_1 = require(146 /* ../layouts/layout_dom */);\n var title_1 = require(68 /* ../annotations/title */);\n var linear_scale_1 = require(176 /* ../scales/linear_scale */);\n var toolbar_1 = require(248 /* ../tools/toolbar */);\n var toolbar_panel_1 = require(69 /* ../annotations/toolbar_panel */);\n var plot_canvas_1 = require(162 /* ./plot_canvas */);\n var column_data_source_1 = require(184 /* ../sources/column_data_source */);\n var glyph_renderer_1 = require(169 /* ../renderers/glyph_renderer */);\n var bokeh_events_1 = require(3 /* core/bokeh_events */);\n var PlotView = function (_super) {\n tslib_1.__extends(PlotView, _super);\n function PlotView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n PlotView.prototype.connect_signals = function () {\n _super.prototype.connect_signals.call(this);\n // Note: Title object cannot be replaced after initialization, similar to axes, and also\n // not being able to change the sizing_mode. All of these changes require a re-initialization\n // of all constraints which we don't currently support.\n var title_msg = 'Title object cannot be replaced. Try changing properties on title to update it after initialization.';\n this.connect(this.model.properties.title.change, function () {\n return logging_1.logger.warn(title_msg);\n });\n };\n PlotView.prototype.css_classes = function () {\n return _super.prototype.css_classes.call(this).concat('bk-plot-layout');\n };\n PlotView.prototype.get_height = function () {\n return this.model._width.value / this.model.get_aspect_ratio();\n };\n PlotView.prototype.get_width = function () {\n return this.model._height.value * this.model.get_aspect_ratio();\n };\n PlotView.prototype.save = function (name) {\n this.plot_canvas_view.save(name);\n };\n Object.defineProperty(PlotView.prototype, 'plot_canvas_view', {\n get: function () {\n // XXX: PlotCanvasView is not LayoutDOMView\n return this.child_views[this.model.plot_canvas.id];\n },\n enumerable: true,\n configurable: true\n });\n return PlotView;\n }(layout_dom_1.LayoutDOMView);\n exports.PlotView = PlotView;\n var Plot = function (_super) {\n tslib_1.__extends(Plot, _super);\n function Plot(attrs) {\n return _super.call(this, attrs) || this;\n }\n Plot.initClass = function () {\n this.prototype.type = 'Plot';\n this.prototype.default_view = PlotView;\n this.mixins([\n 'line:outline_',\n 'fill:background_',\n 'fill:border_'\n ]);\n this.define({\n toolbar: [\n p.Instance,\n function () {\n return new toolbar_1.Toolbar();\n }\n ],\n toolbar_location: [\n p.Location,\n 'right'\n ],\n toolbar_sticky: [\n p.Boolean,\n true\n ],\n plot_width: [\n p.Number,\n 600\n ],\n plot_height: [\n p.Number,\n 600\n ],\n title: [\n p.Any,\n function () {\n return new title_1.Title({ text: '' });\n }\n ],\n title_location: [\n p.Location,\n 'above'\n ],\n h_symmetry: [\n p.Bool,\n true\n ],\n v_symmetry: [\n p.Bool,\n false\n ],\n above: [\n p.Array,\n []\n ],\n below: [\n p.Array,\n []\n ],\n left: [\n p.Array,\n []\n ],\n right: [\n p.Array,\n []\n ],\n renderers: [\n p.Array,\n []\n ],\n x_range: [p.Instance],\n extra_x_ranges: [\n p.Any,\n {}\n ],\n y_range: [p.Instance],\n extra_y_ranges: [\n p.Any,\n {}\n ],\n x_scale: [\n p.Instance,\n function () {\n return new linear_scale_1.LinearScale();\n }\n ],\n y_scale: [\n p.Instance,\n function () {\n return new linear_scale_1.LinearScale();\n }\n ],\n lod_factor: [\n p.Number,\n 10\n ],\n lod_interval: [\n p.Number,\n 300\n ],\n lod_threshold: [\n p.Number,\n 2000\n ],\n lod_timeout: [\n p.Number,\n 500\n ],\n hidpi: [\n p.Bool,\n true\n ],\n output_backend: [\n p.OutputBackend,\n 'canvas'\n ],\n min_border: [\n p.Number,\n 5\n ],\n min_border_top: [\n p.Number,\n null\n ],\n min_border_left: [\n p.Number,\n null\n ],\n min_border_bottom: [\n p.Number,\n null\n ],\n min_border_right: [\n p.Number,\n null\n ],\n inner_width: [p.Number],\n inner_height: [p.Number],\n layout_width: [p.Number],\n layout_height: [p.Number],\n match_aspect: [\n p.Bool,\n false\n ],\n aspect_scale: [\n p.Number,\n 1\n ]\n });\n this.override({\n outline_line_color: '#e5e5e5',\n border_fill_color: '#ffffff',\n background_fill_color: '#ffffff'\n });\n bokeh_events_1.register_with_event(bokeh_events_1.UIEvent, this);\n };\n Plot.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n this.reset = new signaling_1.Signal0(this, 'reset');\n for (var _i = 0, _a = object_1.values(this.extra_x_ranges).concat(this.x_range); _i < _a.length; _i++) {\n var xr = _a[_i];\n var plots = xr.plots;\n if (types_1.isArray(plots)) {\n plots = plots.concat(this);\n xr.setv({ plots: plots }, { silent: true });\n }\n }\n for (var _b = 0, _c = object_1.values(this.extra_y_ranges).concat(this.y_range); _b < _c.length; _b++) {\n var yr = _c[_b];\n var plots = yr.plots;\n if (types_1.isArray(plots)) {\n plots = plots.concat(this);\n yr.setv({ plots: plots }, { silent: true });\n }\n }\n // Min border applies to the edge of everything\n if (this.min_border != null) {\n if (this.min_border_top == null)\n this.min_border_top = this.min_border;\n if (this.min_border_bottom == null)\n this.min_border_bottom = this.min_border;\n if (this.min_border_left == null)\n this.min_border_left = this.min_border;\n if (this.min_border_right == null)\n this.min_border_right = this.min_border;\n }\n // Setup side renderers\n for (var _d = 0, _e = [\n 'above',\n 'below',\n 'left',\n 'right'\n ]; _d < _e.length; _d++) {\n var side = _e[_d];\n var layout_renderers = this.getv(side);\n for (var _f = 0, layout_renderers_1 = layout_renderers; _f < layout_renderers_1.length; _f++) {\n var renderer = layout_renderers_1[_f];\n renderer.add_panel(side);\n }\n }\n this._init_title_panel();\n this._init_toolbar_panel();\n this._plot_canvas = this._init_plot_canvas();\n this.plot_canvas.toolbar = this.toolbar;\n // Set width & height to be the passed in plot_width and plot_height\n // We may need to be more subtle about this - not sure why people use one\n // or the other.\n if (this.width == null)\n this.width = this.plot_width;\n if (this.height == null)\n this.height = this.plot_height;\n };\n Plot.prototype._init_plot_canvas = function () {\n return new plot_canvas_1.PlotCanvas({ plot: this });\n };\n Plot.prototype._init_title_panel = function () {\n if (this.title != null) {\n var title = types_1.isString(this.title) ? new title_1.Title({ text: this.title }) : this.title;\n this.add_layout(title, this.title_location);\n }\n };\n Plot.prototype._init_toolbar_panel = function () {\n var _this = this;\n var tpanel = array_1.find(this.renderers, function (model) {\n return model instanceof toolbar_panel_1.ToolbarPanel && array_1.includes(model.tags, _this.id);\n });\n if (tpanel != null)\n this.remove_layout(tpanel);\n switch (this.toolbar_location) {\n case 'left':\n case 'right':\n case 'above':\n case 'below': {\n tpanel = new toolbar_panel_1.ToolbarPanel({\n toolbar: this.toolbar,\n tags: [this.id]\n });\n this.toolbar.toolbar_location = this.toolbar_location;\n if (this.toolbar_sticky) {\n var models = this.getv(this.toolbar_location);\n var title = array_1.find(models, function (model) {\n return model instanceof title_1.Title;\n });\n if (title != null) {\n tpanel.set_panel(title.panel);\n // XXX, XXX: because find() doesn't provide narrowed types\n this.add_renderers(tpanel);\n return;\n }\n }\n this.add_layout(tpanel, this.toolbar_location);\n break;\n }\n }\n };\n Plot.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.properties.toolbar_location.change, function () {\n return _this._init_toolbar_panel();\n });\n };\n Object.defineProperty(Plot.prototype, 'plot_canvas', {\n get: function () {\n return this._plot_canvas;\n },\n enumerable: true,\n configurable: true\n });\n Plot.prototype._doc_attached = function () {\n this.plot_canvas.attach_document(this.document);\n // XXX!\n _super.prototype._doc_attached.call(this);\n };\n Plot.prototype.add_renderers = function () {\n var new_renderers = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n new_renderers[_i] = arguments[_i];\n }\n var renderers = this.renderers;\n renderers = renderers.concat(new_renderers);\n this.renderers = renderers;\n };\n Plot.prototype.add_layout = function (renderer, side) {\n if (side === void 0) {\n side = 'center';\n }\n if (renderer.props.plot != null)\n renderer.plot = this;\n // XXX\n if (side != 'center') {\n var side_renderers = this.getv(side);\n side_renderers.push(renderer);\n renderer.add_panel(side); // XXX\n }\n this.add_renderers(renderer);\n };\n Plot.prototype.remove_layout = function (renderer) {\n var del = function (items) {\n array_1.removeBy(items, function (item) {\n return item == renderer;\n });\n };\n del(this.left);\n del(this.right);\n del(this.above);\n del(this.below);\n del(this.renderers);\n };\n Plot.prototype.add_glyph = function (glyph, source, extra_attrs) {\n if (source === void 0) {\n source = new column_data_source_1.ColumnDataSource();\n }\n if (extra_attrs === void 0) {\n extra_attrs = {};\n }\n var attrs = object_1.extend({}, extra_attrs, {\n data_source: source,\n glyph: glyph\n });\n var renderer = new glyph_renderer_1.GlyphRenderer(attrs);\n this.add_renderers(renderer);\n return renderer;\n };\n Plot.prototype.add_tools = function () {\n var tools = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n tools[_i] = arguments[_i];\n }\n for (var _a = 0, tools_1 = tools; _a < tools_1.length; _a++) {\n var tool = tools_1[_a];\n if (tool.overlay != null)\n // XXX\n this.add_renderers(tool.overlay);\n }\n this.toolbar.tools = this.toolbar.tools.concat(tools);\n };\n Plot.prototype.get_layoutable_children = function () {\n return [this.plot_canvas];\n };\n Plot.prototype.get_constraints = function () {\n var constraints = _super.prototype.get_constraints.call(this);\n constraints.push(solver_1.EQ(this._width, [\n -1,\n this.plot_canvas._width\n ]));\n constraints.push(solver_1.EQ(this._height, [\n -1,\n this.plot_canvas._height\n ]));\n return constraints;\n };\n Plot.prototype.get_constrained_variables = function () {\n var vars = object_1.extend({}, _super.prototype.get_constrained_variables.call(this), {\n on_edge_align_top: this.plot_canvas._top,\n on_edge_align_bottom: this.plot_canvas._height_minus_bottom,\n on_edge_align_left: this.plot_canvas._left,\n on_edge_align_right: this.plot_canvas._width_minus_right,\n box_cell_align_top: this.plot_canvas._top,\n box_cell_align_bottom: this.plot_canvas._height_minus_bottom,\n box_cell_align_left: this.plot_canvas._left,\n box_cell_align_right: this.plot_canvas._width_minus_right,\n box_equal_size_top: this.plot_canvas._top,\n box_equal_size_bottom: this.plot_canvas._height_minus_bottom\n });\n if (this.sizing_mode != 'fixed') {\n vars.box_equal_size_left = this.plot_canvas._left;\n vars.box_equal_size_right = this.plot_canvas._width_minus_right;\n }\n return vars;\n };\n Object.defineProperty(Plot.prototype, 'all_renderers', {\n get: function () {\n var renderers = this.renderers;\n for (var _i = 0, _a = this.toolbar.tools; _i < _a.length; _i++) {\n var tool = _a[_i];\n renderers = renderers.concat(tool.synthetic_renderers);\n }\n return renderers;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Plot.prototype, 'webgl', {\n get: function () {\n logging_1.logger.warn('webgl attr is deprecated, use output_backend');\n return this.output_backend == 'webgl';\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Plot.prototype, 'tool_events', {\n get: function () {\n logging_1.logger.warn('tool_events attr is deprecated, use SelectionGeometry Event');\n return null;\n },\n enumerable: true,\n configurable: true\n });\n return Plot;\n }(layout_dom_1.LayoutDOM);\n exports.Plot = Plot;\n Plot.initClass(); \n}","/*models/plots/plot_canvas*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var canvas_1 = require(84 /* ../canvas/canvas */);\n var cartesian_frame_1 = require(85 /* ../canvas/cartesian_frame */);\n var data_range1d_1 = require(164 /* ../ranges/data_range1d */);\n var glyph_renderer_1 = require(169 /* ../renderers/glyph_renderer */);\n var layout_dom_1 = require(146 /* ../layouts/layout_dom */);\n var bokeh_events_1 = require(3 /* core/bokeh_events */);\n var signaling_1 = require(19 /* core/signaling */);\n var build_views_1 = require(4 /* core/build_views */);\n var ui_events_1 = require(20 /* core/ui_events */);\n var visuals_1 = require(49 /* core/visuals */);\n var dom_view_1 = require(6 /* core/dom_view */);\n var layout_canvas_1 = require(11 /* core/layout/layout_canvas */);\n var alignments_1 = require(10 /* core/layout/alignments */);\n var solver_1 = require(13 /* core/layout/solver */);\n var logging_1 = require(14 /* core/logging */);\n var enums = require(7 /* core/enums */);\n var p = require(15 /* core/properties */);\n var throttle_1 = require(42 /* core/util/throttle */);\n var types_1 = require(44 /* core/util/types */);\n var array_1 = require(21 /* core/util/array */);\n var object_1 = require(32 /* core/util/object */);\n var side_panel_1 = require(12 /* core/layout/side_panel */);\n var global_gl = null;\n var PlotCanvasView = function (_super) {\n tslib_1.__extends(PlotCanvasView, _super);\n function PlotCanvasView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n Object.defineProperty(PlotCanvasView.prototype, 'frame', {\n // compat, to be removed\n get: function () {\n return this.model.frame;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(PlotCanvasView.prototype, 'canvas', {\n get: function () {\n return this.model.canvas;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(PlotCanvasView.prototype, 'canvas_overlays', {\n get: function () {\n return this.canvas_view.overlays_el;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(PlotCanvasView.prototype, 'canvas_events', {\n get: function () {\n return this.canvas_view.events_el;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(PlotCanvasView.prototype, 'is_paused', {\n get: function () {\n return this._is_paused != null && this._is_paused !== 0;\n },\n enumerable: true,\n configurable: true\n });\n PlotCanvasView.prototype.view_options = function () {\n return {\n plot_view: this,\n parent: this\n };\n };\n PlotCanvasView.prototype.pause = function () {\n if (this._is_paused == null)\n this._is_paused = 1;\n else\n this._is_paused += 1;\n };\n PlotCanvasView.prototype.unpause = function (no_render) {\n if (no_render === void 0) {\n no_render = false;\n }\n if (this._is_paused == null)\n throw new Error('wasn\\'t paused');\n this._is_paused -= 1;\n if (this._is_paused == 0 && !no_render)\n this.request_render();\n };\n PlotCanvasView.prototype.request_render = function () {\n this.request_paint();\n };\n PlotCanvasView.prototype.request_paint = function () {\n if (!this.is_paused)\n this.throttled_paint();\n };\n PlotCanvasView.prototype.reset = function () {\n this.clear_state();\n this.reset_range();\n this.reset_selection();\n this.model.plot.trigger_event(new bokeh_events_1.Reset());\n };\n PlotCanvasView.prototype.remove = function () {\n build_views_1.remove_views(this.renderer_views);\n build_views_1.remove_views(this.tool_views);\n this.canvas_view.remove();\n _super.prototype.remove.call(this);\n };\n PlotCanvasView.prototype.css_classes = function () {\n return _super.prototype.css_classes.call(this).concat('bk-plot-wrapper');\n };\n PlotCanvasView.prototype.initialize = function (options) {\n var _this = this;\n this.pause();\n _super.prototype.initialize.call(this, options);\n this.force_paint = new signaling_1.Signal0(this, 'force_paint');\n this.state_changed = new signaling_1.Signal0(this, 'state_changed');\n this.lod_started = false;\n this.visuals = new visuals_1.Visuals(this.model.plot);\n // XXX\n this._initial_state_info = {\n selection: {},\n dimensions: {\n width: this.model.canvas._width.value,\n height: this.model.canvas._height.value\n }\n };\n this.state = {\n history: [],\n index: -1\n };\n this.canvas_view = new this.canvas.default_view({\n model: this.canvas,\n parent: this\n });\n this.el.appendChild(this.canvas_view.el);\n this.canvas_view.render();\n // If requested, try enabling webgl\n if (this.model.plot.output_backend == 'webgl')\n this.init_webgl();\n this.throttled_paint = throttle_1.throttle(function () {\n return _this.force_paint.emit();\n }, 15);\n // TODO (bev) configurable\n this.ui_event_bus = new ui_events_1.UIEvents(this, this.model.toolbar, this.canvas_view.events_el, this.model.plot);\n this.levels = {};\n for (var _i = 0, _a = enums.RenderLevel; _i < _a.length; _i++) {\n var level = _a[_i];\n this.levels[level] = {};\n }\n this.renderer_views = {};\n this.tool_views = {};\n this.build_levels();\n this.build_tools();\n this.update_dataranges();\n this.unpause(true);\n logging_1.logger.debug('PlotView initialized');\n };\n PlotCanvasView.prototype.set_cursor = function (cursor) {\n if (cursor === void 0) {\n cursor = 'default';\n }\n this.canvas_view.el.style.cursor = cursor;\n };\n PlotCanvasView.prototype.init_webgl = function () {\n // We use a global invisible canvas and gl context. By having a global context,\n // we avoid the limitation of max 16 contexts that most browsers have.\n if (global_gl == null) {\n var canvas = document.createElement('canvas');\n var opts = { premultipliedAlpha: true };\n var ctx = canvas.getContext('webgl', opts) || canvas.getContext('experimental-webgl', opts);\n // If WebGL is available, we store a reference to the gl canvas on\n // the ctx object, because that's what gets passed everywhere.\n if (ctx != null)\n global_gl = {\n canvas: canvas,\n ctx: ctx\n };\n }\n if (global_gl != null)\n this.gl = global_gl;\n else\n logging_1.logger.warn('WebGL is not supported, falling back to 2D canvas.');\n };\n PlotCanvasView.prototype.prepare_webgl = function (ratio, frame_box) {\n // Prepare WebGL for a drawing pass\n if (this.gl != null) {\n var canvas = this.canvas_view.get_canvas_element();\n // Sync canvas size\n this.gl.canvas.width = canvas.width;\n this.gl.canvas.height = canvas.height;\n // Prepare GL for drawing\n var gl = this.gl.ctx;\n gl.viewport(0, 0, this.gl.canvas.width, this.gl.canvas.height);\n gl.clearColor(0, 0, 0, 0);\n gl.clear(gl.COLOR_BUFFER_BIT || gl.DEPTH_BUFFER_BIT);\n // Clipping\n gl.enable(gl.SCISSOR_TEST);\n var sx = frame_box[0], sy = frame_box[1], w = frame_box[2], h = frame_box[3];\n var _a = this.model.canvas, xview = _a.xview, yview = _a.yview;\n var vx = xview.compute(sx);\n var vy = yview.compute(sy + h);\n gl.scissor(ratio * vx, ratio * vy, ratio * w, ratio * h);\n // lower left corner, width, height\n // Setup blending\n gl.enable(gl.BLEND);\n gl.blendFuncSeparate(gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA, gl.ONE_MINUS_DST_ALPHA, gl.ONE); // premultipliedAlpha == true\n }\n };\n //gl.blendFuncSeparate(gl.ONE_MINUS_DST_ALPHA, gl.DST_ALPHA, gl.ONE_MINUS_DST_ALPHA, gl.ONE) # Without premultipliedAlpha == false\n PlotCanvasView.prototype.blit_webgl = function (ratio) {\n // This should be called when the ctx has no state except the HIDPI transform\n var ctx = this.canvas_view.ctx;\n if (this.gl != null) {\n // Blit gl canvas into the 2D canvas. To do 1-on-1 blitting, we need\n // to remove the hidpi transform, then blit, then restore.\n // ctx.globalCompositeOperation = \"source-over\" -> OK; is the default\n logging_1.logger.debug('drawing with WebGL');\n ctx.restore();\n ctx.drawImage(this.gl.canvas, 0, 0);\n // Set back hidpi transform\n ctx.save();\n ctx.scale(ratio, ratio);\n ctx.translate(0.5, 0.5);\n }\n };\n PlotCanvasView.prototype.update_dataranges = function () {\n // Update any DataRange1ds here\n var frame = this.model.frame;\n var bounds = {};\n var log_bounds = {};\n var calculate_log_bounds = false;\n for (var _i = 0, _a = object_1.values(frame.x_ranges).concat(object_1.values(frame.y_ranges)); _i < _a.length; _i++) {\n var r_1 = _a[_i];\n if (r_1 instanceof data_range1d_1.DataRange1d) {\n if (r_1.scale_hint == 'log')\n calculate_log_bounds = true;\n }\n }\n for (var id in this.renderer_views) {\n var view = this.renderer_views[id];\n if (view instanceof glyph_renderer_1.GlyphRendererView) {\n var bds = view.glyph.bounds();\n if (bds != null)\n bounds[id] = bds;\n if (calculate_log_bounds) {\n var log_bds = view.glyph.log_bounds();\n if (log_bds != null)\n log_bounds[id] = log_bds;\n }\n }\n }\n var follow_enabled = false;\n var has_bounds = false;\n var r;\n if (this.model.plot.match_aspect !== false && this.frame._width.value != 0 && this.frame._height.value != 0)\n r = 1 / this.model.plot.aspect_scale * (this.frame._width.value / this.frame._height.value);\n for (var _b = 0, _c = object_1.values(frame.x_ranges); _b < _c.length; _b++) {\n var xr = _c[_b];\n if (xr instanceof data_range1d_1.DataRange1d) {\n var bounds_to_use = xr.scale_hint == 'log' ? log_bounds : bounds;\n xr.update(bounds_to_use, 0, this.model.id, r);\n if (xr.follow) {\n follow_enabled = true;\n }\n }\n if (xr.bounds != null)\n has_bounds = true;\n }\n for (var _d = 0, _e = object_1.values(frame.y_ranges); _d < _e.length; _d++) {\n var yr = _e[_d];\n if (yr instanceof data_range1d_1.DataRange1d) {\n var bounds_to_use = yr.scale_hint == 'log' ? log_bounds : bounds;\n yr.update(bounds_to_use, 1, this.model.id, r);\n if (yr.follow) {\n follow_enabled = true;\n }\n }\n if (yr.bounds != null)\n has_bounds = true;\n }\n if (follow_enabled && has_bounds) {\n logging_1.logger.warn('Follow enabled so bounds are unset.');\n for (var _f = 0, _g = object_1.values(frame.x_ranges); _f < _g.length; _f++) {\n var xr = _g[_f];\n xr.bounds = null;\n }\n for (var _h = 0, _j = object_1.values(frame.y_ranges); _h < _j.length; _h++) {\n var yr = _j[_h];\n yr.bounds = null;\n }\n }\n this.range_update_timestamp = Date.now();\n };\n PlotCanvasView.prototype.map_to_screen = function (x, y, x_name, y_name) {\n if (x_name === void 0) {\n x_name = 'default';\n }\n if (y_name === void 0) {\n y_name = 'default';\n }\n return this.frame.map_to_screen(x, y, x_name, y_name);\n };\n PlotCanvasView.prototype.push_state = function (type, new_info) {\n var _a = this.state, history = _a.history, index = _a.index;\n var prev_info = history[index] != null ? history[index].info : {};\n var info = object_1.extend({}, this._initial_state_info, prev_info, new_info);\n this.state.history = this.state.history.slice(0, this.state.index + 1);\n this.state.history.push({\n type: type,\n info: info\n });\n this.state.index = this.state.history.length - 1;\n this.state_changed.emit();\n };\n PlotCanvasView.prototype.clear_state = function () {\n this.state = {\n history: [],\n index: -1\n };\n this.state_changed.emit();\n };\n PlotCanvasView.prototype.can_undo = function () {\n this.state.index >= 0;\n };\n PlotCanvasView.prototype.can_redo = function () {\n this.state.index < this.state.history.length - 1;\n };\n PlotCanvasView.prototype.undo = function () {\n if (this.can_undo()) {\n this.state.index -= 1;\n this._do_state_change(this.state.index);\n this.state_changed.emit();\n }\n };\n PlotCanvasView.prototype.redo = function () {\n if (this.can_redo()) {\n this.state.index += 1;\n this._do_state_change(this.state.index);\n this.state_changed.emit();\n }\n };\n PlotCanvasView.prototype._do_state_change = function (index) {\n var info = this.state.history[index] != null ? this.state.history[index].info : this._initial_state_info;\n if (info.range != null)\n this.update_range(info.range);\n if (info.selection != null)\n this.update_selection(info.selection);\n };\n PlotCanvasView.prototype.get_selection = function () {\n var selection = {};\n for (var _i = 0, _a = this.model.plot.renderers; _i < _a.length; _i++) {\n var renderer = _a[_i];\n if (renderer instanceof glyph_renderer_1.GlyphRenderer) {\n var selected = renderer.data_source.selected;\n selection[renderer.id] = selected;\n }\n }\n return selection;\n };\n PlotCanvasView.prototype.update_selection = function (selection) {\n for (var _i = 0, _a = this.model.plot.renderers; _i < _a.length; _i++) {\n var renderer = _a[_i];\n if (!(renderer instanceof glyph_renderer_1.GlyphRenderer))\n continue;\n var ds = renderer.data_source;\n if (selection != null) {\n if (selection[renderer.id] != null)\n ds.selected = selection[renderer.id];\n } else\n ds.selection_manager.clear();\n }\n };\n PlotCanvasView.prototype.reset_selection = function () {\n this.update_selection(null);\n };\n PlotCanvasView.prototype._update_ranges_together = function (range_info_iter) {\n // Get weight needed to scale the diff of the range to honor interval limits\n var weight = 1;\n for (var _i = 0, range_info_iter_1 = range_info_iter; _i < range_info_iter_1.length; _i++) {\n var _a = range_info_iter_1[_i], rng = _a[0], range_info = _a[1];\n weight = Math.min(weight, this._get_weight_to_constrain_interval(rng, range_info));\n }\n // Apply shared weight to all ranges\n if (weight < 1) {\n for (var _b = 0, range_info_iter_2 = range_info_iter; _b < range_info_iter_2.length; _b++) {\n var _c = range_info_iter_2[_b], rng = _c[0], range_info = _c[1];\n range_info.start = weight * range_info.start + (1 - weight) * rng.start;\n range_info.end = weight * range_info.end + (1 - weight) * rng.end;\n }\n }\n };\n PlotCanvasView.prototype._update_ranges_individually = function (range_info_iter, is_panning, is_scrolling, maintain_focus) {\n var hit_bound = false;\n for (var _i = 0, range_info_iter_3 = range_info_iter; _i < range_info_iter_3.length; _i++) {\n var _a = range_info_iter_3[_i], rng = _a[0], range_info = _a[1];\n // Is this a reversed range?\n var is_reversed = rng.start > rng.end;\n // Limit range interval first. Note that for scroll events,\n // the interval has already been limited for all ranges simultaneously\n if (!is_scrolling) {\n var weight = this._get_weight_to_constrain_interval(rng, range_info);\n if (weight < 1) {\n range_info.start = weight * range_info.start + (1 - weight) * rng.start;\n range_info.end = weight * range_info.end + (1 - weight) * rng.end;\n }\n }\n // Prevent range from going outside limits\n // Also ensure that range keeps the same delta when panning/scrolling\n if (rng.bounds != null && rng.bounds != 'auto') {\n // check `auto` for type-checking purpose\n var _b = rng.bounds, min = _b[0], max = _b[1];\n var new_interval = Math.abs(range_info.end - range_info.start);\n if (is_reversed) {\n if (min != null) {\n if (min >= range_info.end) {\n hit_bound = true;\n range_info.end = min;\n if (is_panning || is_scrolling) {\n range_info.start = min + new_interval;\n }\n }\n }\n if (max != null) {\n if (max <= range_info.start) {\n hit_bound = true;\n range_info.start = max;\n if (is_panning || is_scrolling) {\n range_info.end = max - new_interval;\n }\n }\n }\n } else {\n if (min != null) {\n if (min >= range_info.start) {\n hit_bound = true;\n range_info.start = min;\n if (is_panning || is_scrolling) {\n range_info.end = min + new_interval;\n }\n }\n }\n if (max != null) {\n if (max <= range_info.end) {\n hit_bound = true;\n range_info.end = max;\n if (is_panning || is_scrolling) {\n range_info.start = max - new_interval;\n }\n }\n }\n }\n }\n }\n // Cancel the event when hitting a bound while scrolling. This ensures that\n // the scroll-zoom tool maintains its focus position. Setting `maintain_focus`\n // to false results in a more \"gliding\" behavior, allowing one to\n // zoom out more smoothly, at the cost of losing the focus position.\n if (is_scrolling && hit_bound && maintain_focus)\n return;\n for (var _c = 0, range_info_iter_4 = range_info_iter; _c < range_info_iter_4.length; _c++) {\n var _d = range_info_iter_4[_c], rng = _d[0], range_info = _d[1];\n rng.have_updated_interactively = true;\n if (rng.start != range_info.start || rng.end != range_info.end)\n rng.setv(range_info);\n }\n };\n PlotCanvasView.prototype._get_weight_to_constrain_interval = function (rng, range_info) {\n // Get the weight by which a range-update can be applied\n // to still honor the interval limits (including the implicit\n // max interval imposed by the bounds)\n var min_interval = rng.min_interval;\n var max_interval = rng.max_interval;\n // Express bounds as a max_interval. By doing this, the application of\n // bounds and interval limits can be applied independent from each-other.\n if (rng.bounds != null && rng.bounds != 'auto') {\n // check `auto` for type-checking purpose\n var _a = rng.bounds, min = _a[0], max = _a[1];\n if (min != null && max != null) {\n var max_interval2 = Math.abs(max - min);\n max_interval = max_interval != null ? Math.min(max_interval, max_interval2) : max_interval2;\n }\n }\n var weight = 1;\n if (min_interval != null || max_interval != null) {\n var old_interval = Math.abs(rng.end - rng.start);\n var new_interval = Math.abs(range_info.end - range_info.start);\n if (min_interval > 0 && new_interval < min_interval) {\n weight = (old_interval - min_interval) / (old_interval - new_interval);\n }\n if (max_interval > 0 && new_interval > max_interval) {\n weight = (max_interval - old_interval) / (new_interval - old_interval);\n }\n weight = Math.max(0, Math.min(1, weight));\n }\n return weight;\n };\n PlotCanvasView.prototype.update_range = function (range_info, is_panning, is_scrolling, maintain_focus) {\n if (is_panning === void 0) {\n is_panning = false;\n }\n if (is_scrolling === void 0) {\n is_scrolling = false;\n }\n if (maintain_focus === void 0) {\n maintain_focus = true;\n }\n this.pause();\n var _a = this.frame, x_ranges = _a.x_ranges, y_ranges = _a.y_ranges;\n if (range_info == null) {\n for (var name_1 in x_ranges) {\n var rng = x_ranges[name_1];\n rng.reset();\n }\n for (var name_2 in y_ranges) {\n var rng = y_ranges[name_2];\n rng.reset();\n }\n this.update_dataranges();\n } else {\n var range_info_iter = [];\n for (var name_3 in x_ranges) {\n var rng = x_ranges[name_3];\n range_info_iter.push([\n rng,\n range_info.xrs[name_3]\n ]);\n }\n for (var name_4 in y_ranges) {\n var rng = y_ranges[name_4];\n range_info_iter.push([\n rng,\n range_info.yrs[name_4]\n ]);\n }\n if (is_scrolling) {\n this._update_ranges_together(range_info_iter); // apply interval bounds while keeping aspect\n }\n this._update_ranges_individually(range_info_iter, is_panning, is_scrolling, maintain_focus);\n }\n this.unpause();\n };\n PlotCanvasView.prototype.reset_range = function () {\n this.update_range(null);\n };\n PlotCanvasView.prototype.build_levels = function () {\n var renderer_models = this.model.plot.all_renderers;\n // should only bind events on NEW views\n var old_renderers = object_1.keys(this.renderer_views);\n var new_renderer_views = build_views_1.build_views(this.renderer_views, renderer_models, this.view_options());\n var renderers_to_remove = array_1.difference(old_renderers, renderer_models.map(function (model) {\n return model.id;\n }));\n for (var level in this.levels) {\n for (var _i = 0, renderers_to_remove_1 = renderers_to_remove; _i < renderers_to_remove_1.length; _i++) {\n var id = renderers_to_remove_1[_i];\n delete this.levels[level][id];\n }\n }\n for (var _a = 0, new_renderer_views_1 = new_renderer_views; _a < new_renderer_views_1.length; _a++) {\n var view = new_renderer_views_1[_a];\n this.levels[view.model.level][view.model.id] = view;\n }\n };\n PlotCanvasView.prototype.get_renderer_views = function () {\n var _this = this;\n return this.model.plot.renderers.map(function (r) {\n return _this.levels[r.level][r.id];\n });\n };\n PlotCanvasView.prototype.build_tools = function () {\n var _this = this;\n var tool_models = this.model.plot.toolbar.tools;\n var new_tool_views = build_views_1.build_views(this.tool_views, tool_models, this.view_options());\n new_tool_views.map(function (tool_view) {\n return _this.ui_event_bus.register_tool(tool_view);\n });\n };\n PlotCanvasView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.force_paint, function () {\n return _this.repaint();\n });\n var _a = this.model.frame, x_ranges = _a.x_ranges, y_ranges = _a.y_ranges;\n for (var name_5 in x_ranges) {\n var rng = x_ranges[name_5];\n this.connect(rng.change, function () {\n return _this.request_render();\n });\n }\n for (var name_6 in y_ranges) {\n var rng = y_ranges[name_6];\n this.connect(rng.change, function () {\n return _this.request_render();\n });\n }\n this.connect(this.model.plot.properties.renderers.change, function () {\n return _this.build_levels();\n });\n this.connect(this.model.plot.toolbar.properties.tools.change, function () {\n _this.build_levels();\n _this.build_tools();\n });\n this.connect(this.model.plot.change, function () {\n return _this.request_render();\n });\n this.connect(this.model.plot.reset, function () {\n return _this.reset();\n });\n };\n PlotCanvasView.prototype.set_initial_range = function () {\n // check for good values for ranges before setting initial range\n var good_vals = true;\n var _a = this.frame, x_ranges = _a.x_ranges, y_ranges = _a.y_ranges;\n var xrs = {};\n var yrs = {};\n for (var name_7 in x_ranges) {\n var _b = x_ranges[name_7], start = _b.start, end = _b.end;\n if (start == null || end == null || types_1.isStrictNaN(start + end)) {\n good_vals = false;\n break;\n }\n xrs[name_7] = {\n start: start,\n end: end\n };\n }\n if (good_vals) {\n for (var name_8 in y_ranges) {\n var _c = y_ranges[name_8], start = _c.start, end = _c.end;\n if (start == null || end == null || types_1.isStrictNaN(start + end)) {\n good_vals = false;\n break;\n }\n yrs[name_8] = {\n start: start,\n end: end\n };\n }\n }\n if (good_vals) {\n this._initial_state_info.range = {\n xrs: xrs,\n yrs: yrs\n };\n logging_1.logger.debug('initial ranges set');\n } else\n logging_1.logger.warn('could not set initial ranges');\n };\n PlotCanvasView.prototype.update_constraints = function () {\n this.solver.suggest_value(this.frame._width, this.canvas._width.value);\n this.solver.suggest_value(this.frame._height, this.canvas._height.value);\n for (var id in this.renderer_views) {\n var view = this.renderer_views[id];\n if (side_panel_1.isSizeableView(view) && view.model.panel != null)\n side_panel_1.update_panel_constraints(view);\n }\n this.solver.update_variables();\n };\n // XXX: bacause PlotCanvas is NOT a LayoutDOM\n PlotCanvasView.prototype._layout = function (final) {\n if (final === void 0) {\n final = false;\n }\n this.render();\n if (final) {\n this.model.plot.setv({\n inner_width: Math.round(this.frame._width.value),\n inner_height: Math.round(this.frame._height.value),\n layout_width: Math.round(this.canvas._width.value),\n layout_height: Math.round(this.canvas._height.value)\n }, { no_change: true });\n // XXX: can't be @request_paint(), because it would trigger back-and-forth\n // layout recomputing feedback loop between plots. Plots are also much more\n // responsive this way, especially in interactive mode.\n this.paint();\n }\n };\n PlotCanvasView.prototype.has_finished = function () {\n if (!_super.prototype.has_finished.call(this)) {\n return false;\n }\n for (var level in this.levels) {\n var renderer_views = this.levels[level];\n for (var id in renderer_views) {\n var view = renderer_views[id];\n if (!view.has_finished())\n return false;\n }\n }\n return true;\n };\n PlotCanvasView.prototype.render = function () {\n // Set the plot and canvas to the current model's size\n // This gets called upon solver resize events\n var width = this.model._width.value;\n var height = this.model._height.value;\n this.canvas_view.set_dims([\n width,\n height\n ]);\n this.update_constraints();\n if (this.model.plot.match_aspect !== false && this.frame._width.value != 0 && this.frame._height.value != 0)\n this.update_dataranges();\n // This allows the plot canvas to be positioned around the toolbar\n this.el.style.position = 'absolute';\n this.el.style.left = this.model._dom_left.value + 'px';\n this.el.style.top = this.model._dom_top.value + 'px';\n this.el.style.width = this.model._width.value + 'px';\n this.el.style.height = this.model._height.value + 'px';\n };\n PlotCanvasView.prototype._needs_layout = function () {\n for (var id in this.renderer_views) {\n var view = this.renderer_views[id];\n if (side_panel_1.isSizeableView(view) && view.model.panel != null) {\n if (side_panel_1._view_sizes.get(view) != view.get_size())\n return true;\n }\n }\n return false;\n };\n PlotCanvasView.prototype.repaint = function () {\n if (this._needs_layout())\n this.parent.partial_layout(); // XXX\n else\n this.paint();\n };\n PlotCanvasView.prototype.paint = function () {\n var _this = this;\n if (this.is_paused)\n return;\n logging_1.logger.trace('PlotCanvas.render() for ' + this.model.id);\n // Prepare the canvas size, taking HIDPI into account. Note that this may cause a resize\n // of the canvas, which means that any previous calls to ctx.save() will be undone.\n this.canvas_view.prepare_canvas();\n var document = this.model.document;\n if (document != null) {\n var interactive_duration = document.interactive_duration();\n var plot_1 = this.model.plot;\n if (interactive_duration >= 0 && interactive_duration < plot_1.lod_interval) {\n setTimeout(function () {\n if (document.interactive_duration() > plot_1.lod_timeout) {\n document.interactive_stop(plot_1);\n }\n _this.request_render();\n }, plot_1.lod_timeout);\n } else\n document.interactive_stop(plot_1);\n }\n for (var id in this.renderer_views) {\n var v = this.renderer_views[id];\n if (this.range_update_timestamp == null || v instanceof glyph_renderer_1.GlyphRendererView && v.set_data_timestamp > this.range_update_timestamp) {\n this.update_dataranges();\n break;\n }\n }\n // TODO (bev) OK this sucks, but the event from the solver update doesn't\n // reach the frame in time (sometimes) so force an update here for now\n // (mp) not only that, but models don't know about solver anymore, so\n // frame can't update its scales.\n this.model.frame.update_scales();\n var ctx = this.canvas_view.ctx;\n var ratio = this.canvas.pixel_ratio;\n // Set hidpi-transform\n ctx.save();\n // Save default state, do *after* getting ratio, cause setting canvas.width resets transforms\n ctx.scale(ratio, ratio);\n ctx.translate(0.5, 0.5);\n var frame_box = [\n this.frame._left.value,\n this.frame._top.value,\n this.frame._width.value,\n this.frame._height.value\n ];\n this._map_hook(ctx, frame_box);\n this._paint_empty(ctx, frame_box);\n this.prepare_webgl(ratio, frame_box);\n ctx.save();\n if (this.visuals.outline_line.doit) {\n this.visuals.outline_line.set_value(ctx);\n var x0 = frame_box[0], y0 = frame_box[1], w = frame_box[2], h = frame_box[3];\n // XXX: shrink outline region by 1px to make right and bottom lines visible\n // if they are on the edge of the canvas.\n if (x0 + w == this.canvas._width.value) {\n w -= 1;\n }\n if (y0 + h == this.canvas._height.value) {\n h -= 1;\n }\n ctx.strokeRect(x0, y0, w, h);\n }\n ctx.restore();\n this._paint_levels(ctx, [\n 'image',\n 'underlay',\n 'glyph'\n ], frame_box, true);\n this.blit_webgl(ratio);\n this._paint_levels(ctx, ['annotation'], frame_box, true);\n this._paint_levels(ctx, ['overlay'], frame_box, false);\n if (this._initial_state_info.range == null)\n this.set_initial_range();\n ctx.restore();\n // Restore to default state\n if (!this._has_finished) {\n this._has_finished = true;\n this.notify_finished();\n }\n };\n PlotCanvasView.prototype._paint_levels = function (ctx, levels, clip_region, global_clip) {\n ctx.save();\n if (global_clip) {\n ctx.beginPath();\n ctx.rect.apply(ctx, clip_region);\n ctx.clip();\n }\n var indices = {};\n for (var i = 0; i < this.model.plot.renderers.length; i++) {\n var renderer = this.model.plot.renderers[i];\n indices[renderer.id] = i;\n }\n var sortKey = function (renderer_view) {\n return indices[renderer_view.model.id];\n };\n for (var _i = 0, levels_1 = levels; _i < levels_1.length; _i++) {\n var level = levels_1[_i];\n var renderer_views = array_1.sortBy(object_1.values(this.levels[level]), sortKey);\n for (var _a = 0, renderer_views_1 = renderer_views; _a < renderer_views_1.length; _a++) {\n var renderer_view = renderer_views_1[_a];\n if (!global_clip && renderer_view.needs_clip) {\n ctx.save();\n ctx.beginPath();\n ctx.rect.apply(ctx, clip_region);\n ctx.clip();\n }\n renderer_view.render();\n if (!global_clip && renderer_view.needs_clip) {\n ctx.restore();\n }\n }\n }\n ctx.restore();\n };\n PlotCanvasView.prototype._map_hook = function (_ctx, _frame_box) {\n };\n PlotCanvasView.prototype._paint_empty = function (ctx, frame_box) {\n var _a = [\n 0,\n 0,\n this.canvas_view.model._width.value,\n this.canvas_view.model._height.value\n ], cx = _a[0], cy = _a[1], cw = _a[2], ch = _a[3];\n var fx = frame_box[0], fy = frame_box[1], fw = frame_box[2], fh = frame_box[3];\n ctx.clearRect(cx, cy, cw, ch);\n if (this.visuals.border_fill.doit) {\n this.visuals.border_fill.set_value(ctx);\n ctx.fillRect(cx, cy, cw, ch);\n ctx.clearRect(fx, fy, fw, fh);\n }\n if (this.visuals.background_fill.doit) {\n this.visuals.background_fill.set_value(ctx);\n ctx.fillRect(fx, fy, fw, fh);\n }\n };\n PlotCanvasView.prototype.save = function (name) {\n switch (this.model.plot.output_backend) {\n case 'canvas':\n case 'webgl': {\n var canvas = this.canvas_view.get_canvas_element();\n if (canvas.msToBlob != null) {\n var blob = canvas.msToBlob();\n window.navigator.msSaveBlob(blob, name);\n } else {\n var link = document.createElement('a');\n link.href = canvas.toDataURL('image/png');\n link.download = name + '.png';\n link.target = '_blank';\n link.dispatchEvent(new MouseEvent('click'));\n }\n break;\n }\n case 'svg': {\n var svg = this.canvas_view.ctx.getSerializedSvg(true);\n var svgblob = new Blob([svg], { type: 'text/plain' });\n var downloadLink = document.createElement('a');\n downloadLink.download = name + '.svg';\n downloadLink.innerHTML = 'Download svg';\n downloadLink.href = window.URL.createObjectURL(svgblob);\n downloadLink.onclick = function (event) {\n return document.body.removeChild(event.target);\n };\n downloadLink.style.display = 'none';\n document.body.appendChild(downloadLink);\n downloadLink.click();\n break;\n }\n }\n };\n return PlotCanvasView;\n }(dom_view_1.DOMView);\n exports.PlotCanvasView = PlotCanvasView;\n var AbovePanel = function (_super) {\n tslib_1.__extends(AbovePanel, _super);\n function AbovePanel() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n AbovePanel.initClass = function () {\n this.prototype.type = 'AbovePanel';\n };\n return AbovePanel;\n }(layout_canvas_1.LayoutCanvas);\n exports.AbovePanel = AbovePanel;\n AbovePanel.initClass();\n var BelowPanel = function (_super) {\n tslib_1.__extends(BelowPanel, _super);\n function BelowPanel() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n BelowPanel.initClass = function () {\n this.prototype.type = 'BelowPanel';\n };\n return BelowPanel;\n }(layout_canvas_1.LayoutCanvas);\n exports.BelowPanel = BelowPanel;\n BelowPanel.initClass();\n var LeftPanel = function (_super) {\n tslib_1.__extends(LeftPanel, _super);\n function LeftPanel() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n LeftPanel.initClass = function () {\n this.prototype.type = 'LeftPanel';\n };\n return LeftPanel;\n }(layout_canvas_1.LayoutCanvas);\n exports.LeftPanel = LeftPanel;\n LeftPanel.initClass();\n var RightPanel = function (_super) {\n tslib_1.__extends(RightPanel, _super);\n function RightPanel() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n RightPanel.initClass = function () {\n this.prototype.type = 'RightPanel';\n };\n return RightPanel;\n }(layout_canvas_1.LayoutCanvas);\n exports.RightPanel = RightPanel;\n RightPanel.initClass();\n var PlotCanvas = function (_super) {\n tslib_1.__extends(PlotCanvas, _super);\n function PlotCanvas(attrs) {\n return _super.call(this, attrs) || this;\n }\n PlotCanvas.initClass = function () {\n this.prototype.type = 'PlotCanvas';\n this.prototype.default_view = PlotCanvasView;\n this.internal({\n plot: [p.Instance],\n toolbar: [p.Instance],\n canvas: [p.Instance],\n frame: [p.Instance]\n });\n this.override({\n // We should find a way to enforce this\n sizing_mode: 'stretch_both'\n });\n };\n PlotCanvas.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n this.canvas = new canvas_1.Canvas({\n map: this.use_map != null ? this.use_map : false,\n use_hidpi: this.plot.hidpi,\n output_backend: this.plot.output_backend\n });\n this.frame = new cartesian_frame_1.CartesianFrame({\n x_range: this.plot.x_range,\n extra_x_ranges: this.plot.extra_x_ranges,\n x_scale: this.plot.x_scale,\n y_range: this.plot.y_range,\n extra_y_ranges: this.plot.extra_y_ranges,\n y_scale: this.plot.y_scale\n });\n this.above_panel = new AbovePanel();\n this.below_panel = new BelowPanel();\n this.left_panel = new LeftPanel();\n this.right_panel = new RightPanel();\n logging_1.logger.debug('PlotCanvas initialized');\n };\n PlotCanvas.prototype._doc_attached = function () {\n this.canvas.attach_document(this.document);\n this.frame.attach_document(this.document);\n this.above_panel.attach_document(this.document);\n this.below_panel.attach_document(this.document);\n this.left_panel.attach_document(this.document);\n this.right_panel.attach_document(this.document);\n _super.prototype._doc_attached.call(this);\n logging_1.logger.debug('PlotCanvas attached to document');\n };\n PlotCanvas.prototype.get_layoutable_children = function () {\n var children = [\n this.above_panel,\n this.below_panel,\n this.left_panel,\n this.right_panel,\n this.canvas,\n this.frame\n ];\n var collect_panels = function (layout_renderers) {\n for (var _i = 0, layout_renderers_1 = layout_renderers; _i < layout_renderers_1.length; _i++) {\n var r = layout_renderers_1[_i];\n if (side_panel_1.isSizeable(r) && r.panel != null)\n children.push(r.panel);\n }\n };\n collect_panels(this.plot.above);\n collect_panels(this.plot.below);\n collect_panels(this.plot.left);\n collect_panels(this.plot.right);\n return children; // XXX: PlotCanvas should be a LayoutCanvas\n };\n PlotCanvas.prototype.get_constraints = function () {\n return _super.prototype.get_constraints.call(this).concat(this._get_constant_constraints(), this._get_side_constraints());\n };\n PlotCanvas.prototype._get_constant_constraints = function () {\n return [\n // Set the origin. Everything else is positioned absolutely wrt canvas.\n solver_1.EQ(this.canvas._left, 0),\n solver_1.EQ(this.canvas._top, 0),\n solver_1.GE(this.above_panel._top, [\n -1,\n this.canvas._top\n ]),\n solver_1.EQ(this.above_panel._bottom, [\n -1,\n this.frame._top\n ]),\n solver_1.EQ(this.above_panel._left, [\n -1,\n this.left_panel._right\n ]),\n solver_1.EQ(this.above_panel._right, [\n -1,\n this.right_panel._left\n ]),\n solver_1.EQ(this.below_panel._top, [\n -1,\n this.frame._bottom\n ]),\n solver_1.LE(this.below_panel._bottom, [\n -1,\n this.canvas._bottom\n ]),\n solver_1.EQ(this.below_panel._left, [\n -1,\n this.left_panel._right\n ]),\n solver_1.EQ(this.below_panel._right, [\n -1,\n this.right_panel._left\n ]),\n solver_1.EQ(this.left_panel._top, [\n -1,\n this.above_panel._bottom\n ]),\n solver_1.EQ(this.left_panel._bottom, [\n -1,\n this.below_panel._top\n ]),\n solver_1.GE(this.left_panel._left, [\n -1,\n this.canvas._left\n ]),\n solver_1.EQ(this.left_panel._right, [\n -1,\n this.frame._left\n ]),\n solver_1.EQ(this.right_panel._top, [\n -1,\n this.above_panel._bottom\n ]),\n solver_1.EQ(this.right_panel._bottom, [\n -1,\n this.below_panel._top\n ]),\n solver_1.EQ(this.right_panel._left, [\n -1,\n this.frame._right\n ]),\n solver_1.LE(this.right_panel._right, [\n -1,\n this.canvas._right\n ]),\n solver_1.EQ(this._top, [\n -1,\n this.above_panel._bottom\n ]),\n solver_1.EQ(this._left, [\n -1,\n this.left_panel._right\n ]),\n solver_1.EQ(this._height, [\n -1,\n this._bottom\n ], [\n -1,\n this.canvas._bottom\n ], this.below_panel._top),\n solver_1.EQ(this._width, [\n -1,\n this._right\n ], [\n -1,\n this.canvas._right\n ], this.right_panel._left),\n solver_1.GE(this._top, -this.plot.min_border_top),\n solver_1.GE(this._left, -this.plot.min_border_left),\n solver_1.GE(this._height, [\n -1,\n this._bottom\n ], -this.plot.min_border_bottom),\n solver_1.GE(this._width, [\n -1,\n this._right\n ], -this.plot.min_border_right)\n ];\n };\n PlotCanvas.prototype._get_side_constraints = function () {\n var panels = function (objs) {\n return objs.map(function (obj) {\n return obj.panel;\n });\n };\n var above = alignments_1.vstack(this.above_panel, panels(this.plot.above));\n var below = alignments_1.vstack(this.below_panel, array_1.reversed(panels(this.plot.below)));\n var left = alignments_1.hstack(this.left_panel, panels(this.plot.left));\n var right = alignments_1.hstack(this.right_panel, array_1.reversed(panels(this.plot.right)));\n return array_1.concat([\n above,\n below,\n left,\n right\n ]);\n };\n return PlotCanvas;\n }(layout_dom_1.LayoutDOM);\n exports.PlotCanvas = PlotCanvas;\n PlotCanvas.initClass(); \n}","/*models/ranges/data_range*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var range_1 = require(167 /* ./range */);\n var p = require(15 /* core/properties */);\n var DataRange = function (_super) {\n tslib_1.__extends(DataRange, _super);\n function DataRange(attrs) {\n return _super.call(this, attrs) || this;\n }\n DataRange.initClass = function () {\n this.prototype.type = 'DataRange';\n this.define({\n names: [\n p.Array,\n []\n ],\n renderers: [\n p.Array,\n []\n ]\n });\n };\n return DataRange;\n }(range_1.Range);\n exports.DataRange = DataRange;\n DataRange.initClass(); \n}","/*models/ranges/data_range1d*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var data_range_1 = require(163 /* ./data_range */);\n var glyph_renderer_1 = require(169 /* ../renderers/glyph_renderer */);\n var logging_1 = require(14 /* core/logging */);\n var p = require(15 /* core/properties */);\n var bbox = require(24 /* core/util/bbox */);\n var array_1 = require(21 /* core/util/array */);\n var DataRange1d = function (_super) {\n tslib_1.__extends(DataRange1d, _super);\n function DataRange1d(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this._plot_bounds = {};\n _this.have_updated_interactively = false;\n return _this;\n }\n DataRange1d.initClass = function () {\n this.prototype.type = 'DataRange1d';\n this.define({\n start: [p.Number],\n end: [p.Number],\n range_padding: [\n p.Number,\n 0.1\n ],\n range_padding_units: [\n p.PaddingUnits,\n 'percent'\n ],\n flipped: [\n p.Bool,\n false\n ],\n follow: [p.StartEnd],\n follow_interval: [p.Number],\n default_span: [\n p.Number,\n 2\n ]\n });\n this.internal({\n scale_hint: [\n p.String,\n 'auto'\n ]\n });\n };\n DataRange1d.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n this._initial_start = this.start;\n this._initial_end = this.end;\n this._initial_range_padding = this.range_padding;\n this._initial_range_padding_units = this.range_padding_units;\n this._initial_follow = this.follow;\n this._initial_follow_interval = this.follow_interval;\n this._initial_default_span = this.default_span;\n };\n Object.defineProperty(DataRange1d.prototype, 'min', {\n get: function () {\n return Math.min(this.start, this.end);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(DataRange1d.prototype, 'max', {\n get: function () {\n return Math.max(this.start, this.end);\n },\n enumerable: true,\n configurable: true\n });\n DataRange1d.prototype.computed_renderers = function () {\n // TODO (bev) check that renderers actually configured with this range\n var names = this.names;\n var renderers = this.renderers;\n if (renderers.length == 0) {\n for (var _i = 0, _a = this.plots; _i < _a.length; _i++) {\n var plot = _a[_i];\n var rs = plot.renderers.filter(function (r) {\n return r instanceof glyph_renderer_1.GlyphRenderer;\n });\n renderers = renderers.concat(rs);\n }\n }\n if (names.length > 0)\n renderers = renderers.filter(function (r) {\n return array_1.includes(names, r.name);\n });\n logging_1.logger.debug('computed ' + renderers.length + ' renderers for DataRange1d ' + this.id);\n for (var _b = 0, renderers_1 = renderers; _b < renderers_1.length; _b++) {\n var r = renderers_1[_b];\n logging_1.logger.trace(' - ' + r.type + ' ' + r.id);\n }\n return renderers;\n };\n DataRange1d.prototype._compute_plot_bounds = function (renderers, bounds) {\n var result = bbox.empty();\n for (var _i = 0, renderers_2 = renderers; _i < renderers_2.length; _i++) {\n var r = renderers_2[_i];\n if (bounds[r.id] != null)\n result = bbox.union(result, bounds[r.id]);\n }\n return result;\n };\n DataRange1d.prototype.adjust_bounds_for_aspect = function (bounds, ratio) {\n var result = bbox.empty();\n var width = bounds.maxX - bounds.minX;\n if (width <= 0) {\n width = 1;\n }\n var height = bounds.maxY - bounds.minY;\n if (height <= 0) {\n height = 1;\n }\n var xcenter = 0.5 * (bounds.maxX + bounds.minX);\n var ycenter = 0.5 * (bounds.maxY + bounds.minY);\n if (width < ratio * height) {\n width = ratio * height;\n } else {\n height = width / ratio;\n }\n result.maxX = xcenter + 0.5 * width;\n result.minX = xcenter - 0.5 * width;\n result.maxY = ycenter + 0.5 * height;\n result.minY = ycenter - 0.5 * height;\n return result;\n };\n DataRange1d.prototype._compute_min_max = function (plot_bounds, dimension) {\n var overall = bbox.empty();\n for (var k in plot_bounds) {\n var v = plot_bounds[k];\n overall = bbox.union(overall, v);\n }\n var min, max;\n if (dimension == 0)\n _a = [\n overall.minX,\n overall.maxX\n ], min = _a[0], max = _a[1];\n else\n _b = [\n overall.minY,\n overall.maxY\n ], min = _b[0], max = _b[1];\n return [\n min,\n max\n ];\n var _a, _b;\n };\n DataRange1d.prototype._compute_range = function (min, max) {\n var range_padding = this.range_padding;\n // XXX: ? 0\n var start, end;\n if (this.scale_hint == 'log') {\n if (isNaN(min) || !isFinite(min) || min <= 0) {\n if (isNaN(max) || !isFinite(max) || max <= 0)\n min = 0.1;\n else\n min = max / 100;\n logging_1.logger.warn('could not determine minimum data value for log axis, DataRange1d using value ' + min);\n }\n if (isNaN(max) || !isFinite(max) || max <= 0) {\n if (isNaN(min) || !isFinite(min) || min <= 0)\n max = 10;\n else\n max = min * 100;\n logging_1.logger.warn('could not determine maximum data value for log axis, DataRange1d using value ' + max);\n }\n var center = void 0, span = void 0;\n if (max == min) {\n span = this.default_span + 0.001;\n center = Math.log(min) / Math.log(10);\n } else {\n var log_min = void 0, log_max = void 0;\n if (this.range_padding_units == 'percent') {\n log_min = Math.log(min) / Math.log(10);\n log_max = Math.log(max) / Math.log(10);\n span = (log_max - log_min) * (1 + range_padding);\n } else {\n log_min = Math.log(min - range_padding) / Math.log(10);\n log_max = Math.log(max + range_padding) / Math.log(10);\n span = log_max - log_min;\n }\n center = (log_min + log_max) / 2;\n }\n start = Math.pow(10, center - span / 2);\n end = Math.pow(10, center + span / 2);\n } else {\n var span = void 0;\n if (max == min)\n span = this.default_span;\n else {\n if (this.range_padding_units == 'percent')\n span = (max - min) * (1 + range_padding);\n else\n span = max - min + 2 * range_padding;\n }\n var center = (max + min) / 2;\n start = center - span / 2;\n end = center + span / 2;\n }\n var follow_sign = +1;\n if (this.flipped) {\n _a = [\n end,\n start\n ], start = _a[0], end = _a[1];\n follow_sign = -1;\n }\n var follow_interval = this.follow_interval;\n if (follow_interval != null && Math.abs(start - end) > follow_interval) {\n if (this.follow == 'start')\n end = start + follow_sign * follow_interval;\n else if (this.follow == 'end')\n start = end - follow_sign * follow_interval;\n }\n return [\n start,\n end\n ];\n var _a;\n };\n DataRange1d.prototype.update = function (bounds, dimension, bounds_id, ratio) {\n if (this.have_updated_interactively)\n return;\n var renderers = this.computed_renderers();\n // update the raw data bounds for all renderers we care about\n var total_bounds = this._compute_plot_bounds(renderers, bounds);\n if (ratio != null)\n total_bounds = this.adjust_bounds_for_aspect(total_bounds, ratio);\n this._plot_bounds[bounds_id] = total_bounds;\n // compute the min/mix for our specified dimension\n var _a = this._compute_min_max(this._plot_bounds, dimension), min = _a[0], max = _a[1];\n // derive start, end from bounds and data range config\n var _b = this._compute_range(min, max), start = _b[0], end = _b[1];\n if (this._initial_start != null) {\n if (this.scale_hint == 'log') {\n if (this._initial_start > 0)\n start = this._initial_start;\n } else\n start = this._initial_start;\n }\n if (this._initial_end != null) {\n if (this.scale_hint == 'log') {\n if (this._initial_end > 0)\n end = this._initial_end;\n } else\n end = this._initial_end;\n }\n // only trigger updates when there are changes\n var _c = [\n this.start,\n this.end\n ], _start = _c[0], _end = _c[1];\n if (start != _start || end != _end) {\n var new_range = {};\n if (start != _start)\n new_range.start = start;\n if (end != _end)\n new_range.end = end;\n this.setv(new_range);\n }\n if (this.bounds == 'auto')\n this.setv({\n bounds: [\n start,\n end\n ]\n }, { silent: true });\n this.change.emit();\n };\n DataRange1d.prototype.reset = function () {\n this.have_updated_interactively = false;\n // change events silenced as PlotCanvasView.update_dataranges triggers property callbacks\n this.setv({\n range_padding: this._initial_range_padding,\n range_padding_units: this._initial_range_padding_units,\n follow: this._initial_follow,\n follow_interval: this._initial_follow_interval,\n default_span: this._initial_default_span\n }, { silent: true });\n this.change.emit();\n };\n return DataRange1d;\n }(data_range_1.DataRange);\n exports.DataRange1d = DataRange1d;\n DataRange1d.initClass(); \n}","/*models/ranges/factor_range*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var range_1 = require(167 /* ./range */);\n var p = require(15 /* core/properties */);\n var arrayable_1 = require(22 /* core/util/arrayable */);\n var array_1 = require(21 /* core/util/array */);\n var types_1 = require(44 /* core/util/types */);\n function map_one_level(factors, padding, offset) {\n if (offset === void 0) {\n offset = 0;\n }\n var mapping = {};\n for (var i = 0; i < factors.length; i++) {\n var factor = factors[i];\n if (factor in mapping)\n throw new Error('duplicate factor or subfactor: ' + factor);\n else\n mapping[factor] = { value: 0.5 + i * (1 + padding) + offset };\n }\n return [\n mapping,\n (factors.length - 1) * padding\n ];\n }\n exports.map_one_level = map_one_level;\n function map_two_levels(factors, outer_pad, factor_pad, offset) {\n if (offset === void 0) {\n offset = 0;\n }\n var mapping = {};\n var tops = {};\n var tops_order = [];\n for (var _i = 0, factors_1 = factors; _i < factors_1.length; _i++) {\n var _a = factors_1[_i], f0 = _a[0], f1 = _a[1];\n if (!(f0 in tops)) {\n tops[f0] = [];\n tops_order.push(f0);\n }\n tops[f0].push(f1);\n }\n var suboffset = offset;\n var total_subpad = 0;\n var _loop_1 = function (f0) {\n var n = tops[f0].length;\n var _a = map_one_level(tops[f0], factor_pad, suboffset), submap = _a[0], subpad = _a[1];\n total_subpad += subpad;\n var subtot = array_1.sum(tops[f0].map(function (f1) {\n return submap[f1].value;\n }));\n mapping[f0] = {\n value: subtot / n,\n mapping: submap\n };\n suboffset += n + outer_pad + subpad;\n };\n for (var _b = 0, tops_order_1 = tops_order; _b < tops_order_1.length; _b++) {\n var f0 = tops_order_1[_b];\n _loop_1(f0);\n }\n return [\n mapping,\n tops_order,\n (tops_order.length - 1) * outer_pad + total_subpad\n ];\n }\n exports.map_two_levels = map_two_levels;\n function map_three_levels(factors, outer_pad, inner_pad, factor_pad, offset) {\n if (offset === void 0) {\n offset = 0;\n }\n var mapping = {};\n var tops = {};\n var tops_order = [];\n for (var _i = 0, factors_2 = factors; _i < factors_2.length; _i++) {\n var _a = factors_2[_i], f0 = _a[0], f1 = _a[1], f2 = _a[2];\n if (!(f0 in tops)) {\n tops[f0] = [];\n tops_order.push(f0);\n }\n tops[f0].push([\n f1,\n f2\n ]);\n }\n var mids_order = [];\n var suboffset = offset;\n var total_subpad = 0;\n var _loop_2 = function (f0) {\n var n = tops[f0].length;\n var _a = map_two_levels(tops[f0], inner_pad, factor_pad, suboffset), submap = _a[0], submids_order = _a[1], subpad = _a[2];\n for (var _i = 0, submids_order_1 = submids_order; _i < submids_order_1.length; _i++) {\n var f1 = submids_order_1[_i];\n mids_order.push([\n f0,\n f1\n ]);\n }\n total_subpad += subpad;\n var subtot = array_1.sum(tops[f0].map(function (_a) {\n var f1 = _a[0];\n return submap[f1].value;\n }));\n mapping[f0] = {\n value: subtot / n,\n mapping: submap\n };\n suboffset += n + outer_pad + subpad;\n };\n for (var _b = 0, tops_order_2 = tops_order; _b < tops_order_2.length; _b++) {\n var f0 = tops_order_2[_b];\n _loop_2(f0);\n }\n return [\n mapping,\n tops_order,\n mids_order,\n (tops_order.length - 1) * outer_pad + total_subpad\n ];\n }\n exports.map_three_levels = map_three_levels;\n var FactorRange = function (_super) {\n tslib_1.__extends(FactorRange, _super);\n function FactorRange(attrs) {\n return _super.call(this, attrs) || this;\n }\n FactorRange.initClass = function () {\n this.prototype.type = 'FactorRange';\n this.define({\n factors: [\n p.Array,\n []\n ],\n factor_padding: [\n p.Number,\n 0\n ],\n subgroup_padding: [\n p.Number,\n 0.8\n ],\n group_padding: [\n p.Number,\n 1.4\n ],\n range_padding: [\n p.Number,\n 0\n ],\n range_padding_units: [\n p.PaddingUnits,\n 'percent'\n ],\n start: [p.Number],\n end: [p.Number]\n });\n this.internal({\n levels: [p.Number],\n mids: [p.Array],\n tops: [p.Array],\n tops_groups: [p.Array]\n });\n };\n Object.defineProperty(FactorRange.prototype, 'min', {\n get: function () {\n return this.start;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(FactorRange.prototype, 'max', {\n get: function () {\n return this.end;\n },\n enumerable: true,\n configurable: true\n });\n FactorRange.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n this._init();\n };\n FactorRange.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.properties.factors.change, function () {\n return _this.reset();\n });\n this.connect(this.properties.factor_padding.change, function () {\n return _this.reset();\n });\n this.connect(this.properties.group_padding.change, function () {\n return _this.reset();\n });\n this.connect(this.properties.subgroup_padding.change, function () {\n return _this.reset();\n });\n this.connect(this.properties.range_padding.change, function () {\n return _this.reset();\n });\n this.connect(this.properties.range_padding_units.change, function () {\n return _this.reset();\n });\n };\n FactorRange.prototype.reset = function () {\n this._init();\n this.change.emit();\n };\n FactorRange.prototype._lookup = function (x) {\n if (x.length == 1) {\n var m = this._mapping;\n if (!m.hasOwnProperty(x[0])) {\n return NaN;\n }\n return m[x[0]].value;\n } else if (x.length == 2) {\n var m = this._mapping;\n if (!m.hasOwnProperty(x[0]) || !m[x[0]].mapping.hasOwnProperty(x[1])) {\n return NaN;\n }\n return m[x[0]].mapping[x[1]].value;\n } else if (x.length == 3) {\n var m = this._mapping;\n if (!m.hasOwnProperty(x[0]) || !m[x[0]].mapping.hasOwnProperty(x[1]) || !m[x[0]].mapping[x[1]].mapping.hasOwnProperty(x[2])) {\n return NaN;\n }\n return m[x[0]].mapping[x[1]].mapping[x[2]].value;\n } else\n throw new Error('unreachable code');\n };\n // convert a string factor into a synthetic coordinate\n FactorRange.prototype.synthetic = function (x) {\n if (types_1.isNumber(x))\n return x;\n if (types_1.isString(x))\n return this._lookup([x]);\n var offset = 0;\n var off = x[x.length - 1];\n if (types_1.isNumber(off)) {\n offset = off;\n x = x.slice(0, -1);\n }\n return this._lookup(x) + offset;\n };\n // convert an array of string factors into synthetic coordinates\n FactorRange.prototype.v_synthetic = function (xs) {\n var _this = this;\n return arrayable_1.map(xs, function (x) {\n return _this.synthetic(x);\n });\n };\n FactorRange.prototype._init = function () {\n var levels;\n var inside_padding;\n if (array_1.all(this.factors, types_1.isString)) {\n levels = 1;\n _a = map_one_level(this.factors, this.factor_padding), this._mapping = _a[0], inside_padding = _a[1];\n } else if (array_1.all(this.factors, function (x) {\n return types_1.isArray(x) && x.length == 2 && types_1.isString(x[0]) && types_1.isString(x[1]);\n })) {\n levels = 2;\n _b = map_two_levels(this.factors, this.group_padding, this.factor_padding), this._mapping = _b[0], this.tops = _b[1], inside_padding = _b[2];\n } else if (array_1.all(this.factors, function (x) {\n return types_1.isArray(x) && x.length == 3 && types_1.isString(x[0]) && types_1.isString(x[1]) && types_1.isString(x[2]);\n })) {\n levels = 3;\n _c = map_three_levels(this.factors, this.group_padding, this.subgroup_padding, this.factor_padding), this._mapping = _c[0], this.tops = _c[1], this.mids = _c[2], inside_padding = _c[3];\n } else\n throw new Error('???');\n var start = 0;\n var end = this.factors.length + inside_padding;\n if (this.range_padding_units == 'percent') {\n var half_span = (end - start) * this.range_padding / 2;\n start -= half_span;\n end += half_span;\n } else {\n start -= this.range_padding;\n end += this.range_padding;\n }\n this.setv({\n start: start,\n end: end,\n levels: levels\n }, { silent: true });\n if (this.bounds == 'auto')\n this.setv({\n bounds: [\n start,\n end\n ]\n }, { silent: true });\n var _a, _b, _c;\n };\n return FactorRange;\n }(range_1.Range);\n exports.FactorRange = FactorRange;\n FactorRange.initClass(); \n}","/*models/ranges/index*/\nfunction _(require, module, exports) {\n var data_range_1 = require(163 /* ./data_range */);\n exports.DataRange = data_range_1.DataRange;\n var data_range1d_1 = require(164 /* ./data_range1d */);\n exports.DataRange1d = data_range1d_1.DataRange1d;\n var factor_range_1 = require(165 /* ./factor_range */);\n exports.FactorRange = factor_range_1.FactorRange;\n var range_1 = require(167 /* ./range */);\n exports.Range = range_1.Range;\n var range1d_1 = require(168 /* ./range1d */);\n exports.Range1d = range1d_1.Range1d; \n}","/*models/ranges/range*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var model_1 = require(53 /* ../../model */);\n var p = require(15 /* core/properties */);\n var types_1 = require(44 /* core/util/types */);\n var Range = function (_super) {\n tslib_1.__extends(Range, _super);\n function Range(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.have_updated_interactively = false;\n return _this;\n }\n Range.initClass = function () {\n this.prototype.type = 'Range';\n this.define({\n callback: [p.Any],\n bounds: [p.Any],\n min_interval: [p.Any],\n max_interval: [p.Any]\n });\n this.internal({\n plots: [\n p.Array,\n []\n ]\n });\n };\n Range.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.change, function () {\n return _this._emit_callback();\n });\n };\n Range.prototype.reset = function () {\n /**\n * This method should be reimplemented by subclasses and ensure that\n * the callback, if exists, is executed at completion.\n */\n this.change.emit();\n };\n Range.prototype._emit_callback = function () {\n if (this.callback != null) {\n if (types_1.isFunction(this.callback))\n this.callback(this);\n else\n this.callback.execute(this, {});\n }\n };\n return Range;\n }(model_1.Model);\n exports.Range = Range;\n Range.initClass(); \n}","/*models/ranges/range1d*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var range_1 = require(167 /* ./range */);\n var p = require(15 /* core/properties */);\n var Range1d = function (_super) {\n tslib_1.__extends(Range1d, _super);\n function Range1d(attrs) {\n return _super.call(this, attrs) || this;\n }\n Range1d.initClass = function () {\n this.prototype.type = 'Range1d';\n this.define({\n start: [\n p.Number,\n 0\n ],\n end: [\n p.Number,\n 1\n ]\n });\n };\n Range1d.prototype._set_auto_bounds = function () {\n if (this.bounds == 'auto') {\n var min = Math.min(this._initial_start, this._initial_end);\n var max = Math.max(this._initial_start, this._initial_end);\n this.setv({\n bounds: [\n min,\n max\n ]\n }, { silent: true });\n }\n };\n Range1d.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n this._initial_start = this.start;\n this._initial_end = this.end;\n this._set_auto_bounds();\n };\n Object.defineProperty(Range1d.prototype, 'min', {\n get: function () {\n return Math.min(this.start, this.end);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Range1d.prototype, 'max', {\n get: function () {\n return Math.max(this.start, this.end);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Range1d.prototype, 'is_reversed', {\n get: function () {\n return this.start > this.end;\n },\n enumerable: true,\n configurable: true\n });\n Range1d.prototype.reset = function () {\n this._set_auto_bounds();\n if (this.start != this._initial_start || this.end != this._initial_end)\n this.setv({\n start: this._initial_start,\n end: this._initial_end\n });\n else\n this.change.emit();\n };\n return Range1d;\n }(range_1.Range);\n exports.Range1d = Range1d;\n Range1d.initClass(); \n}","/*models/renderers/glyph_renderer*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var renderer_1 = require(173 /* ./renderer */);\n var line_1 = require(120 /* ../glyphs/line */);\n var cds_view_1 = require(183 /* ../sources/cds_view */);\n var logging_1 = require(14 /* core/logging */);\n var p = require(15 /* core/properties */);\n var arrayable_1 = require(22 /* core/util/arrayable */);\n var array_1 = require(21 /* core/util/array */);\n var object_1 = require(32 /* core/util/object */);\n var factor_range_1 = require(165 /* ../ranges/factor_range */);\n var selection_defaults = {\n fill: {},\n line: {}\n };\n var decimated_defaults = {\n fill: {\n fill_alpha: 0.3,\n fill_color: 'grey'\n },\n line: {\n line_alpha: 0.3,\n line_color: 'grey'\n }\n };\n var nonselection_defaults = {\n fill: { fill_alpha: 0.2 },\n line: {}\n };\n var GlyphRendererView = function (_super) {\n tslib_1.__extends(GlyphRendererView, _super);\n function GlyphRendererView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n GlyphRendererView.prototype.initialize = function (options) {\n _super.prototype.initialize.call(this, options);\n var base_glyph = this.model.glyph;\n var has_fill = array_1.includes(base_glyph.mixins, 'fill');\n var has_line = array_1.includes(base_glyph.mixins, 'line');\n var glyph_attrs = object_1.clone(base_glyph.attributes);\n delete glyph_attrs.id;\n function mk_glyph(defaults) {\n var attrs = object_1.clone(glyph_attrs);\n if (has_fill)\n object_1.extend(attrs, defaults.fill);\n if (has_line)\n object_1.extend(attrs, defaults.line);\n return new base_glyph.constructor(attrs);\n }\n this.glyph = this.build_glyph_view(base_glyph);\n var selection_glyph = this.model.selection_glyph;\n if (selection_glyph == null)\n selection_glyph = mk_glyph({\n fill: {},\n line: {}\n });\n else if (selection_glyph === 'auto')\n selection_glyph = mk_glyph(selection_defaults);\n this.selection_glyph = this.build_glyph_view(selection_glyph);\n var nonselection_glyph = this.model.nonselection_glyph;\n if (nonselection_glyph == null)\n nonselection_glyph = mk_glyph({\n fill: {},\n line: {}\n });\n else if (nonselection_glyph === 'auto')\n nonselection_glyph = mk_glyph(nonselection_defaults);\n this.nonselection_glyph = this.build_glyph_view(nonselection_glyph);\n var hover_glyph = this.model.hover_glyph;\n if (hover_glyph != null)\n this.hover_glyph = this.build_glyph_view(hover_glyph);\n var muted_glyph = this.model.muted_glyph;\n if (muted_glyph != null)\n this.muted_glyph = this.build_glyph_view(muted_glyph);\n var decimated_glyph = mk_glyph(decimated_defaults);\n this.decimated_glyph = this.build_glyph_view(decimated_glyph);\n this.xscale = this.plot_view.frame.xscales[this.model.x_range_name];\n this.yscale = this.plot_view.frame.yscales[this.model.y_range_name];\n this.set_data(false);\n if (this.model.data_source.setup != null)\n this.model.data_source.setup();\n };\n GlyphRendererView.prototype.build_glyph_view = function (model) {\n return new model.default_view({\n model: model,\n renderer: this,\n plot_view: this.plot_view,\n parent: this\n }); // XXX\n };\n GlyphRendererView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.model.change, function () {\n return _this.request_render();\n });\n this.connect(this.model.glyph.change, function () {\n return _this.set_data();\n });\n this.connect(this.model.data_source.change, function () {\n return _this.set_data();\n });\n this.connect(this.model.data_source.streaming, function () {\n return _this.set_data();\n });\n this.connect(this.model.data_source.patching, function (indices) {\n return _this.set_data(true, indices);\n });\n this.connect(this.model.data_source._select, function () {\n return _this.request_render();\n });\n if (this.hover_glyph != null)\n this.connect(this.model.data_source.inspect, function () {\n return _this.request_render();\n });\n this.connect(this.model.properties.view.change, function () {\n return _this.set_data();\n });\n this.connect(this.model.view.change, function () {\n return _this.set_data();\n });\n var _a = this.plot_model.frame, x_ranges = _a.x_ranges, y_ranges = _a.y_ranges;\n for (var name_1 in x_ranges) {\n var rng = x_ranges[name_1];\n if (rng instanceof factor_range_1.FactorRange)\n this.connect(rng.change, function () {\n return _this.set_data();\n });\n }\n for (var name_2 in y_ranges) {\n var rng = y_ranges[name_2];\n if (rng instanceof factor_range_1.FactorRange)\n this.connect(rng.change, function () {\n return _this.set_data();\n });\n }\n this.connect(this.model.glyph.transformchange, function () {\n return _this.set_data();\n });\n };\n GlyphRendererView.prototype.have_selection_glyphs = function () {\n return this.selection_glyph != null && this.nonselection_glyph != null;\n };\n // in case of partial updates like patching, the list of indices that actually\n // changed may be passed as the \"indices\" parameter to afford any optional optimizations\n GlyphRendererView.prototype.set_data = function (request_render, indices) {\n if (request_render === void 0) {\n request_render = true;\n }\n if (indices === void 0) {\n indices = null;\n }\n var t0 = Date.now();\n var source = this.model.data_source;\n this.all_indices = this.model.view.indices;\n // TODO (bev) this is a bit clunky, need to make sure glyphs use the correct ranges when they call\n // mapping functions on the base Renderer class\n this.glyph.model.setv({\n x_range_name: this.model.x_range_name,\n y_range_name: this.model.y_range_name\n }, { silent: true });\n this.glyph.set_data(source, this.all_indices, indices);\n this.glyph.set_visuals(source);\n this.decimated_glyph.set_visuals(source);\n if (this.have_selection_glyphs()) {\n this.selection_glyph.set_visuals(source);\n this.nonselection_glyph.set_visuals(source);\n }\n if (this.hover_glyph != null)\n this.hover_glyph.set_visuals(source);\n if (this.muted_glyph != null)\n this.muted_glyph.set_visuals(source);\n var lod_factor = this.plot_model.plot.lod_factor;\n this.decimated = [];\n for (var i = 0, end = Math.floor(this.all_indices.length / lod_factor); i < end; i++) {\n this.decimated.push(i * lod_factor);\n }\n var dt = Date.now() - t0;\n logging_1.logger.debug(this.glyph.model.type + ' GlyphRenderer (' + this.model.id + '): set_data finished in ' + dt + 'ms');\n this.set_data_timestamp = Date.now();\n if (request_render)\n this.request_render();\n };\n GlyphRendererView.prototype.render = function () {\n var _this = this;\n if (!this.model.visible)\n return;\n var t0 = Date.now();\n var glsupport = this.glyph.glglyph;\n this.glyph.map_data();\n var dtmap = Date.now() - t0;\n var tmask = Date.now();\n // all_indices is in full data space, indices is converted to subset space\n // either by mask_data (that uses the spatial index) or manually\n var indices = this.glyph.mask_data(this.all_indices);\n if (indices.length === this.all_indices.length) {\n indices = array_1.range(0, this.all_indices.length);\n }\n var dtmask = Date.now() - tmask;\n var ctx = this.plot_view.canvas_view.ctx;\n ctx.save();\n // selected is in full set space\n var selected = this.model.data_source.selected;\n var selected_full_indices;\n if (!selected || selected.is_empty()) {\n selected_full_indices = [];\n } else {\n if (this.glyph instanceof line_1.LineView && selected.selected_glyph === this.glyph.model) {\n selected_full_indices = this.model.view.convert_indices_from_subset(indices);\n } else {\n selected_full_indices = selected.indices;\n }\n }\n // inspected is in full set space\n var inspected = this.model.data_source.inspected;\n var inspected_full_indices;\n if (!inspected || inspected.length === 0) {\n inspected_full_indices = [];\n } else {\n if (inspected['0d'].glyph) {\n inspected_full_indices = this.model.view.convert_indices_from_subset(indices);\n } else if (inspected['1d'].indices.length > 0) {\n inspected_full_indices = inspected['1d'].indices;\n } else {\n inspected_full_indices = function () {\n var result = [];\n for (var _i = 0, _a = Object.keys(inspected['2d'].indices); _i < _a.length; _i++) {\n var i = _a[_i];\n result.push(parseInt(i));\n }\n return result;\n }();\n }\n }\n // inspected is transformed to subset space\n var inspected_subset_indices = function () {\n var result = [];\n for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {\n var i = indices_1[_i];\n if (array_1.includes(inspected_full_indices, _this.all_indices[i]))\n result.push(i);\n }\n return result;\n }();\n var lod_threshold = this.plot_model.plot.lod_threshold;\n var glyph;\n var nonselection_glyph;\n var selection_glyph;\n if ((this.model.document != null ? this.model.document.interactive_duration() > 0 : false) && !glsupport && lod_threshold != null && this.all_indices.length > lod_threshold) {\n // Render decimated during interaction if too many elements and not using GL\n indices = this.decimated;\n glyph = this.decimated_glyph;\n nonselection_glyph = this.decimated_glyph;\n selection_glyph = this.selection_glyph;\n } else {\n glyph = this.model.muted && this.muted_glyph != null ? this.muted_glyph : this.glyph;\n nonselection_glyph = this.nonselection_glyph;\n selection_glyph = this.selection_glyph;\n }\n if (this.hover_glyph != null && inspected_subset_indices.length)\n indices = array_1.difference(indices, inspected_subset_indices);\n // Render with no selection\n var dtselect = null;\n var trender;\n if (!(selected_full_indices.length && this.have_selection_glyphs())) {\n trender = Date.now();\n if (this.glyph instanceof line_1.LineView) {\n if (this.hover_glyph && inspected_subset_indices.length)\n this.hover_glyph.render(ctx, this.model.view.convert_indices_from_subset(inspected_subset_indices), this.glyph);\n else\n glyph.render(ctx, this.all_indices, this.glyph);\n } else {\n glyph.render(ctx, indices, this.glyph);\n if (this.hover_glyph && inspected_subset_indices.length)\n this.hover_glyph.render(ctx, inspected_subset_indices, this.glyph);\n } // Render with selection\n } else {\n // reset the selection mask\n var tselect = Date.now();\n var selected_mask = {};\n for (var _i = 0, selected_full_indices_1 = selected_full_indices; _i < selected_full_indices_1.length; _i++) {\n var i = selected_full_indices_1[_i];\n selected_mask[i] = true;\n }\n // intersect/different selection with render mask\n var selected_subset_indices = new Array();\n var nonselected_subset_indices = new Array();\n // now, selected is changed to subset space, except for Line glyph\n if (this.glyph instanceof line_1.LineView) {\n for (var _a = 0, _b = this.all_indices; _a < _b.length; _a++) {\n var i = _b[_a];\n if (selected_mask[i] != null)\n selected_subset_indices.push(i);\n else\n nonselected_subset_indices.push(i);\n }\n } else {\n for (var _c = 0, indices_2 = indices; _c < indices_2.length; _c++) {\n var i = indices_2[_c];\n if (selected_mask[this.all_indices[i]] != null)\n selected_subset_indices.push(i);\n else\n nonselected_subset_indices.push(i);\n }\n }\n dtselect = Date.now() - tselect;\n trender = Date.now();\n nonselection_glyph.render(ctx, nonselected_subset_indices, this.glyph);\n selection_glyph.render(ctx, selected_subset_indices, this.glyph);\n if (this.hover_glyph != null) {\n if (this.glyph instanceof line_1.LineView)\n this.hover_glyph.render(ctx, this.model.view.convert_indices_from_subset(inspected_subset_indices), this.glyph);\n else\n this.hover_glyph.render(ctx, inspected_subset_indices, this.glyph);\n }\n }\n var dtrender = Date.now() - trender;\n this.last_dtrender = dtrender;\n var dttot = Date.now() - t0;\n logging_1.logger.debug(this.glyph.model.type + ' GlyphRenderer (' + this.model.id + '): render finished in ' + dttot + 'ms');\n logging_1.logger.trace(' - map_data finished in : ' + dtmap + 'ms');\n logging_1.logger.trace(' - mask_data finished in : ' + dtmask + 'ms');\n if (dtselect != null) {\n logging_1.logger.trace(' - selection mask finished in : ' + dtselect + 'ms');\n }\n logging_1.logger.trace(' - glyph renders finished in : ' + dtrender + 'ms');\n return ctx.restore();\n };\n GlyphRendererView.prototype.draw_legend = function (ctx, x0, x1, y0, y1, field, label) {\n var index = this.model.get_reference_point(field, label);\n this.glyph.draw_legend_for_index(ctx, {\n x0: x0,\n x1: x1,\n y0: y0,\n y1: y1\n }, index);\n };\n GlyphRendererView.prototype.hit_test = function (geometry) {\n if (!this.model.visible)\n return null;\n var hit_test_result = this.glyph.hit_test(geometry);\n // glyphs that don't have hit-testing implemented will return null\n if (hit_test_result == null)\n return null;\n return this.model.view.convert_selection_from_subset(hit_test_result);\n };\n return GlyphRendererView;\n }(renderer_1.RendererView);\n exports.GlyphRendererView = GlyphRendererView;\n var GlyphRenderer = function (_super) {\n tslib_1.__extends(GlyphRenderer, _super);\n function GlyphRenderer(attrs) {\n return _super.call(this, attrs) || this;\n }\n GlyphRenderer.initClass = function () {\n this.prototype.type = 'GlyphRenderer';\n this.prototype.default_view = GlyphRendererView;\n this.define({\n x_range_name: [\n p.String,\n 'default'\n ],\n y_range_name: [\n p.String,\n 'default'\n ],\n data_source: [p.Instance],\n view: [\n p.Instance,\n function () {\n return new cds_view_1.CDSView();\n }\n ],\n glyph: [p.Instance],\n hover_glyph: [p.Instance],\n nonselection_glyph: [\n p.Any,\n 'auto'\n ],\n selection_glyph: [\n p.Any,\n 'auto'\n ],\n muted_glyph: [p.Instance],\n muted: [\n p.Bool,\n false\n ]\n });\n this.override({ level: 'glyph' });\n };\n GlyphRenderer.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n if (this.view.source == null) {\n this.view.source = this.data_source;\n this.view.compute_indices();\n }\n };\n GlyphRenderer.prototype.get_reference_point = function (field, value) {\n var index = 0;\n if (field != null) {\n var data = this.data_source.get_column(field);\n if (data != null) {\n var i = arrayable_1.indexOf(data, value);\n if (i != -1)\n index = i;\n }\n }\n return index;\n };\n GlyphRenderer.prototype.get_selection_manager = function () {\n return this.data_source.selection_manager;\n };\n return GlyphRenderer;\n }(renderer_1.Renderer);\n exports.GlyphRenderer = GlyphRenderer;\n GlyphRenderer.initClass(); \n}","/*models/renderers/graph_renderer*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var renderer_1 = require(173 /* ./renderer */);\n var graph_hit_test_policy_1 = require(136 /* ../graphs/graph_hit_test_policy */);\n var p = require(15 /* core/properties */);\n var build_views_1 = require(4 /* core/build_views */);\n var GraphRendererView = function (_super) {\n tslib_1.__extends(GraphRendererView, _super);\n function GraphRendererView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n GraphRendererView.prototype.initialize = function (options) {\n _super.prototype.initialize.call(this, options);\n this.xscale = this.plot_view.frame.xscales['default'];\n this.yscale = this.plot_view.frame.yscales['default'];\n this._renderer_views = {};\n _a = build_views_1.build_views(this._renderer_views, [\n this.model.node_renderer,\n this.model.edge_renderer\n ], this.plot_view.view_options()), this.node_view = _a[0], this.edge_view = _a[1];\n this.set_data();\n var _a;\n };\n GraphRendererView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.model.layout_provider.change, function () {\n return _this.set_data();\n });\n this.connect(this.model.node_renderer.data_source._select, function () {\n return _this.set_data();\n });\n this.connect(this.model.node_renderer.data_source.inspect, function () {\n return _this.set_data();\n });\n this.connect(this.model.node_renderer.data_source.change, function () {\n return _this.set_data();\n });\n this.connect(this.model.edge_renderer.data_source._select, function () {\n return _this.set_data();\n });\n this.connect(this.model.edge_renderer.data_source.inspect, function () {\n return _this.set_data();\n });\n this.connect(this.model.edge_renderer.data_source.change, function () {\n return _this.set_data();\n });\n var _a = this.plot_model.frame, x_ranges = _a.x_ranges, y_ranges = _a.y_ranges;\n for (var name_1 in x_ranges) {\n var rng = x_ranges[name_1];\n this.connect(rng.change, function () {\n return _this.set_data();\n });\n }\n for (var name_2 in y_ranges) {\n var rng = y_ranges[name_2];\n this.connect(rng.change, function () {\n return _this.set_data();\n });\n }\n };\n GraphRendererView.prototype.set_data = function (request_render) {\n if (request_render === void 0) {\n request_render = true;\n }\n // TODO (bev) this is a bit clunky, need to make sure glyphs use the correct ranges when they call\n // mapping functions on the base Renderer class\n this.node_view.glyph.model.setv({\n x_range_name: this.model.x_range_name,\n y_range_name: this.model.y_range_name\n }, { silent: true });\n this.edge_view.glyph.model.setv({\n x_range_name: this.model.x_range_name,\n y_range_name: this.model.y_range_name\n }, { silent: true });\n // XXX\n var node_glyph = this.node_view.glyph;\n _a = this.model.layout_provider.get_node_coordinates(this.model.node_renderer.data_source), node_glyph._x = _a[0], node_glyph._y = _a[1];\n var edge_glyph = this.edge_view.glyph;\n _b = this.model.layout_provider.get_edge_coordinates(this.model.edge_renderer.data_source), edge_glyph._xs = _b[0], edge_glyph._ys = _b[1];\n node_glyph.index_data();\n edge_glyph.index_data();\n if (request_render)\n this.request_render();\n var _a, _b;\n };\n GraphRendererView.prototype.render = function () {\n this.edge_view.render();\n this.node_view.render();\n };\n return GraphRendererView;\n }(renderer_1.RendererView);\n exports.GraphRendererView = GraphRendererView;\n var GraphRenderer = function (_super) {\n tslib_1.__extends(GraphRenderer, _super);\n function GraphRenderer(attrs) {\n return _super.call(this, attrs) || this;\n }\n GraphRenderer.initClass = function () {\n this.prototype.type = 'GraphRenderer';\n this.prototype.default_view = GraphRendererView;\n this.define({\n x_range_name: [\n p.String,\n 'default'\n ],\n y_range_name: [\n p.String,\n 'default'\n ],\n layout_provider: [p.Instance],\n node_renderer: [p.Instance],\n edge_renderer: [p.Instance],\n selection_policy: [\n p.Instance,\n function () {\n return new graph_hit_test_policy_1.NodesOnly();\n }\n ],\n inspection_policy: [\n p.Instance,\n function () {\n return new graph_hit_test_policy_1.NodesOnly();\n }\n ]\n });\n this.override({ level: 'glyph' });\n };\n GraphRenderer.prototype.get_selection_manager = function () {\n return this.node_renderer.data_source.selection_manager;\n };\n return GraphRenderer;\n }(renderer_1.Renderer);\n exports.GraphRenderer = GraphRenderer;\n GraphRenderer.initClass(); \n}","/*models/renderers/guide_renderer*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var renderer_1 = require(173 /* ./renderer */);\n var p = require(15 /* core/properties */);\n var GuideRendererView = function (_super) {\n tslib_1.__extends(GuideRendererView, _super);\n function GuideRendererView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return GuideRendererView;\n }(renderer_1.RendererView);\n exports.GuideRendererView = GuideRendererView;\n var GuideRenderer = function (_super) {\n tslib_1.__extends(GuideRenderer, _super);\n function GuideRenderer(attrs) {\n return _super.call(this, attrs) || this;\n }\n GuideRenderer.initClass = function () {\n this.prototype.type = 'GuideRenderer';\n this.define({ plot: [p.Instance] });\n this.override({ level: 'overlay' });\n };\n return GuideRenderer;\n }(renderer_1.Renderer);\n exports.GuideRenderer = GuideRenderer;\n GuideRenderer.initClass(); \n}","/*models/renderers/index*/\nfunction _(require, module, exports) {\n var glyph_renderer_1 = require(169 /* ./glyph_renderer */);\n exports.GlyphRenderer = glyph_renderer_1.GlyphRenderer;\n var graph_renderer_1 = require(170 /* ./graph_renderer */);\n exports.GraphRenderer = graph_renderer_1.GraphRenderer;\n var guide_renderer_1 = require(171 /* ./guide_renderer */);\n exports.GuideRenderer = guide_renderer_1.GuideRenderer;\n var renderer_1 = require(173 /* ./renderer */);\n exports.Renderer = renderer_1.Renderer; \n}","/*models/renderers/renderer*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var dom_view_1 = require(6 /* core/dom_view */);\n var visuals = require(49 /* core/visuals */);\n var p = require(15 /* core/properties */);\n var model_1 = require(53 /* ../../model */);\n // This shouldn't be a DOMView, but annotations create a mess.\n var RendererView = function (_super) {\n tslib_1.__extends(RendererView, _super);\n function RendererView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n RendererView.prototype.initialize = function (options) {\n _super.prototype.initialize.call(this, options);\n this.plot_view = options.plot_view;\n this.visuals = new visuals.Visuals(this.model);\n this._has_finished = true; // XXX: should be in render() but subclasses don't respect super()\n };\n Object.defineProperty(RendererView.prototype, 'plot_model', {\n get: function () {\n return this.plot_view.model;\n },\n enumerable: true,\n configurable: true\n });\n RendererView.prototype.request_render = function () {\n this.plot_view.request_render();\n };\n RendererView.prototype.map_to_screen = function (x, y) {\n return this.plot_view.map_to_screen(x, y, this.model.x_range_name, this.model.y_range_name);\n };\n Object.defineProperty(RendererView.prototype, 'needs_clip', {\n get: function () {\n return false;\n },\n enumerable: true,\n configurable: true\n });\n return RendererView;\n }(dom_view_1.DOMView);\n exports.RendererView = RendererView;\n var Renderer = function (_super) {\n tslib_1.__extends(Renderer, _super);\n function Renderer(attrs) {\n return _super.call(this, attrs) || this;\n }\n Renderer.initClass = function () {\n this.prototype.type = 'Renderer';\n this.define({\n level: [p.RenderLevel],\n visible: [\n p.Bool,\n true\n ]\n });\n };\n return Renderer;\n }(model_1.Model);\n exports.Renderer = Renderer;\n Renderer.initClass(); \n}","/*models/scales/categorical_scale*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var linear_scale_1 = require(176 /* ./linear_scale */);\n var CategoricalScale = function (_super) {\n tslib_1.__extends(CategoricalScale, _super);\n function CategoricalScale(attrs) {\n return _super.call(this, attrs) || this;\n }\n CategoricalScale.initClass = function () {\n this.prototype.type = 'CategoricalScale';\n };\n CategoricalScale.prototype.compute = function (x) {\n return _super.prototype.compute.call(this, this.source_range.synthetic(x));\n };\n CategoricalScale.prototype.v_compute = function (xs) {\n return _super.prototype.v_compute.call(this, this.source_range.v_synthetic(xs));\n };\n return CategoricalScale;\n }(linear_scale_1.LinearScale);\n exports.CategoricalScale = CategoricalScale;\n CategoricalScale.initClass(); \n}","/*models/scales/index*/\nfunction _(require, module, exports) {\n var categorical_scale_1 = require(174 /* ./categorical_scale */);\n exports.CategoricalScale = categorical_scale_1.CategoricalScale;\n var linear_scale_1 = require(176 /* ./linear_scale */);\n exports.LinearScale = linear_scale_1.LinearScale;\n var log_scale_1 = require(177 /* ./log_scale */);\n exports.LogScale = log_scale_1.LogScale;\n var scale_1 = require(178 /* ./scale */);\n exports.Scale = scale_1.Scale; \n}","/*models/scales/linear_scale*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var scale_1 = require(178 /* ./scale */);\n var LinearScale = function (_super) {\n tslib_1.__extends(LinearScale, _super);\n function LinearScale(attrs) {\n return _super.call(this, attrs) || this;\n }\n LinearScale.initClass = function () {\n this.prototype.type = 'LinearScale';\n };\n LinearScale.prototype.compute = function (x) {\n var _a = this._compute_state(), factor = _a[0], offset = _a[1];\n return factor * x + offset;\n };\n LinearScale.prototype.v_compute = function (xs) {\n var _a = this._compute_state(), factor = _a[0], offset = _a[1];\n var result = new Float64Array(xs.length);\n for (var i = 0; i < xs.length; i++)\n result[i] = factor * xs[i] + offset;\n return result;\n };\n LinearScale.prototype.invert = function (xprime) {\n var _a = this._compute_state(), factor = _a[0], offset = _a[1];\n return (xprime - offset) / factor;\n };\n LinearScale.prototype.v_invert = function (xprimes) {\n var _a = this._compute_state(), factor = _a[0], offset = _a[1];\n var result = new Float64Array(xprimes.length);\n for (var i = 0; i < xprimes.length; i++)\n result[i] = (xprimes[i] - offset) / factor;\n return result;\n };\n LinearScale.prototype._compute_state = function () {\n //\n // (t1 - t0) (t1 - t0)\n // --------- * x - --------- * s0 + t0\n // (s1 - s0) (s1 - s0)\n //\n // [ factor ] [ offset ]\n //\n var source_start = this.source_range.start;\n var source_end = this.source_range.end;\n var target_start = this.target_range.start;\n var target_end = this.target_range.end;\n var factor = (target_end - target_start) / (source_end - source_start);\n var offset = -(factor * source_start) + target_start;\n return [\n factor,\n offset\n ];\n };\n return LinearScale;\n }(scale_1.Scale);\n exports.LinearScale = LinearScale;\n LinearScale.initClass(); \n}","/*models/scales/log_scale*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var scale_1 = require(178 /* ./scale */);\n var LogScale = function (_super) {\n tslib_1.__extends(LogScale, _super);\n function LogScale(attrs) {\n return _super.call(this, attrs) || this;\n }\n LogScale.initClass = function () {\n this.prototype.type = 'LogScale';\n };\n LogScale.prototype.compute = function (x) {\n var _a = this._compute_state(), factor = _a[0], offset = _a[1], inter_factor = _a[2], inter_offset = _a[3];\n var value;\n if (inter_factor == 0)\n value = 0;\n else {\n var _x = (Math.log(x) - inter_offset) / inter_factor;\n if (isFinite(_x))\n value = _x * factor + offset;\n else\n value = NaN;\n }\n return value;\n };\n LogScale.prototype.v_compute = function (xs) {\n var _a = this._compute_state(), factor = _a[0], offset = _a[1], inter_factor = _a[2], inter_offset = _a[3];\n var result = new Float64Array(xs.length);\n if (inter_factor == 0) {\n for (var i = 0; i < xs.length; i++)\n result[i] = 0;\n } else {\n for (var i = 0; i < xs.length; i++) {\n var _x = (Math.log(xs[i]) - inter_offset) / inter_factor;\n var value = void 0;\n if (isFinite(_x))\n value = _x * factor + offset;\n else\n value = NaN;\n result[i] = value;\n }\n }\n return result;\n };\n LogScale.prototype.invert = function (xprime) {\n var _a = this._compute_state(), factor = _a[0], offset = _a[1], inter_factor = _a[2], inter_offset = _a[3];\n var value = (xprime - offset) / factor;\n return Math.exp(inter_factor * value + inter_offset);\n };\n LogScale.prototype.v_invert = function (xprimes) {\n var _a = this._compute_state(), factor = _a[0], offset = _a[1], inter_factor = _a[2], inter_offset = _a[3];\n var result = new Float64Array(xprimes.length);\n for (var i = 0; i < xprimes.length; i++) {\n var value = (xprimes[i] - offset) / factor;\n result[i] = Math.exp(inter_factor * value + inter_offset);\n }\n return result;\n };\n LogScale.prototype._get_safe_factor = function (orig_start, orig_end) {\n var start = orig_start < 0 ? 0 : orig_start;\n var end = orig_end < 0 ? 0 : orig_end;\n if (start == end) {\n if (start == 0)\n _a = [\n 1,\n 10\n ], start = _a[0], end = _a[1];\n else {\n var log_val = Math.log(start) / Math.log(10);\n start = Math.pow(10, Math.floor(log_val));\n if (Math.ceil(log_val) != Math.floor(log_val))\n end = Math.pow(10, Math.ceil(log_val));\n else\n end = Math.pow(10, Math.ceil(log_val) + 1);\n }\n }\n return [\n start,\n end\n ];\n var _a;\n };\n LogScale.prototype._compute_state = function () {\n var source_start = this.source_range.start;\n var source_end = this.source_range.end;\n var target_start = this.target_range.start;\n var target_end = this.target_range.end;\n var screen_range = target_end - target_start;\n var _a = this._get_safe_factor(source_start, source_end), start = _a[0], end = _a[1];\n var inter_factor;\n var inter_offset;\n if (start == 0) {\n inter_factor = Math.log(end);\n inter_offset = 0;\n } else {\n inter_factor = Math.log(end) - Math.log(start);\n inter_offset = Math.log(start);\n }\n var factor = screen_range;\n var offset = target_start;\n return [\n factor,\n offset,\n inter_factor,\n inter_offset\n ];\n };\n return LogScale;\n }(scale_1.Scale);\n exports.LogScale = LogScale;\n LogScale.initClass(); \n}","/*models/scales/scale*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var transforms_1 = require(254 /* ../transforms */);\n var p = require(15 /* core/properties */);\n var Scale = function (_super) {\n tslib_1.__extends(Scale, _super);\n function Scale(attrs) {\n return _super.call(this, attrs) || this;\n }\n Scale.initClass = function () {\n this.prototype.type = 'Scale';\n this.internal({\n source_range: [p.Any],\n target_range: [p.Any]\n });\n };\n Scale.prototype.r_compute = function (x0, x1) {\n if (this.target_range.is_reversed)\n return [\n this.compute(x1),\n this.compute(x0)\n ];\n else\n return [\n this.compute(x0),\n this.compute(x1)\n ];\n };\n Scale.prototype.r_invert = function (sx0, sx1) {\n if (this.target_range.is_reversed)\n return [\n this.invert(sx1),\n this.invert(sx0)\n ];\n else\n return [\n this.invert(sx0),\n this.invert(sx1)\n ];\n };\n return Scale;\n }(transforms_1.Transform);\n exports.Scale = Scale;\n Scale.initClass(); \n}","/*models/selections/index*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n tslib_1.__exportStar(require(180 /* ./interaction_policy */), exports);\n var selection_1 = require(181 /* ./selection */);\n exports.Selection = selection_1.Selection; \n}","/*models/selections/interaction_policy*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var model_1 = require(53 /* ../../model */);\n var selection_1 = require(181 /* ../selections/selection */);\n var SelectionPolicy = function (_super) {\n tslib_1.__extends(SelectionPolicy, _super);\n function SelectionPolicy() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n SelectionPolicy.prototype.do_selection = function (hit_test_result, source, final, append) {\n if (hit_test_result === null) {\n return false;\n } else {\n source.selected.update(hit_test_result, final, append);\n //new selection created in order for python-side change detection machinery\n //to detect change in the source's selected property.\n var selected = new selection_1.Selection();\n selected.update(source.selected, final, false);\n source.selected = selected;\n source._select.emit();\n return !source.selected.is_empty();\n }\n };\n return SelectionPolicy;\n }(model_1.Model);\n exports.SelectionPolicy = SelectionPolicy;\n SelectionPolicy.prototype.type = 'SelectionPolicy';\n var IntersectRenderers = function (_super) {\n tslib_1.__extends(IntersectRenderers, _super);\n function IntersectRenderers() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n IntersectRenderers.prototype.hit_test = function (geometry, renderer_views) {\n var hit_test_result_renderers = [];\n for (var _i = 0, renderer_views_1 = renderer_views; _i < renderer_views_1.length; _i++) {\n var r = renderer_views_1[_i];\n var result = r.hit_test(geometry);\n if (result !== null)\n hit_test_result_renderers.push(result);\n }\n if (hit_test_result_renderers.length > 0) {\n var hit_test_result = hit_test_result_renderers[0];\n for (var _a = 0, hit_test_result_renderers_1 = hit_test_result_renderers; _a < hit_test_result_renderers_1.length; _a++) {\n var hit_test_result_other = hit_test_result_renderers_1[_a];\n hit_test_result.update_through_intersection(hit_test_result_other);\n }\n return hit_test_result;\n } else {\n return null;\n }\n };\n return IntersectRenderers;\n }(SelectionPolicy);\n exports.IntersectRenderers = IntersectRenderers;\n IntersectRenderers.prototype.type = 'IntersectRenderers';\n var UnionRenderers = function (_super) {\n tslib_1.__extends(UnionRenderers, _super);\n function UnionRenderers() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n UnionRenderers.prototype.hit_test = function (geometry, renderer_views) {\n var hit_test_result_renderers = [];\n for (var _i = 0, renderer_views_2 = renderer_views; _i < renderer_views_2.length; _i++) {\n var r = renderer_views_2[_i];\n var result = r.hit_test(geometry);\n if (result !== null)\n hit_test_result_renderers.push(result);\n }\n if (hit_test_result_renderers.length > 0) {\n var hit_test_result = hit_test_result_renderers[0];\n for (var _a = 0, hit_test_result_renderers_2 = hit_test_result_renderers; _a < hit_test_result_renderers_2.length; _a++) {\n var hit_test_result_other = hit_test_result_renderers_2[_a];\n hit_test_result.update_through_union(hit_test_result_other);\n }\n return hit_test_result;\n } else {\n return null;\n }\n };\n return UnionRenderers;\n }(SelectionPolicy);\n exports.UnionRenderers = UnionRenderers;\n UnionRenderers.prototype.type = 'UnionRenderers'; \n}","/*models/selections/selection*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var model_1 = require(53 /* ../../model */);\n var p = require(15 /* core/properties */);\n var array_1 = require(21 /* core/util/array */);\n var object_1 = require(32 /* core/util/object */);\n var Selection = function (_super) {\n tslib_1.__extends(Selection, _super);\n function Selection(attrs) {\n return _super.call(this, attrs) || this;\n }\n Selection.initClass = function () {\n this.prototype.type = 'Selection';\n this.define({\n indices: [\n p.Array,\n []\n ],\n line_indices: [\n p.Array,\n []\n ],\n multiline_indices: [\n p.Any,\n {}\n ]\n });\n this.internal({\n final: [p.Boolean],\n selected_glyphs: [\n p.Array,\n []\n ],\n get_view: [p.Any],\n image_indices: [\n p.Array,\n []\n ]\n });\n };\n Selection.prototype.initialize = function () {\n var _this = this;\n _super.prototype.initialize.call(this);\n this['0d'] = {\n 'glyph': null,\n 'indices': [],\n 'flag': false,\n 'get_view': function () {\n return null;\n }\n };\n this['2d'] = { 'indices': {} };\n this['1d'] = { 'indices': this.indices };\n this.get_view = function () {\n return null;\n };\n this.connect(this.properties.indices.change, function () {\n return _this['1d']['indices'] = _this.indices;\n });\n this.connect(this.properties.line_indices.change, function () {\n _this['0d']['indices'] = _this.line_indices;\n if (_this.line_indices.length == 0)\n _this['0d'].flag = false;\n else\n _this['0d'].flag = true;\n });\n this.connect(this.properties.selected_glyphs.change, function () {\n return _this['0d'].glyph = _this.selected_glyph;\n });\n this.connect(this.properties.get_view.change, function () {\n return _this['0d'].get_view = _this.get_view;\n });\n this.connect(this.properties.multiline_indices.change, function () {\n return _this['2d'].indices = _this.multiline_indices;\n });\n };\n Object.defineProperty(Selection.prototype, 'selected_glyph', {\n get: function () {\n if (this.selected_glyphs.length > 0)\n return this.selected_glyphs[0];\n else\n return null;\n },\n enumerable: true,\n configurable: true\n });\n Selection.prototype.add_to_selected_glyphs = function (glyph) {\n this.selected_glyphs.push(glyph);\n };\n Selection.prototype.update = function (selection, final, append) {\n this.final = final;\n if (append)\n this.update_through_union(selection);\n else {\n this.indices = selection.indices;\n this.line_indices = selection.line_indices;\n this.selected_glyphs = selection.selected_glyphs;\n this.get_view = selection.get_view;\n this.multiline_indices = selection.multiline_indices;\n this.image_indices = selection.image_indices;\n }\n };\n Selection.prototype.clear = function () {\n this.final = true;\n this.indices = [];\n this.line_indices = [];\n this.multiline_indices = {};\n this.get_view = function () {\n return null;\n };\n this.selected_glyphs = [];\n };\n Selection.prototype.is_empty = function () {\n return this.indices.length == 0 && this.line_indices.length == 0 && this.image_indices.length == 0;\n };\n Selection.prototype.update_through_union = function (other) {\n this.indices = array_1.union(other.indices, this.indices);\n this.selected_glyphs = array_1.union(other.selected_glyphs, this.selected_glyphs);\n this.line_indices = array_1.union(other.line_indices, this.line_indices);\n if (!this.get_view())\n this.get_view = other.get_view;\n this.multiline_indices = object_1.merge(other.multiline_indices, this.multiline_indices);\n };\n Selection.prototype.update_through_intersection = function (other) {\n this.indices = array_1.intersection(other.indices, this.indices);\n // TODO: think through and fix any logic below\n this.selected_glyphs = array_1.union(other.selected_glyphs, this.selected_glyphs);\n this.line_indices = array_1.union(other.line_indices, this.line_indices);\n if (!this.get_view())\n this.get_view = other.get_view;\n this.multiline_indices = object_1.merge(other.multiline_indices, this.multiline_indices);\n };\n return Selection;\n }(model_1.Model);\n exports.Selection = Selection;\n Selection.initClass(); \n}","/*models/sources/ajax_data_source*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var remote_data_source_1 = require(189 /* ./remote_data_source */);\n var logging_1 = require(14 /* core/logging */);\n var p = require(15 /* core/properties */);\n var AjaxDataSource = function (_super) {\n tslib_1.__extends(AjaxDataSource, _super);\n function AjaxDataSource(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.initialized = false;\n return _this;\n }\n AjaxDataSource.initClass = function () {\n this.prototype.type = 'AjaxDataSource';\n this.define({\n mode: [\n p.String,\n 'replace'\n ],\n content_type: [\n p.String,\n 'application/json'\n ],\n http_headers: [\n p.Any,\n {}\n ],\n max_size: [p.Number],\n method: [\n p.String,\n 'POST'\n ],\n if_modified: [\n p.Bool,\n false\n ]\n });\n };\n AjaxDataSource.prototype.destroy = function () {\n if (this.interval != null)\n clearInterval(this.interval);\n _super.prototype.destroy.call(this);\n };\n AjaxDataSource.prototype.setup = function () {\n var _this = this;\n if (!this.initialized) {\n this.initialized = true;\n this.get_data(this.mode);\n if (this.polling_interval) {\n var callback = function () {\n return _this.get_data(_this.mode, _this.max_size, _this.if_modified);\n };\n this.interval = setInterval(callback, this.polling_interval);\n }\n }\n };\n AjaxDataSource.prototype.get_data = function (mode, max_size, _if_modified) {\n var _this = this;\n if (max_size === void 0) {\n max_size = 0;\n }\n if (_if_modified === void 0) {\n _if_modified = false;\n }\n var xhr = this.prepare_request();\n // TODO: if_modified\n xhr.addEventListener('load', function () {\n return _this.do_load(xhr, mode, max_size);\n });\n xhr.addEventListener('error', function () {\n return _this.do_error(xhr);\n });\n xhr.send();\n };\n AjaxDataSource.prototype.prepare_request = function () {\n var xhr = new XMLHttpRequest();\n xhr.open(this.method, this.data_url, true);\n xhr.withCredentials = false;\n xhr.setRequestHeader('Content-Type', this.content_type);\n var http_headers = this.http_headers;\n for (var name_1 in http_headers) {\n var value = http_headers[name_1];\n xhr.setRequestHeader(name_1, value);\n }\n return xhr;\n };\n AjaxDataSource.prototype.do_load = function (xhr, mode, max_size) {\n if (xhr.status === 200) {\n var data = JSON.parse(xhr.responseText);\n switch (mode) {\n case 'replace': {\n this.data = data;\n break;\n }\n case 'append': {\n var original_data = this.data;\n for (var _i = 0, _a = this.columns(); _i < _a.length; _i++) {\n var column = _a[_i];\n // XXX: support typed arrays\n var old_col = Array.from(original_data[column]);\n var new_col = Array.from(data[column]);\n data[column] = old_col.concat(new_col).slice(-max_size);\n }\n this.data = data;\n break;\n }\n }\n }\n };\n AjaxDataSource.prototype.do_error = function (xhr) {\n logging_1.logger.error('Failed to fetch JSON from ' + this.data_url + ' with code ' + xhr.status);\n };\n return AjaxDataSource;\n }(remote_data_source_1.RemoteDataSource);\n exports.AjaxDataSource = AjaxDataSource;\n AjaxDataSource.initClass(); \n}","/*models/sources/cds_view*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var model_1 = require(53 /* ../../model */);\n var p = require(15 /* core/properties */);\n var selection_1 = require(181 /* ../selections/selection */);\n var array_1 = require(21 /* core/util/array */);\n var columnar_data_source_1 = require(185 /* ./columnar_data_source */);\n var CDSView = function (_super) {\n tslib_1.__extends(CDSView, _super);\n function CDSView(attrs) {\n return _super.call(this, attrs) || this;\n }\n CDSView.initClass = function () {\n this.prototype.type = 'CDSView';\n this.define({\n filters: [\n p.Array,\n []\n ],\n source: [p.Instance]\n });\n this.internal({\n indices: [\n p.Array,\n []\n ],\n indices_map: [\n p.Any,\n {}\n ]\n });\n };\n CDSView.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n this.compute_indices();\n };\n CDSView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.properties.filters.change, function () {\n _this.compute_indices();\n _this.change.emit();\n });\n if (this.source != null) {\n if (this.source.change != null)\n this.connect(this.source.change, function () {\n return _this.compute_indices();\n });\n if (this.source.streaming != null)\n this.connect(this.source.streaming, function () {\n return _this.compute_indices();\n });\n if (this.source.patching != null)\n this.connect(this.source.patching, function () {\n return _this.compute_indices();\n });\n }\n };\n CDSView.prototype.compute_indices = function () {\n var _this = this;\n var indices = this.filters.map(function (filter) {\n return filter.compute_indices(_this.source);\n });\n indices = function () {\n var result = [];\n for (var _i = 0, indices_1 = indices; _i < indices_1.length; _i++) {\n var inds = indices_1[_i];\n if (inds != null) {\n result.push(inds);\n }\n }\n return result;\n }();\n if (indices.length > 0) {\n this.indices = array_1.intersection.apply(this, indices);\n } else {\n if (this.source instanceof columnar_data_source_1.ColumnarDataSource) {\n this.indices = this.source.get_indices();\n }\n }\n this.indices_map_to_subset();\n };\n CDSView.prototype.indices_map_to_subset = function () {\n this.indices_map = {};\n for (var i = 0; i < this.indices.length; i++) {\n this.indices_map[this.indices[i]] = i;\n }\n };\n CDSView.prototype.convert_selection_from_subset = function (selection_subset) {\n var _this = this;\n var selection_full = new selection_1.Selection();\n selection_full.update_through_union(selection_subset);\n var indices_1d = selection_subset.indices.map(function (i) {\n return _this.indices[i];\n });\n selection_full.indices = indices_1d;\n selection_full.image_indices = selection_subset.image_indices;\n return selection_full;\n };\n CDSView.prototype.convert_selection_to_subset = function (selection_full) {\n var _this = this;\n var selection_subset = new selection_1.Selection();\n selection_subset.update_through_union(selection_full);\n var indices_1d = selection_full.indices.map(function (i) {\n return _this.indices_map[i];\n });\n selection_subset.indices = indices_1d;\n selection_subset.image_indices = selection_full.image_indices;\n return selection_subset;\n };\n CDSView.prototype.convert_indices_from_subset = function (indices) {\n var _this = this;\n return indices.map(function (i) {\n return _this.indices[i];\n });\n };\n return CDSView;\n }(model_1.Model);\n exports.CDSView = CDSView;\n CDSView.initClass(); \n}","/*models/sources/column_data_source*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var columnar_data_source_1 = require(185 /* ./columnar_data_source */);\n var has_props_1 = require(8 /* core/has_props */);\n var p = require(15 /* core/properties */);\n var data_structures_1 = require(29 /* core/util/data_structures */);\n var serialization_1 = require(36 /* core/util/serialization */);\n var types_1 = require(44 /* core/util/types */);\n var typed_array = require(43 /* core/util/typed_array */);\n var object_1 = require(32 /* core/util/object */);\n //exported for testing\n function stream_to_column(col, new_col, rollover) {\n if (types_1.isArray(col)) {\n var result = col.concat(new_col);\n if (rollover != null && result.length > rollover)\n return result.slice(-rollover);\n else\n return result;\n } else if (types_1.isTypedArray(col)) {\n var total_len = col.length + new_col.length;\n // handle rollover case for typed arrays\n if (rollover != null && total_len > rollover) {\n var start = total_len - rollover;\n var end = col.length;\n // resize col if it is shorter than the rollover length\n var result = void 0;\n if (col.length < rollover) {\n result = new col.constructor(rollover);\n result.set(col, 0);\n } else\n result = col;\n // shift values in original col to accommodate new_col\n for (var i = start, endi = end; i < endi; i++) {\n result[i - start] = result[i];\n }\n // update end values in col with new_col\n for (var i = 0, endi = new_col.length; i < endi; i++) {\n result[i + (end - start)] = new_col[i];\n }\n return result;\n } else {\n var tmp = new col.constructor(new_col);\n return typed_array.concat(col, tmp);\n }\n } else\n throw new Error('unsupported array types');\n }\n exports.stream_to_column = stream_to_column;\n // exported for testing\n function slice(ind, length) {\n var start, step, stop;\n if (types_1.isNumber(ind)) {\n start = ind;\n stop = ind + 1;\n step = 1;\n } else {\n start = ind.start != null ? ind.start : 0;\n stop = ind.stop != null ? ind.stop : length;\n step = ind.step != null ? ind.step : 1;\n }\n return [\n start,\n stop,\n step\n ];\n }\n exports.slice = slice;\n // exported for testing\n function patch_to_column(col, patch, shapes) {\n var patched = new data_structures_1.Set();\n var patched_range = false;\n for (var _i = 0, patch_1 = patch; _i < patch_1.length; _i++) {\n var _a = patch_1[_i], ind = _a[0], value = _a[1];\n // make the single index case look like the length-3 multi-index case\n var item = void 0, shape = void 0;\n if (types_1.isArray(ind)) {\n var i = ind[0];\n patched.push(i);\n shape = shapes[i];\n item = col[i];\n } else {\n if (types_1.isNumber(ind)) {\n value = [value];\n patched.push(ind);\n } else\n patched_range = true;\n ind = [\n 0,\n 0,\n ind\n ];\n shape = [\n 1,\n col.length\n ];\n item = col;\n }\n // this is basically like NumPy's \"newaxis\", inserting an empty dimension\n // makes length 2 and 3 multi-index cases uniform, so that the same code\n // can handle both\n if (ind.length === 2) {\n shape = [\n 1,\n shape[0]\n ];\n ind = [\n ind[0],\n 0,\n ind[1]\n ];\n }\n // now this one nested loop handles all cases\n var flat_index = 0;\n var _b = slice(ind[1], shape[0]), istart = _b[0], istop = _b[1], istep = _b[2];\n var _c = slice(ind[2], shape[1]), jstart = _c[0], jstop = _c[1], jstep = _c[2];\n for (var i = istart; i < istop; i += istep) {\n for (var j = jstart; j < jstop; j += jstep) {\n if (patched_range) {\n patched.push(j);\n }\n item[i * shape[1] + j] = value[flat_index];\n flat_index++;\n }\n }\n }\n return patched;\n }\n exports.patch_to_column = patch_to_column;\n var ColumnDataSource = function (_super) {\n tslib_1.__extends(ColumnDataSource, _super);\n function ColumnDataSource(attrs) {\n return _super.call(this, attrs) || this;\n }\n ColumnDataSource.initClass = function () {\n this.prototype.type = 'ColumnDataSource';\n this.define({\n data: [\n p.Any,\n {}\n ]\n });\n };\n ColumnDataSource.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n _a = serialization_1.decode_column_data(this.data), this.data = _a[0], this._shapes = _a[1];\n var _a;\n };\n ColumnDataSource.prototype.attributes_as_json = function (include_defaults, value_to_json) {\n if (include_defaults === void 0) {\n include_defaults = true;\n }\n if (value_to_json === void 0) {\n value_to_json = ColumnDataSource._value_to_json;\n }\n var attrs = {};\n var obj = this.serializable_attributes();\n for (var _i = 0, _a = object_1.keys(obj); _i < _a.length; _i++) {\n var key = _a[_i];\n var value = obj[key];\n if (key === 'data')\n value = serialization_1.encode_column_data(value, this._shapes);\n if (include_defaults)\n attrs[key] = value;\n else if (key in this._set_after_defaults)\n attrs[key] = value;\n }\n return value_to_json('attributes', attrs, this);\n };\n ColumnDataSource._value_to_json = function (key, value, optional_parent_object) {\n if (types_1.isObject(value) && key === 'data')\n return serialization_1.encode_column_data(value, optional_parent_object._shapes);\n else\n return has_props_1.HasProps._value_to_json(key, value, optional_parent_object);\n };\n ColumnDataSource.prototype.stream = function (new_data, rollover) {\n var data = this.data;\n for (var k in new_data) {\n data[k] = stream_to_column(data[k], new_data[k], rollover);\n }\n this.setv({ data: data }, { silent: true });\n this.streaming.emit();\n };\n ColumnDataSource.prototype.patch = function (patches) {\n var data = this.data;\n var patched = new data_structures_1.Set();\n for (var k in patches) {\n var patch = patches[k];\n patched = patched.union(patch_to_column(data[k], patch, this._shapes[k]));\n }\n this.setv({ data: data }, { silent: true });\n this.patching.emit(patched.values);\n };\n return ColumnDataSource;\n }(columnar_data_source_1.ColumnarDataSource);\n exports.ColumnDataSource = ColumnDataSource;\n ColumnDataSource.initClass(); \n}","/*models/sources/columnar_data_source*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var data_source_1 = require(186 /* ./data_source */);\n var signaling_1 = require(19 /* core/signaling */);\n var logging_1 = require(14 /* core/logging */);\n var selection_manager_1 = require(17 /* core/selection_manager */);\n var p = require(15 /* core/properties */);\n var types_1 = require(44 /* core/util/types */);\n var array_1 = require(21 /* core/util/array */);\n var object_1 = require(32 /* core/util/object */);\n var selection_1 = require(181 /* ../selections/selection */);\n var interaction_policy_1 = require(180 /* ../selections/interaction_policy */);\n var ColumnarDataSource = function (_super) {\n tslib_1.__extends(ColumnarDataSource, _super);\n function ColumnarDataSource(attrs) {\n return _super.call(this, attrs) || this;\n }\n Object.defineProperty(ColumnarDataSource.prototype, 'column_names', {\n get: function () {\n return object_1.keys(this.data);\n },\n enumerable: true,\n configurable: true\n });\n ColumnarDataSource.prototype.get_array = function (key) {\n var column = this.data[key];\n if (column == null)\n this.data[key] = column = [];\n else if (!types_1.isArray(column))\n this.data[key] = column = Array.from(column);\n return column;\n };\n ColumnarDataSource.initClass = function () {\n this.prototype.type = 'ColumnarDataSource';\n this.define({\n selection_policy: [\n p.Instance,\n function () {\n return new interaction_policy_1.UnionRenderers();\n }\n ]\n });\n this.internal({\n selection_manager: [\n p.Instance,\n function (self) {\n return new selection_manager_1.SelectionManager({ source: self });\n }\n ],\n inspected: [\n p.Instance,\n function () {\n return new selection_1.Selection();\n }\n ],\n _shapes: [\n p.Any,\n {}\n ]\n });\n };\n ColumnarDataSource.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n this._select = new signaling_1.Signal0(this, 'select');\n this.inspect = new signaling_1.Signal(this, 'inspect');\n // XXX: <[indices, tool, renderer-view, source, data], this>\n this.streaming = new signaling_1.Signal0(this, 'streaming');\n this.patching = new signaling_1.Signal(this, 'patching');\n };\n ColumnarDataSource.prototype.get_column = function (colname) {\n var column = this.data[colname];\n return column != null ? column : null;\n };\n ColumnarDataSource.prototype.columns = function () {\n // return the column names in this data source\n return object_1.keys(this.data);\n };\n ColumnarDataSource.prototype.get_length = function (soft) {\n if (soft === void 0) {\n soft = true;\n }\n var lengths = array_1.uniq(object_1.values(this.data).map(function (v) {\n return v.length;\n }));\n switch (lengths.length) {\n case 0: {\n return null; // XXX: don't guess, treat on case-by-case basis\n }\n case 1: {\n return lengths[0];\n }\n default: {\n var msg = 'data source has columns of inconsistent lengths';\n if (soft) {\n logging_1.logger.warn(msg);\n return lengths.sort()[0];\n } else\n throw new Error(msg);\n }\n }\n };\n ColumnarDataSource.prototype.get_indices = function () {\n var length = this.get_length();\n return array_1.range(0, length != null ? length : 1); //TODO: returns [0] when no data, should it?\n };\n return ColumnarDataSource;\n }(data_source_1.DataSource);\n exports.ColumnarDataSource = ColumnarDataSource;\n ColumnarDataSource.initClass(); \n}","/*models/sources/data_source*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var model_1 = require(53 /* ../../model */);\n var p = require(15 /* core/properties */);\n var types_1 = require(44 /* core/util/types */);\n var selection_1 = require(181 /* ../selections/selection */);\n var DataSource = function (_super) {\n tslib_1.__extends(DataSource, _super);\n function DataSource(attrs) {\n return _super.call(this, attrs) || this;\n }\n DataSource.initClass = function () {\n this.prototype.type = 'DataSource';\n this.define({\n selected: [\n p.Instance,\n function () {\n return new selection_1.Selection();\n }\n ],\n callback: [p.Any]\n });\n };\n DataSource.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.properties.selected.change, function () {\n var callback = _this.callback;\n if (callback != null) {\n if (types_1.isFunction(callback))\n callback(_this);\n else\n callback.execute(_this);\n }\n });\n };\n return DataSource;\n }(model_1.Model);\n exports.DataSource = DataSource;\n DataSource.initClass(); \n}","/*models/sources/geojson_data_source*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var columnar_data_source_1 = require(185 /* ./columnar_data_source */);\n var logging_1 = require(14 /* core/logging */);\n var p = require(15 /* core/properties */);\n var array_1 = require(21 /* core/util/array */);\n var GeoJSONDataSource = function (_super) {\n tslib_1.__extends(GeoJSONDataSource, _super);\n function GeoJSONDataSource(attrs) {\n return _super.call(this, attrs) || this;\n }\n GeoJSONDataSource.initClass = function () {\n this.prototype.type = 'GeoJSONDataSource';\n this.define({ geojson: [p.Any] });\n this.internal({\n data: [\n p.Any,\n {}\n ]\n });\n };\n GeoJSONDataSource.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n this._update_data();\n };\n GeoJSONDataSource.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.properties.geojson.change, function () {\n return _this._update_data();\n });\n };\n GeoJSONDataSource.prototype._update_data = function () {\n this.data = this.geojson_to_column_data();\n };\n GeoJSONDataSource.prototype._get_new_list_array = function (length) {\n return array_1.range(0, length).map(function (_i) {\n return [];\n });\n };\n GeoJSONDataSource.prototype._get_new_nan_array = function (length) {\n return array_1.range(0, length).map(function (_i) {\n return NaN;\n });\n };\n GeoJSONDataSource.prototype._add_properties = function (item, data, i, item_count) {\n var properties = item.properties || {};\n for (var property in properties) {\n if (!data.hasOwnProperty(property))\n data[property] = this._get_new_nan_array(item_count);\n data[property][i] = properties[property];\n }\n };\n GeoJSONDataSource.prototype._add_geometry = function (geometry, data, i) {\n function orNaN(v) {\n return v != null ? v : NaN;\n }\n function flatten(acc, item) {\n return acc.concat([[\n NaN,\n NaN,\n NaN\n ]]).concat(item);\n }\n switch (geometry.type) {\n case 'Point': {\n var _a = geometry.coordinates, x = _a[0], y = _a[1], z = _a[2];\n data.x[i] = x;\n data.y[i] = y;\n data.z[i] = orNaN(z);\n break;\n }\n case 'LineString': {\n var coordinates = geometry.coordinates;\n for (var j = 0; j < coordinates.length; j++) {\n var _b = coordinates[j], x = _b[0], y = _b[1], z = _b[2];\n data.xs[i][j] = x;\n data.ys[i][j] = y;\n data.zs[i][j] = orNaN(z);\n }\n break;\n }\n case 'Polygon': {\n if (geometry.coordinates.length > 1)\n logging_1.logger.warn('Bokeh does not support Polygons with holes in, only exterior ring used.');\n var exterior_ring = geometry.coordinates[0];\n for (var j = 0; j < exterior_ring.length; j++) {\n var _c = exterior_ring[j], x = _c[0], y = _c[1], z = _c[2];\n data.xs[i][j] = x;\n data.ys[i][j] = y;\n data.zs[i][j] = orNaN(z);\n }\n break;\n }\n case 'MultiPoint': {\n logging_1.logger.warn('MultiPoint not supported in Bokeh');\n break;\n }\n case 'MultiLineString': {\n var coordinates = geometry.coordinates.reduce(flatten);\n for (var j = 0; j < coordinates.length; j++) {\n var _d = coordinates[j], x = _d[0], y = _d[1], z = _d[2];\n data.xs[i][j] = x;\n data.ys[i][j] = y;\n data.zs[i][j] = orNaN(z);\n }\n break;\n }\n case 'MultiPolygon': {\n var exterior_rings = [];\n for (var _e = 0, _f = geometry.coordinates; _e < _f.length; _e++) {\n var polygon = _f[_e];\n if (polygon.length > 1)\n logging_1.logger.warn('Bokeh does not support Polygons with holes in, only exterior ring used.');\n exterior_rings.push(polygon[0]);\n }\n var coordinates = exterior_rings.reduce(flatten);\n for (var j = 0; j < coordinates.length; j++) {\n var _g = coordinates[j], x = _g[0], y = _g[1], z = _g[2];\n data.xs[i][j] = x;\n data.ys[i][j] = y;\n data.zs[i][j] = orNaN(z);\n }\n break;\n }\n default:\n throw new Error('Invalid GeoJSON geometry type: ' + geometry.type);\n }\n };\n GeoJSONDataSource.prototype.geojson_to_column_data = function () {\n var geojson = JSON.parse(this.geojson);\n var items;\n switch (geojson.type) {\n case 'GeometryCollection': {\n if (geojson.geometries == null)\n throw new Error('No geometries found in GeometryCollection');\n if (geojson.geometries.length === 0)\n throw new Error('geojson.geometries must have one or more items');\n items = geojson.geometries;\n break;\n }\n case 'FeatureCollection': {\n if (geojson.features == null)\n throw new Error('No features found in FeaturesCollection');\n if (geojson.features.length == 0)\n throw new Error('geojson.features must have one or more items');\n items = geojson.features;\n break;\n }\n default:\n throw new Error('Bokeh only supports type GeometryCollection and FeatureCollection at top level');\n }\n var item_count = 0;\n for (var _a = 0, items_1 = items; _a < items_1.length; _a++) {\n var item = items_1[_a];\n var geometry = item.type === 'Feature' ? item.geometry : item;\n if (geometry.type == 'GeometryCollection')\n item_count += geometry.geometries.length;\n else\n item_count += 1;\n }\n var data = {\n x: this._get_new_nan_array(item_count),\n y: this._get_new_nan_array(item_count),\n z: this._get_new_nan_array(item_count),\n xs: this._get_new_list_array(item_count),\n ys: this._get_new_list_array(item_count),\n zs: this._get_new_list_array(item_count)\n };\n var arr_index = 0;\n for (var _b = 0, items_2 = items; _b < items_2.length; _b++) {\n var item = items_2[_b];\n var geometry = item.type == 'Feature' ? item.geometry : item;\n if (geometry.type == 'GeometryCollection') {\n for (var _c = 0, _d = geometry.geometries; _c < _d.length; _c++) {\n var g = _d[_c];\n this._add_geometry(g, data, arr_index);\n if (item.type === 'Feature')\n this._add_properties(item, data, arr_index, item_count);\n arr_index += 1;\n }\n } else {\n this._add_geometry(geometry, data, arr_index);\n if (item.type === 'Feature')\n this._add_properties(item, data, arr_index, item_count);\n arr_index += 1;\n }\n }\n return data;\n };\n return GeoJSONDataSource;\n }(columnar_data_source_1.ColumnarDataSource);\n exports.GeoJSONDataSource = GeoJSONDataSource;\n GeoJSONDataSource.initClass(); \n}","/*models/sources/index*/\nfunction _(require, module, exports) {\n var ajax_data_source_1 = require(182 /* ./ajax_data_source */);\n exports.AjaxDataSource = ajax_data_source_1.AjaxDataSource;\n var column_data_source_1 = require(184 /* ./column_data_source */);\n exports.ColumnDataSource = column_data_source_1.ColumnDataSource;\n var columnar_data_source_1 = require(185 /* ./columnar_data_source */);\n exports.ColumnarDataSource = columnar_data_source_1.ColumnarDataSource;\n var cds_view_1 = require(183 /* ./cds_view */);\n exports.CDSView = cds_view_1.CDSView;\n var data_source_1 = require(186 /* ./data_source */);\n exports.DataSource = data_source_1.DataSource;\n var geojson_data_source_1 = require(187 /* ./geojson_data_source */);\n exports.GeoJSONDataSource = geojson_data_source_1.GeoJSONDataSource;\n var remote_data_source_1 = require(189 /* ./remote_data_source */);\n exports.RemoteDataSource = remote_data_source_1.RemoteDataSource; \n}","/*models/sources/remote_data_source*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var column_data_source_1 = require(184 /* ./column_data_source */);\n var p = require(15 /* core/properties */);\n var RemoteDataSource = function (_super) {\n tslib_1.__extends(RemoteDataSource, _super);\n function RemoteDataSource(attrs) {\n return _super.call(this, attrs) || this;\n }\n RemoteDataSource.prototype.get_column = function (colname) {\n var column = this.data[colname];\n return column != null ? column : [];\n };\n RemoteDataSource.initClass = function () {\n this.prototype.type = 'RemoteDataSource';\n this.define({\n data_url: [p.String],\n polling_interval: [p.Number]\n });\n };\n return RemoteDataSource;\n }(column_data_source_1.ColumnDataSource);\n exports.RemoteDataSource = RemoteDataSource;\n RemoteDataSource.initClass(); \n}","/*models/tickers/adaptive_ticker*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var continuous_ticker_1 = require(194 /* ./continuous_ticker */);\n var p = require(15 /* core/properties */);\n var array_1 = require(21 /* core/util/array */);\n // Forces a number x into a specified range [min_val, max_val].\n function clamp(x, min_val, max_val) {\n return Math.max(min_val, Math.min(max_val, x));\n }\n // A log function with an optional base.\n function log(x, base) {\n if (base === void 0) {\n base = Math.E;\n }\n return Math.log(x) / Math.log(base);\n }\n var AdaptiveTicker = function (_super) {\n tslib_1.__extends(AdaptiveTicker, _super);\n function AdaptiveTicker(attrs) {\n return _super.call(this, attrs) || this;\n }\n AdaptiveTicker.initClass = function () {\n this.prototype.type = 'AdaptiveTicker';\n this.define({\n base: [\n p.Number,\n 10\n ],\n mantissas: [\n p.Array,\n [\n 1,\n 2,\n 5\n ]\n ],\n min_interval: [\n p.Number,\n 0\n ],\n max_interval: [p.Number]\n });\n };\n // These arguments control the range of possible intervals. The interval I\n // returned by get_interval() will be the one that most closely matches the\n // desired number of ticks, subject to the following constraints:\n // I = (M * B^N), where\n // M is a member of mantissas,\n // B is base,\n // and N is an integer;\n // and min_interval <= I <= max_interval.\n AdaptiveTicker.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n var prefix_mantissa = array_1.nth(this.mantissas, -1) / this.base;\n var suffix_mantissa = array_1.nth(this.mantissas, 0) * this.base;\n this.extended_mantissas = [prefix_mantissa].concat(this.mantissas, [suffix_mantissa]);\n this.base_factor = this.get_min_interval() === 0 ? 1 : this.get_min_interval();\n };\n AdaptiveTicker.prototype.get_interval = function (data_low, data_high, desired_n_ticks) {\n var data_range = data_high - data_low;\n var ideal_interval = this.get_ideal_interval(data_low, data_high, desired_n_ticks);\n var interval_exponent = Math.floor(log(ideal_interval / this.base_factor, this.base));\n var ideal_magnitude = Math.pow(this.base, interval_exponent) * this.base_factor;\n // An untested optimization.\n // const ideal_mantissa = ideal_interval / ideal_magnitude\n // index = sortedIndex(this.extended_mantissas, ideal_mantissa)\n // candidate_mantissas = this.extended_mantissas[index..index + 1]\n var candidate_mantissas = this.extended_mantissas;\n var errors = candidate_mantissas.map(function (mantissa) {\n return Math.abs(desired_n_ticks - data_range / (mantissa * ideal_magnitude));\n });\n var best_mantissa = candidate_mantissas[array_1.argmin(errors)];\n var interval = best_mantissa * ideal_magnitude;\n return clamp(interval, this.get_min_interval(), this.get_max_interval());\n };\n return AdaptiveTicker;\n }(continuous_ticker_1.ContinuousTicker);\n exports.AdaptiveTicker = AdaptiveTicker;\n AdaptiveTicker.initClass(); \n}","/*models/tickers/basic_ticker*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var adaptive_ticker_1 = require(190 /* ./adaptive_ticker */);\n var BasicTicker = function (_super) {\n tslib_1.__extends(BasicTicker, _super);\n function BasicTicker(attrs) {\n return _super.call(this, attrs) || this;\n }\n BasicTicker.initClass = function () {\n this.prototype.type = 'BasicTicker';\n };\n return BasicTicker;\n }(adaptive_ticker_1.AdaptiveTicker);\n exports.BasicTicker = BasicTicker;\n BasicTicker.initClass(); \n}","/*models/tickers/categorical_ticker*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var ticker_1 = require(203 /* ./ticker */);\n var CategoricalTicker = function (_super) {\n tslib_1.__extends(CategoricalTicker, _super);\n function CategoricalTicker(attrs) {\n return _super.call(this, attrs) || this;\n }\n CategoricalTicker.initClass = function () {\n this.prototype.type = 'CategoricalTicker';\n };\n CategoricalTicker.prototype.get_ticks = function (start, end, range, _cross_loc, _) {\n var majors = this._collect(range.factors, range, start, end);\n var tops = this._collect(range.tops || [], range, start, end);\n var mids = this._collect(range.mids || [], range, start, end);\n return {\n major: majors,\n minor: [],\n tops: tops,\n mids: mids\n };\n };\n CategoricalTicker.prototype._collect = function (factors, range, start, end) {\n var result = [];\n for (var _i = 0, factors_1 = factors; _i < factors_1.length; _i++) {\n var factor = factors_1[_i];\n var coord = range.synthetic(factor);\n if (coord > start && coord < end)\n result.push(factor);\n }\n return result;\n };\n return CategoricalTicker;\n }(ticker_1.Ticker);\n exports.CategoricalTicker = CategoricalTicker;\n CategoricalTicker.initClass(); \n}","/*models/tickers/composite_ticker*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var continuous_ticker_1 = require(194 /* ./continuous_ticker */);\n var p = require(15 /* core/properties */);\n var array_1 = require(21 /* core/util/array */);\n var object_1 = require(32 /* core/util/object */);\n var CompositeTicker = function (_super) {\n tslib_1.__extends(CompositeTicker, _super);\n function CompositeTicker(attrs) {\n return _super.call(this, attrs) || this;\n }\n CompositeTicker.initClass = function () {\n this.prototype.type = 'CompositeTicker';\n this.define({\n tickers: [\n p.Array,\n []\n ]\n });\n };\n Object.defineProperty(CompositeTicker.prototype, 'min_intervals', {\n // The tickers should be in order of increasing interval size; specifically,\n // if S comes before T, then it should be the case that\n // S.get_max_interval() < T.get_min_interval().\n // FIXME Enforce this automatically.\n get: function () {\n return this.tickers.map(function (ticker) {\n return ticker.get_min_interval();\n });\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(CompositeTicker.prototype, 'max_intervals', {\n get: function () {\n return this.tickers.map(function (ticker) {\n return ticker.get_max_interval();\n });\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(CompositeTicker.prototype, 'min_interval', {\n get: function () {\n return this.min_intervals[0];\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(CompositeTicker.prototype, 'max_interval', {\n get: function () {\n return this.max_intervals[0];\n },\n enumerable: true,\n configurable: true\n });\n CompositeTicker.prototype.get_best_ticker = function (data_low, data_high, desired_n_ticks) {\n var data_range = data_high - data_low;\n var ideal_interval = this.get_ideal_interval(data_low, data_high, desired_n_ticks);\n var ticker_ndxs = [\n array_1.sortedIndex(this.min_intervals, ideal_interval) - 1,\n array_1.sortedIndex(this.max_intervals, ideal_interval)\n ];\n var intervals = [\n this.min_intervals[ticker_ndxs[0]],\n this.max_intervals[ticker_ndxs[1]]\n ];\n var errors = intervals.map(function (interval) {\n return Math.abs(desired_n_ticks - data_range / interval);\n });\n var best_ticker;\n if (object_1.isEmpty(errors.filter(function (e) {\n return !isNaN(e);\n }))) {\n // this can happen if the data isn't loaded yet, we just default to the first scale\n best_ticker = this.tickers[0];\n } else {\n var best_index = array_1.argmin(errors);\n var best_ticker_ndx = ticker_ndxs[best_index];\n best_ticker = this.tickers[best_ticker_ndx];\n }\n return best_ticker;\n };\n CompositeTicker.prototype.get_interval = function (data_low, data_high, desired_n_ticks) {\n var best_ticker = this.get_best_ticker(data_low, data_high, desired_n_ticks);\n return best_ticker.get_interval(data_low, data_high, desired_n_ticks);\n };\n CompositeTicker.prototype.get_ticks_no_defaults = function (data_low, data_high, cross_loc, desired_n_ticks) {\n var best_ticker = this.get_best_ticker(data_low, data_high, desired_n_ticks);\n return best_ticker.get_ticks_no_defaults(data_low, data_high, cross_loc, desired_n_ticks);\n };\n return CompositeTicker;\n }(continuous_ticker_1.ContinuousTicker);\n exports.CompositeTicker = CompositeTicker;\n CompositeTicker.initClass(); \n}","/*models/tickers/continuous_ticker*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var ticker_1 = require(203 /* ./ticker */);\n var p = require(15 /* core/properties */);\n var array_1 = require(21 /* core/util/array */);\n var types_1 = require(44 /* core/util/types */);\n var ContinuousTicker = function (_super) {\n tslib_1.__extends(ContinuousTicker, _super);\n function ContinuousTicker(attrs) {\n return _super.call(this, attrs) || this;\n }\n ContinuousTicker.initClass = function () {\n this.prototype.type = 'ContinuousTicker';\n this.define({\n num_minor_ticks: [\n p.Number,\n 5\n ],\n desired_num_ticks: [\n p.Number,\n 6\n ]\n });\n };\n ContinuousTicker.prototype.get_ticks = function (data_low, data_high, _range, cross_loc, _) {\n return this.get_ticks_no_defaults(data_low, data_high, cross_loc, this.desired_num_ticks);\n };\n // The version of get_ticks() that does the work (and the version that\n // should be overridden in subclasses).\n ContinuousTicker.prototype.get_ticks_no_defaults = function (data_low, data_high, _cross_loc, desired_n_ticks) {\n var interval = this.get_interval(data_low, data_high, desired_n_ticks);\n var start_factor = Math.floor(data_low / interval);\n var end_factor = Math.ceil(data_high / interval);\n var factors;\n if (types_1.isStrictNaN(start_factor) || types_1.isStrictNaN(end_factor))\n factors = [];\n else\n factors = array_1.range(start_factor, end_factor + 1);\n var ticks = factors.map(function (factor) {\n return factor * interval;\n }).filter(function (tick) {\n return data_low <= tick && tick <= data_high;\n });\n var num_minor_ticks = this.num_minor_ticks;\n var minor_ticks = [];\n if (num_minor_ticks > 0 && ticks.length > 0) {\n var minor_interval_1 = interval / num_minor_ticks;\n var minor_offsets = array_1.range(0, num_minor_ticks).map(function (i) {\n return i * minor_interval_1;\n });\n for (var _i = 0, _a = minor_offsets.slice(1); _i < _a.length; _i++) {\n var x = _a[_i];\n var mt = ticks[0] - x;\n if (data_low <= mt && mt <= data_high) {\n minor_ticks.push(mt);\n }\n }\n for (var _b = 0, ticks_1 = ticks; _b < ticks_1.length; _b++) {\n var tick = ticks_1[_b];\n for (var _c = 0, minor_offsets_1 = minor_offsets; _c < minor_offsets_1.length; _c++) {\n var x = minor_offsets_1[_c];\n var mt = tick + x;\n if (data_low <= mt && mt <= data_high) {\n minor_ticks.push(mt);\n }\n }\n }\n }\n return {\n major: ticks,\n minor: minor_ticks\n };\n };\n // Returns the smallest interval that can be returned by get_interval().\n ContinuousTicker.prototype.get_min_interval = function () {\n return this.min_interval;\n };\n // Returns the largest interval that can be returned by get_interval().\n ContinuousTicker.prototype.get_max_interval = function () {\n return this.max_interval != null ? this.max_interval : Infinity;\n };\n // Returns the interval size that would produce exactly the number of\n // desired ticks. (In general we won't use exactly this interval, because\n // we want the ticks to be round numbers.)\n ContinuousTicker.prototype.get_ideal_interval = function (data_low, data_high, desired_n_ticks) {\n var data_range = data_high - data_low;\n return data_range / desired_n_ticks;\n };\n return ContinuousTicker;\n }(ticker_1.Ticker);\n exports.ContinuousTicker = ContinuousTicker;\n ContinuousTicker.initClass(); \n}","/*models/tickers/datetime_ticker*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var array_1 = require(21 /* core/util/array */);\n var adaptive_ticker_1 = require(190 /* ./adaptive_ticker */);\n var composite_ticker_1 = require(193 /* ./composite_ticker */);\n var days_ticker_1 = require(196 /* ./days_ticker */);\n var months_ticker_1 = require(201 /* ./months_ticker */);\n var years_ticker_1 = require(205 /* ./years_ticker */);\n var util_1 = require(204 /* ./util */);\n var DatetimeTicker = function (_super) {\n tslib_1.__extends(DatetimeTicker, _super);\n function DatetimeTicker(attrs) {\n return _super.call(this, attrs) || this;\n }\n DatetimeTicker.initClass = function () {\n this.prototype.type = 'DatetimeTicker';\n this.override({\n num_minor_ticks: 0,\n tickers: function () {\n return [\n // Sub-second.\n new adaptive_ticker_1.AdaptiveTicker({\n mantissas: [\n 1,\n 2,\n 5\n ],\n base: 10,\n min_interval: 0,\n max_interval: 500 * util_1.ONE_MILLI,\n num_minor_ticks: 0\n }),\n // Seconds, minutes.\n new adaptive_ticker_1.AdaptiveTicker({\n mantissas: [\n 1,\n 2,\n 5,\n 10,\n 15,\n 20,\n 30\n ],\n base: 60,\n min_interval: util_1.ONE_SECOND,\n max_interval: 30 * util_1.ONE_MINUTE,\n num_minor_ticks: 0\n }),\n // Hours.\n new adaptive_ticker_1.AdaptiveTicker({\n mantissas: [\n 1,\n 2,\n 4,\n 6,\n 8,\n 12\n ],\n base: 24,\n min_interval: util_1.ONE_HOUR,\n max_interval: 12 * util_1.ONE_HOUR,\n num_minor_ticks: 0\n }),\n // Days.\n new days_ticker_1.DaysTicker({ days: array_1.range(1, 32) }),\n new days_ticker_1.DaysTicker({ days: array_1.range(1, 31, 3) }),\n new days_ticker_1.DaysTicker({\n days: [\n 1,\n 8,\n 15,\n 22\n ]\n }),\n new days_ticker_1.DaysTicker({\n days: [\n 1,\n 15\n ]\n }),\n // Months.\n new months_ticker_1.MonthsTicker({ months: array_1.range(0, 12, 1) }),\n new months_ticker_1.MonthsTicker({ months: array_1.range(0, 12, 2) }),\n new months_ticker_1.MonthsTicker({ months: array_1.range(0, 12, 4) }),\n new months_ticker_1.MonthsTicker({ months: array_1.range(0, 12, 6) }),\n // Years\n new years_ticker_1.YearsTicker({})\n ];\n }\n });\n };\n return DatetimeTicker;\n }(composite_ticker_1.CompositeTicker);\n exports.DatetimeTicker = DatetimeTicker;\n DatetimeTicker.initClass(); \n}","/*models/tickers/days_ticker*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var single_interval_ticker_1 = require(202 /* ./single_interval_ticker */);\n var util_1 = require(204 /* ./util */);\n var p = require(15 /* core/properties */);\n var array_1 = require(21 /* core/util/array */);\n // Given a start and end time in millis, returns the shortest array of\n // consecutive months (as Dates) that surrounds both times.\n function date_range_by_month(start_time, end_time) {\n var start_date = util_1.last_month_no_later_than(new Date(start_time));\n var end_date = util_1.last_month_no_later_than(new Date(end_time));\n // XXX This is not a reliable technique in general, but it should be\n // safe when the day of the month is 1. (The problem case is this:\n // Mar 31 -> Apr 31, which becomes May 1.)\n end_date.setUTCMonth(end_date.getUTCMonth() + 1);\n var dates = [];\n var date = start_date;\n while (true) {\n dates.push(util_1.copy_date(date));\n date.setUTCMonth(date.getUTCMonth() + 1);\n if (date > end_date)\n break;\n }\n return dates;\n }\n var DaysTicker = function (_super) {\n tslib_1.__extends(DaysTicker, _super);\n function DaysTicker(attrs) {\n return _super.call(this, attrs) || this;\n }\n DaysTicker.initClass = function () {\n this.prototype.type = 'DaysTicker';\n this.define({\n days: [\n p.Array,\n []\n ]\n });\n this.override({ num_minor_ticks: 0 });\n };\n DaysTicker.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n var days = this.days;\n if (days.length > 1)\n this.interval = (days[1] - days[0]) * util_1.ONE_DAY;\n else\n this.interval = 31 * util_1.ONE_DAY;\n };\n DaysTicker.prototype.get_ticks_no_defaults = function (data_low, data_high, _cross_loc, _desired_n_ticks) {\n var month_dates = date_range_by_month(data_low, data_high);\n var days = this.days;\n var days_of_month = function (month_date, interval) {\n var dates = [];\n for (var _i = 0, days_1 = days; _i < days_1.length; _i++) {\n var day = days_1[_i];\n var day_date = util_1.copy_date(month_date);\n day_date.setUTCDate(day);\n // We can't use all of the values in this.days, because they may not\n // fall within the current month. In fact, if, e.g., our month is 28 days\n // and we're marking every third day, we don't want day 28 to show up\n // because it'll be right next to the 1st of the next month. So we\n // make sure we have a bit of room before we include a day.\n var future_date = new Date(day_date.getTime() + interval / 2);\n if (future_date.getUTCMonth() == month_date.getUTCMonth())\n dates.push(day_date);\n }\n return dates;\n };\n var interval = this.interval;\n var day_dates = array_1.concat(month_dates.map(function (date) {\n return days_of_month(date, interval);\n }));\n var all_ticks = day_dates.map(function (day_date) {\n return day_date.getTime();\n });\n // FIXME Since the ticks are sorted, this could be done more efficiently.\n var ticks_in_range = all_ticks.filter(function (tick) {\n return data_low <= tick && tick <= data_high;\n });\n return {\n major: ticks_in_range,\n minor: []\n };\n };\n return DaysTicker;\n }(single_interval_ticker_1.SingleIntervalTicker);\n exports.DaysTicker = DaysTicker;\n DaysTicker.initClass(); \n}","/*models/tickers/fixed_ticker*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var continuous_ticker_1 = require(194 /* ./continuous_ticker */);\n var p = require(15 /* core/properties */);\n var FixedTicker = function (_super) {\n tslib_1.__extends(FixedTicker, _super);\n function FixedTicker(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.min_interval = 0;\n _this.max_interval = 0;\n return _this;\n }\n FixedTicker.initClass = function () {\n this.prototype.type = 'FixedTicker';\n this.define({\n ticks: [\n p.Array,\n []\n ]\n });\n };\n FixedTicker.prototype.get_ticks_no_defaults = function (_data_low, _data_high, _cross_loc, _desired_n_ticks) {\n return {\n major: this.ticks,\n minor: []\n };\n };\n // XXX: whatever, because FixedTicker needs to fullfill the interface somehow\n FixedTicker.prototype.get_interval = function (_data_low, _data_high, _desired_n_ticks) {\n return 0;\n };\n return FixedTicker;\n }(continuous_ticker_1.ContinuousTicker);\n exports.FixedTicker = FixedTicker;\n FixedTicker.initClass(); \n}","/*models/tickers/index*/\nfunction _(require, module, exports) {\n var adaptive_ticker_1 = require(190 /* ./adaptive_ticker */);\n exports.AdaptiveTicker = adaptive_ticker_1.AdaptiveTicker;\n var basic_ticker_1 = require(191 /* ./basic_ticker */);\n exports.BasicTicker = basic_ticker_1.BasicTicker;\n var categorical_ticker_1 = require(192 /* ./categorical_ticker */);\n exports.CategoricalTicker = categorical_ticker_1.CategoricalTicker;\n var composite_ticker_1 = require(193 /* ./composite_ticker */);\n exports.CompositeTicker = composite_ticker_1.CompositeTicker;\n var continuous_ticker_1 = require(194 /* ./continuous_ticker */);\n exports.ContinuousTicker = continuous_ticker_1.ContinuousTicker;\n var datetime_ticker_1 = require(195 /* ./datetime_ticker */);\n exports.DatetimeTicker = datetime_ticker_1.DatetimeTicker;\n var days_ticker_1 = require(196 /* ./days_ticker */);\n exports.DaysTicker = days_ticker_1.DaysTicker;\n var fixed_ticker_1 = require(197 /* ./fixed_ticker */);\n exports.FixedTicker = fixed_ticker_1.FixedTicker;\n var log_ticker_1 = require(199 /* ./log_ticker */);\n exports.LogTicker = log_ticker_1.LogTicker;\n var mercator_ticker_1 = require(200 /* ./mercator_ticker */);\n exports.MercatorTicker = mercator_ticker_1.MercatorTicker;\n var months_ticker_1 = require(201 /* ./months_ticker */);\n exports.MonthsTicker = months_ticker_1.MonthsTicker;\n var single_interval_ticker_1 = require(202 /* ./single_interval_ticker */);\n exports.SingleIntervalTicker = single_interval_ticker_1.SingleIntervalTicker;\n var ticker_1 = require(203 /* ./ticker */);\n exports.Ticker = ticker_1.Ticker;\n var years_ticker_1 = require(205 /* ./years_ticker */);\n exports.YearsTicker = years_ticker_1.YearsTicker; \n}","/*models/tickers/log_ticker*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var adaptive_ticker_1 = require(190 /* ./adaptive_ticker */);\n var array_1 = require(21 /* core/util/array */);\n var LogTicker = function (_super) {\n tslib_1.__extends(LogTicker, _super);\n function LogTicker(attrs) {\n return _super.call(this, attrs) || this;\n }\n LogTicker.initClass = function () {\n this.prototype.type = 'LogTicker';\n this.override({\n mantissas: [\n 1,\n 5\n ]\n });\n };\n LogTicker.prototype.get_ticks_no_defaults = function (data_low, data_high, _cross_loc, desired_n_ticks) {\n var num_minor_ticks = this.num_minor_ticks;\n var minor_ticks = [];\n var base = this.base;\n var log_low = Math.log(data_low) / Math.log(base);\n var log_high = Math.log(data_high) / Math.log(base);\n var log_interval = log_high - log_low;\n var ticks;\n if (!isFinite(log_interval)) {\n ticks = [];\n } else if (log_interval < 2) {\n // treat as linear ticker\n var interval_1 = this.get_interval(data_low, data_high, desired_n_ticks);\n var start_factor = Math.floor(data_low / interval_1);\n var end_factor = Math.ceil(data_high / interval_1);\n ticks = array_1.range(start_factor, end_factor + 1).filter(function (factor) {\n return factor != 0;\n }).map(function (factor) {\n return factor * interval_1;\n }).filter(function (tick) {\n return data_low <= tick && tick <= data_high;\n });\n if (num_minor_ticks > 0 && ticks.length > 0) {\n var minor_interval_1 = interval_1 / num_minor_ticks;\n var minor_offsets = array_1.range(0, num_minor_ticks).map(function (i) {\n return i * minor_interval_1;\n });\n for (var _i = 0, _a = minor_offsets.slice(1); _i < _a.length; _i++) {\n var x = _a[_i];\n minor_ticks.push(ticks[0] - x);\n }\n for (var _b = 0, ticks_1 = ticks; _b < ticks_1.length; _b++) {\n var tick = ticks_1[_b];\n for (var _c = 0, minor_offsets_1 = minor_offsets; _c < minor_offsets_1.length; _c++) {\n var x = minor_offsets_1[_c];\n minor_ticks.push(tick + x);\n }\n }\n }\n } else {\n var startlog = Math.ceil(log_low * 0.999999);\n var endlog = Math.floor(log_high * 1.000001);\n var interval = Math.ceil((endlog - startlog) / 9);\n ticks = array_1.range(startlog, endlog + 1, interval).map(function (i) {\n return Math.pow(base, i);\n }).filter(function (tick) {\n return data_low <= tick && tick <= data_high;\n });\n if (num_minor_ticks > 0 && ticks.length > 0) {\n var minor_interval_2 = Math.pow(base, interval) / num_minor_ticks;\n var minor_offsets = array_1.range(1, num_minor_ticks + 1).map(function (i) {\n return i * minor_interval_2;\n });\n for (var _d = 0, minor_offsets_2 = minor_offsets; _d < minor_offsets_2.length; _d++) {\n var x = minor_offsets_2[_d];\n minor_ticks.push(ticks[0] / x);\n }\n minor_ticks.push(ticks[0]);\n for (var _e = 0, ticks_2 = ticks; _e < ticks_2.length; _e++) {\n var tick = ticks_2[_e];\n for (var _f = 0, minor_offsets_3 = minor_offsets; _f < minor_offsets_3.length; _f++) {\n var x = minor_offsets_3[_f];\n minor_ticks.push(tick * x);\n }\n }\n }\n }\n return {\n major: ticks,\n minor: minor_ticks\n };\n };\n return LogTicker;\n }(adaptive_ticker_1.AdaptiveTicker);\n exports.LogTicker = LogTicker;\n LogTicker.initClass(); \n}","/*models/tickers/mercator_ticker*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var basic_ticker_1 = require(191 /* ./basic_ticker */);\n var p = require(15 /* core/properties */);\n var projections_1 = require(33 /* core/util/projections */);\n var MercatorTicker = function (_super) {\n tslib_1.__extends(MercatorTicker, _super);\n function MercatorTicker(attrs) {\n return _super.call(this, attrs) || this;\n }\n MercatorTicker.initClass = function () {\n this.prototype.type = 'MercatorTicker';\n this.define({ dimension: [p.LatLon] });\n };\n MercatorTicker.prototype.get_ticks_no_defaults = function (data_low, data_high, cross_loc, desired_n_ticks) {\n if (this.dimension == null) {\n throw new Error('MercatorTicker.dimension not configured');\n }\n _a = projections_1.clip_mercator(data_low, data_high, this.dimension), data_low = _a[0], data_high = _a[1];\n var proj_low, proj_high, proj_cross_loc;\n if (this.dimension === 'lon') {\n _b = projections_1.wgs84_mercator.inverse([\n data_low,\n cross_loc\n ]), proj_low = _b[0], proj_cross_loc = _b[1];\n _c = projections_1.wgs84_mercator.inverse([\n data_high,\n cross_loc\n ]), proj_high = _c[0], proj_cross_loc = _c[1];\n } else {\n _d = projections_1.wgs84_mercator.inverse([\n cross_loc,\n data_low\n ]), proj_cross_loc = _d[0], proj_low = _d[1];\n _e = projections_1.wgs84_mercator.inverse([\n cross_loc,\n data_high\n ]), proj_cross_loc = _e[0], proj_high = _e[1];\n }\n var proj_ticks = _super.prototype.get_ticks_no_defaults.call(this, proj_low, proj_high, cross_loc, desired_n_ticks);\n var major = [];\n var minor = [];\n if (this.dimension === 'lon') {\n for (var _i = 0, _f = proj_ticks.major; _i < _f.length; _i++) {\n var tick = _f[_i];\n if (projections_1.in_bounds(tick, 'lon')) {\n var lon = projections_1.wgs84_mercator.forward([\n tick,\n proj_cross_loc\n ])[0];\n major.push(lon);\n }\n }\n for (var _g = 0, _h = proj_ticks.minor; _g < _h.length; _g++) {\n var tick = _h[_g];\n if (projections_1.in_bounds(tick, 'lon')) {\n var lon = projections_1.wgs84_mercator.forward([\n tick,\n proj_cross_loc\n ])[0];\n minor.push(lon);\n }\n }\n } else {\n for (var _j = 0, _k = proj_ticks.major; _j < _k.length; _j++) {\n var tick = _k[_j];\n if (projections_1.in_bounds(tick, 'lat')) {\n var _l = projections_1.wgs84_mercator.forward([\n proj_cross_loc,\n tick\n ]), lat = _l[1];\n major.push(lat);\n }\n }\n for (var _m = 0, _o = proj_ticks.minor; _m < _o.length; _m++) {\n var tick = _o[_m];\n if (projections_1.in_bounds(tick, 'lat')) {\n var _p = projections_1.wgs84_mercator.forward([\n proj_cross_loc,\n tick\n ]), lat = _p[1];\n minor.push(lat);\n }\n }\n }\n return {\n major: major,\n minor: minor\n };\n var _a, _b, _c, _d, _e;\n };\n return MercatorTicker;\n }(basic_ticker_1.BasicTicker);\n exports.MercatorTicker = MercatorTicker;\n MercatorTicker.initClass(); \n}","/*models/tickers/months_ticker*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var single_interval_ticker_1 = require(202 /* ./single_interval_ticker */);\n var util_1 = require(204 /* ./util */);\n var p = require(15 /* core/properties */);\n var array_1 = require(21 /* core/util/array */);\n // Given a start and end time in millis, returns the shortest array of\n // consecutive years (as Dates) that surrounds both times.\n function date_range_by_year(start_time, end_time) {\n var start_date = util_1.last_year_no_later_than(new Date(start_time));\n var end_date = util_1.last_year_no_later_than(new Date(end_time));\n end_date.setUTCFullYear(end_date.getUTCFullYear() + 1);\n var dates = [];\n var date = start_date;\n while (true) {\n dates.push(util_1.copy_date(date));\n date.setUTCFullYear(date.getUTCFullYear() + 1);\n if (date > end_date)\n break;\n }\n return dates;\n }\n var MonthsTicker = function (_super) {\n tslib_1.__extends(MonthsTicker, _super);\n function MonthsTicker(attrs) {\n return _super.call(this, attrs) || this;\n }\n MonthsTicker.initClass = function () {\n this.prototype.type = 'MonthsTicker';\n this.define({\n months: [\n p.Array,\n []\n ]\n });\n };\n MonthsTicker.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n var months = this.months;\n if (months.length > 1)\n this.interval = (months[1] - months[0]) * util_1.ONE_MONTH;\n else\n this.interval = 12 * util_1.ONE_MONTH;\n };\n MonthsTicker.prototype.get_ticks_no_defaults = function (data_low, data_high, _cross_loc, _desired_n_ticks) {\n var year_dates = date_range_by_year(data_low, data_high);\n var months = this.months;\n var months_of_year = function (year_date) {\n return months.map(function (month) {\n var month_date = util_1.copy_date(year_date);\n month_date.setUTCMonth(month);\n return month_date;\n });\n };\n var month_dates = array_1.concat(year_dates.map(months_of_year));\n var all_ticks = month_dates.map(function (month_date) {\n return month_date.getTime();\n });\n var ticks_in_range = all_ticks.filter(function (tick) {\n return data_low <= tick && tick <= data_high;\n });\n return {\n major: ticks_in_range,\n minor: []\n };\n };\n return MonthsTicker;\n }(single_interval_ticker_1.SingleIntervalTicker);\n exports.MonthsTicker = MonthsTicker;\n MonthsTicker.initClass(); \n}","/*models/tickers/single_interval_ticker*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var continuous_ticker_1 = require(194 /* ./continuous_ticker */);\n var p = require(15 /* core/properties */);\n var SingleIntervalTicker = function (_super) {\n tslib_1.__extends(SingleIntervalTicker, _super);\n function SingleIntervalTicker(attrs) {\n return _super.call(this, attrs) || this;\n }\n SingleIntervalTicker.initClass = function () {\n this.prototype.type = 'SingleIntervalTicker';\n this.define({ interval: [p.Number] });\n };\n SingleIntervalTicker.prototype.get_interval = function (_data_low, _data_high, _n_desired_ticks) {\n return this.interval;\n };\n Object.defineProperty(SingleIntervalTicker.prototype, 'min_interval', {\n get: function () {\n return this.interval;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(SingleIntervalTicker.prototype, 'max_interval', {\n get: function () {\n return this.interval;\n },\n enumerable: true,\n configurable: true\n });\n return SingleIntervalTicker;\n }(continuous_ticker_1.ContinuousTicker);\n exports.SingleIntervalTicker = SingleIntervalTicker;\n SingleIntervalTicker.initClass(); \n}","/*models/tickers/ticker*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var model_1 = require(53 /* ../../model */);\n var Ticker = function (_super) {\n tslib_1.__extends(Ticker, _super);\n function Ticker(attrs) {\n return _super.call(this, attrs) || this;\n }\n Ticker.initClass = function () {\n this.prototype.type = 'Ticker';\n };\n return Ticker;\n }(model_1.Model);\n exports.Ticker = Ticker;\n Ticker.initClass(); \n}","/*models/tickers/util*/\nfunction _(require, module, exports) {\n // Some time constants, in milliseconds.\n exports.ONE_MILLI = 1;\n exports.ONE_SECOND = 1000;\n exports.ONE_MINUTE = 60 * exports.ONE_SECOND;\n exports.ONE_HOUR = 60 * exports.ONE_MINUTE;\n exports.ONE_DAY = 24 * exports.ONE_HOUR;\n exports.ONE_MONTH = 30 * exports.ONE_DAY;\n // An approximation, obviously.\n exports.ONE_YEAR = 365 * exports.ONE_DAY;\n // ---------------------------------------------------------------------------\n // Date/time utility functions\n // ---------------------------------------------------------------------------\n // Makes a copy of a date object.\n function copy_date(date) {\n return new Date(date.getTime());\n }\n exports.copy_date = copy_date;\n // Rounds a date down to the month.\n function last_month_no_later_than(date) {\n var new_date = copy_date(date);\n new_date.setUTCDate(1);\n new_date.setUTCHours(0);\n new_date.setUTCMinutes(0);\n new_date.setUTCSeconds(0);\n new_date.setUTCMilliseconds(0);\n return new_date;\n }\n exports.last_month_no_later_than = last_month_no_later_than;\n // Rounds a date down to the year.\n function last_year_no_later_than(date) {\n var new_date = last_month_no_later_than(date);\n new_date.setUTCMonth(0);\n return new_date;\n }\n exports.last_year_no_later_than = last_year_no_later_than; \n}","/*models/tickers/years_ticker*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var basic_ticker_1 = require(191 /* ./basic_ticker */);\n var single_interval_ticker_1 = require(202 /* ./single_interval_ticker */);\n var util_1 = require(204 /* ./util */);\n var YearsTicker = function (_super) {\n tslib_1.__extends(YearsTicker, _super);\n function YearsTicker(attrs) {\n return _super.call(this, attrs) || this;\n }\n YearsTicker.initClass = function () {\n this.prototype.type = 'YearsTicker';\n };\n YearsTicker.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n this.interval = util_1.ONE_YEAR;\n this.basic_ticker = new basic_ticker_1.BasicTicker({ num_minor_ticks: 0 });\n };\n YearsTicker.prototype.get_ticks_no_defaults = function (data_low, data_high, cross_loc, desired_n_ticks) {\n var start_year = util_1.last_year_no_later_than(new Date(data_low)).getUTCFullYear();\n var end_year = util_1.last_year_no_later_than(new Date(data_high)).getUTCFullYear();\n var years = this.basic_ticker.get_ticks_no_defaults(start_year, end_year, cross_loc, desired_n_ticks).major;\n var all_ticks = years.map(function (year) {\n return Date.UTC(year, 0, 1);\n });\n var ticks_in_range = all_ticks.filter(function (tick) {\n return data_low <= tick && tick <= data_high;\n });\n return {\n major: ticks_in_range,\n minor: []\n };\n };\n return YearsTicker;\n }(single_interval_ticker_1.SingleIntervalTicker);\n exports.YearsTicker = YearsTicker;\n YearsTicker.initClass(); \n}","/*models/tiles/bbox_tile_source*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var mercator_tile_source_1 = require(209 /* ./mercator_tile_source */);\n var p = require(15 /* core/properties */);\n var BBoxTileSource = function (_super) {\n tslib_1.__extends(BBoxTileSource, _super);\n function BBoxTileSource(attrs) {\n return _super.call(this, attrs) || this;\n }\n BBoxTileSource.initClass = function () {\n this.prototype.type = 'BBoxTileSource';\n this.define({\n use_latlon: [\n p.Bool,\n false\n ]\n });\n };\n BBoxTileSource.prototype.get_image_url = function (x, y, z) {\n var image_url = this.string_lookup_replace(this.url, this.extra_url_vars);\n var xmax, xmin, ymax, ymin;\n if (this.use_latlon)\n _a = this.get_tile_geographic_bounds(x, y, z), xmin = _a[0], ymin = _a[1], xmax = _a[2], ymax = _a[3];\n else\n _b = this.get_tile_meter_bounds(x, y, z), xmin = _b[0], ymin = _b[1], xmax = _b[2], ymax = _b[3];\n return image_url.replace('{XMIN}', xmin.toString()).replace('{YMIN}', ymin.toString()).replace('{XMAX}', xmax.toString()).replace('{YMAX}', ymax.toString());\n var _a, _b;\n };\n return BBoxTileSource;\n }(mercator_tile_source_1.MercatorTileSource);\n exports.BBoxTileSource = BBoxTileSource;\n BBoxTileSource.initClass(); \n}","/*models/tiles/image_pool*/\nfunction _(require, module, exports) {\n var types_1 = require(44 /* core/util/types */);\n var ImagePool = function () {\n function ImagePool() {\n this.images = [];\n }\n ImagePool.prototype.pop = function () {\n var img = this.images.pop();\n return img != null ? img : new Image();\n };\n ImagePool.prototype.push = function (img) {\n if (this.images.length > 50)\n return;\n if (types_1.isArray(img))\n (_a = this.images).push.apply(_a, img);\n else\n this.images.push(img);\n var _a;\n };\n return ImagePool;\n }();\n exports.ImagePool = ImagePool; \n}","/*models/tiles/index*/\nfunction _(require, module, exports) {\n var bbox_tile_source_1 = require(206 /* ./bbox_tile_source */);\n exports.BBoxTileSource = bbox_tile_source_1.BBoxTileSource;\n var mercator_tile_source_1 = require(209 /* ./mercator_tile_source */);\n exports.MercatorTileSource = mercator_tile_source_1.MercatorTileSource;\n var quadkey_tile_source_1 = require(210 /* ./quadkey_tile_source */);\n exports.QUADKEYTileSource = quadkey_tile_source_1.QUADKEYTileSource;\n var tile_renderer_1 = require(211 /* ./tile_renderer */);\n exports.TileRenderer = tile_renderer_1.TileRenderer;\n var tile_source_1 = require(212 /* ./tile_source */);\n exports.TileSource = tile_source_1.TileSource;\n var tms_tile_source_1 = require(214 /* ./tms_tile_source */);\n exports.TMSTileSource = tms_tile_source_1.TMSTileSource;\n var wmts_tile_source_1 = require(215 /* ./wmts_tile_source */);\n exports.WMTSTileSource = wmts_tile_source_1.WMTSTileSource; \n}","/*models/tiles/mercator_tile_source*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var tile_source_1 = require(212 /* ./tile_source */);\n var p = require(15 /* core/properties */);\n var array_1 = require(21 /* core/util/array */);\n var tile_utils_1 = require(213 /* ./tile_utils */);\n var MercatorTileSource = function (_super) {\n tslib_1.__extends(MercatorTileSource, _super);\n function MercatorTileSource(attrs) {\n return _super.call(this, attrs) || this;\n }\n MercatorTileSource.initClass = function () {\n this.prototype.type = 'MercatorTileSource';\n this.define({\n snap_to_zoom: [\n p.Bool,\n false\n ],\n wrap_around: [\n p.Bool,\n true\n ]\n });\n this.override({\n x_origin_offset: 20037508.34,\n y_origin_offset: 20037508.34,\n initial_resolution: 156543.03392804097\n });\n };\n MercatorTileSource.prototype.initialize = function () {\n var _this = this;\n _super.prototype.initialize.call(this);\n this._resolutions = array_1.range(this.min_zoom, this.max_zoom + 1).map(function (z) {\n return _this.get_resolution(z);\n });\n };\n MercatorTileSource.prototype._computed_initial_resolution = function () {\n if (this.initial_resolution != null)\n return this.initial_resolution;\n else {\n // TODO testing 2015-11-17, if this codepath is used it seems\n // to use 100% cpu and wedge Chrome\n return 2 * Math.PI * 6378137 / this.tile_size;\n }\n };\n MercatorTileSource.prototype.is_valid_tile = function (x, y, z) {\n if (!this.wrap_around) {\n if (x < 0 || x >= Math.pow(2, z))\n return false;\n }\n if (y < 0 || y >= Math.pow(2, z))\n return false;\n return true;\n };\n MercatorTileSource.prototype.parent_by_tile_xyz = function (x, y, z) {\n var quadkey = this.tile_xyz_to_quadkey(x, y, z);\n var parent_quadkey = quadkey.substring(0, quadkey.length - 1);\n return this.quadkey_to_tile_xyz(parent_quadkey);\n };\n MercatorTileSource.prototype.get_resolution = function (level) {\n return this._computed_initial_resolution() / Math.pow(2, level);\n };\n MercatorTileSource.prototype.get_resolution_by_extent = function (extent, height, width) {\n var x_rs = (extent[2] - extent[0]) / width;\n var y_rs = (extent[3] - extent[1]) / height;\n return [\n x_rs,\n y_rs\n ];\n };\n MercatorTileSource.prototype.get_level_by_extent = function (extent, height, width) {\n var x_rs = (extent[2] - extent[0]) / width;\n var y_rs = (extent[3] - extent[1]) / height;\n var resolution = Math.max(x_rs, y_rs);\n var i = 0;\n for (var _i = 0, _a = this._resolutions; _i < _a.length; _i++) {\n var r = _a[_i];\n if (resolution > r) {\n if (i == 0)\n return 0;\n if (i > 0)\n return i - 1;\n }\n i += 1;\n }\n // otherwise return the highest available resolution\n return i - 1;\n };\n MercatorTileSource.prototype.get_closest_level_by_extent = function (extent, height, width) {\n var x_rs = (extent[2] - extent[0]) / width;\n var y_rs = (extent[3] - extent[1]) / height;\n var resolution = Math.max(x_rs, y_rs);\n var closest = this._resolutions.reduce(function (previous, current) {\n if (Math.abs(current - resolution) < Math.abs(previous - resolution)) {\n return current;\n }\n return previous;\n });\n return this._resolutions.indexOf(closest);\n };\n MercatorTileSource.prototype.snap_to_zoom_level = function (extent, height, width, level) {\n var xmin = extent[0], ymin = extent[1], xmax = extent[2], ymax = extent[3];\n var desired_res = this._resolutions[level];\n var desired_x_delta = width * desired_res;\n var desired_y_delta = height * desired_res;\n if (!this.snap_to_zoom) {\n var xscale = (xmax - xmin) / desired_x_delta;\n var yscale = (ymax - ymin) / desired_y_delta;\n if (xscale > yscale) {\n desired_x_delta = xmax - xmin;\n desired_y_delta = desired_y_delta * xscale;\n } else {\n desired_x_delta = desired_x_delta * yscale;\n desired_y_delta = ymax - ymin;\n }\n }\n var x_adjust = (desired_x_delta - (xmax - xmin)) / 2;\n var y_adjust = (desired_y_delta - (ymax - ymin)) / 2;\n return [\n xmin - x_adjust,\n ymin - y_adjust,\n xmax + x_adjust,\n ymax + y_adjust\n ];\n };\n MercatorTileSource.prototype.tms_to_wmts = function (x, y, z) {\n 'Note this works both ways';\n return [\n x,\n Math.pow(2, z) - 1 - y,\n z\n ];\n };\n MercatorTileSource.prototype.wmts_to_tms = function (x, y, z) {\n 'Note this works both ways';\n return [\n x,\n Math.pow(2, z) - 1 - y,\n z\n ];\n };\n MercatorTileSource.prototype.pixels_to_meters = function (px, py, level) {\n var res = this.get_resolution(level);\n var mx = px * res - this.x_origin_offset;\n var my = py * res - this.y_origin_offset;\n return [\n mx,\n my\n ];\n };\n MercatorTileSource.prototype.meters_to_pixels = function (mx, my, level) {\n var res = this.get_resolution(level);\n var px = (mx + this.x_origin_offset) / res;\n var py = (my + this.y_origin_offset) / res;\n return [\n px,\n py\n ];\n };\n MercatorTileSource.prototype.pixels_to_tile = function (px, py) {\n var tx = Math.ceil(px / this.tile_size);\n tx = tx === 0 ? tx : tx - 1;\n var ty = Math.max(Math.ceil(py / this.tile_size) - 1, 0);\n return [\n tx,\n ty\n ];\n };\n MercatorTileSource.prototype.pixels_to_raster = function (px, py, level) {\n var mapSize = this.tile_size << level;\n return [\n px,\n mapSize - py\n ];\n };\n MercatorTileSource.prototype.meters_to_tile = function (mx, my, level) {\n var _a = this.meters_to_pixels(mx, my, level), px = _a[0], py = _a[1];\n return this.pixels_to_tile(px, py);\n };\n MercatorTileSource.prototype.get_tile_meter_bounds = function (tx, ty, level) {\n // expects tms styles coordinates (bottom-left origin)\n var _a = this.pixels_to_meters(tx * this.tile_size, ty * this.tile_size, level), xmin = _a[0], ymin = _a[1];\n var _b = this.pixels_to_meters((tx + 1) * this.tile_size, (ty + 1) * this.tile_size, level), xmax = _b[0], ymax = _b[1];\n return [\n xmin,\n ymin,\n xmax,\n ymax\n ];\n };\n MercatorTileSource.prototype.get_tile_geographic_bounds = function (tx, ty, level) {\n var bounds = this.get_tile_meter_bounds(tx, ty, level);\n var _a = tile_utils_1.meters_extent_to_geographic(bounds), minLon = _a[0], minLat = _a[1], maxLon = _a[2], maxLat = _a[3];\n return [\n minLon,\n minLat,\n maxLon,\n maxLat\n ];\n };\n MercatorTileSource.prototype.get_tiles_by_extent = function (extent, level, tile_border) {\n if (tile_border === void 0) {\n tile_border = 1;\n }\n // unpack extent and convert to tile coordinates\n var xmin = extent[0], ymin = extent[1], xmax = extent[2], ymax = extent[3];\n var _a = this.meters_to_tile(xmin, ymin, level), txmin = _a[0], tymin = _a[1];\n var _b = this.meters_to_tile(xmax, ymax, level), txmax = _b[0], tymax = _b[1];\n // add tiles which border\n txmin -= tile_border;\n tymin -= tile_border;\n txmax += tile_border;\n tymax += tile_border;\n var tiles = [];\n for (var ty = tymax; ty >= tymin; ty--) {\n for (var tx = txmin; tx <= txmax; tx++) {\n if (this.is_valid_tile(tx, ty, level))\n tiles.push([\n tx,\n ty,\n level,\n this.get_tile_meter_bounds(tx, ty, level)\n ]);\n }\n }\n this.sort_tiles_from_center(tiles, [\n txmin,\n tymin,\n txmax,\n tymax\n ]);\n return tiles;\n };\n MercatorTileSource.prototype.quadkey_to_tile_xyz = function (quadKey) {\n /**\n * Computes tile x, y and z values based on quadKey.\n */\n var tileX = 0;\n var tileY = 0;\n var tileZ = quadKey.length;\n for (var i = tileZ; i > 0; i--) {\n var value = quadKey.charAt(tileZ - i);\n var mask = 1 << i - 1;\n switch (value) {\n case '0':\n continue;\n case '1':\n tileX |= mask;\n break;\n case '2':\n tileY |= mask;\n break;\n case '3':\n tileX |= mask;\n tileY |= mask;\n break;\n default:\n throw new TypeError('Invalid Quadkey: ' + quadKey);\n }\n }\n return [\n tileX,\n tileY,\n tileZ\n ];\n };\n MercatorTileSource.prototype.tile_xyz_to_quadkey = function (x, y, z) {\n /*\n * Computes quadkey value based on tile x, y and z values.\n */\n var quadkey = '';\n for (var i = z; i > 0; i--) {\n var mask = 1 << i - 1;\n var digit = 0;\n if ((x & mask) !== 0) {\n digit += 1;\n }\n if ((y & mask) !== 0) {\n digit += 2;\n }\n quadkey += digit.toString();\n }\n return quadkey;\n };\n MercatorTileSource.prototype.children_by_tile_xyz = function (x, y, z) {\n var quadkey = this.tile_xyz_to_quadkey(x, y, z);\n var child_tile_xyz = [];\n for (var i = 0; i <= 3; i++) {\n var _a = this.quadkey_to_tile_xyz(quadkey + i.toString()), x_1 = _a[0], y_1 = _a[1], z_1 = _a[2];\n var b = this.get_tile_meter_bounds(x_1, y_1, z_1);\n child_tile_xyz.push([\n x_1,\n y_1,\n z_1,\n b\n ]);\n }\n return child_tile_xyz;\n };\n MercatorTileSource.prototype.get_closest_parent_by_tile_xyz = function (x, y, z) {\n var world_x = this.calculate_world_x_by_tile_xyz(x, y, z);\n _a = this.normalize_xyz(x, y, z), x = _a[0], y = _a[1], z = _a[2];\n var quadkey = this.tile_xyz_to_quadkey(x, y, z);\n while (quadkey.length > 0) {\n quadkey = quadkey.substring(0, quadkey.length - 1);\n _b = this.quadkey_to_tile_xyz(quadkey), x = _b[0], y = _b[1], z = _b[2];\n _c = this.denormalize_xyz(x, y, z, world_x), x = _c[0], y = _c[1], z = _c[2];\n if (this.tile_xyz_to_key(x, y, z) in this.tiles)\n return [\n x,\n y,\n z\n ];\n }\n return [\n 0,\n 0,\n 0\n ];\n var _a, _b, _c;\n };\n MercatorTileSource.prototype.normalize_xyz = function (x, y, z) {\n if (this.wrap_around) {\n var tile_count = Math.pow(2, z);\n return [\n (x % tile_count + tile_count) % tile_count,\n y,\n z\n ];\n } else {\n return [\n x,\n y,\n z\n ];\n }\n };\n MercatorTileSource.prototype.denormalize_xyz = function (x, y, z, world_x) {\n return [\n x + world_x * Math.pow(2, z),\n y,\n z\n ];\n };\n MercatorTileSource.prototype.denormalize_meters = function (meters_x, meters_y, _level, world_x) {\n return [\n meters_x + world_x * 2 * Math.PI * 6378137,\n meters_y\n ];\n };\n MercatorTileSource.prototype.calculate_world_x_by_tile_xyz = function (x, _y, z) {\n return Math.floor(x / Math.pow(2, z));\n };\n return MercatorTileSource;\n }(tile_source_1.TileSource);\n exports.MercatorTileSource = MercatorTileSource;\n MercatorTileSource.initClass(); \n}","/*models/tiles/quadkey_tile_source*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var mercator_tile_source_1 = require(209 /* ./mercator_tile_source */);\n var QUADKEYTileSource = function (_super) {\n tslib_1.__extends(QUADKEYTileSource, _super);\n function QUADKEYTileSource(attrs) {\n return _super.call(this, attrs) || this;\n }\n QUADKEYTileSource.initClass = function () {\n this.prototype.type = 'QUADKEYTileSource';\n };\n QUADKEYTileSource.prototype.get_image_url = function (x, y, z) {\n var image_url = this.string_lookup_replace(this.url, this.extra_url_vars);\n var _a = this.tms_to_wmts(x, y, z), wx = _a[0], wy = _a[1], wz = _a[2];\n var quadKey = this.tile_xyz_to_quadkey(wx, wy, wz);\n return image_url.replace('{Q}', quadKey);\n };\n return QUADKEYTileSource;\n }(mercator_tile_source_1.MercatorTileSource);\n exports.QUADKEYTileSource = QUADKEYTileSource;\n QUADKEYTileSource.initClass(); \n}","/*models/tiles/tile_renderer*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var image_pool_1 = require(207 /* ./image_pool */);\n var wmts_tile_source_1 = require(215 /* ./wmts_tile_source */);\n var renderer_1 = require(173 /* ../renderers/renderer */);\n var dom_1 = require(5 /* core/dom */);\n var p = require(15 /* core/properties */);\n var array_1 = require(21 /* core/util/array */);\n var types_1 = require(44 /* core/util/types */);\n var TileRendererView = function (_super) {\n tslib_1.__extends(TileRendererView, _super);\n function TileRendererView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n TileRendererView.prototype.initialize = function (options) {\n this.attributionEl = null;\n this._tiles = [];\n _super.prototype.initialize.call(this, options);\n };\n TileRendererView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.model.change, function () {\n return _this.request_render();\n });\n };\n TileRendererView.prototype.get_extent = function () {\n return [\n this.x_range.start,\n this.y_range.start,\n this.x_range.end,\n this.y_range.end\n ];\n };\n Object.defineProperty(TileRendererView.prototype, 'map_plot', {\n get: function () {\n return this.plot_model.plot;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(TileRendererView.prototype, 'map_canvas', {\n get: function () {\n return this.plot_view.canvas_view.ctx;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(TileRendererView.prototype, 'map_frame', {\n get: function () {\n return this.plot_model.frame;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(TileRendererView.prototype, 'x_range', {\n get: function () {\n return this.map_plot.x_range;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(TileRendererView.prototype, 'y_range', {\n get: function () {\n return this.map_plot.y_range;\n },\n enumerable: true,\n configurable: true\n });\n TileRendererView.prototype._set_data = function () {\n this.pool = new image_pool_1.ImagePool();\n this.extent = this.get_extent();\n this._last_height = undefined;\n this._last_width = undefined;\n };\n TileRendererView.prototype._add_attribution = function () {\n var attribution = this.model.tile_source.attribution;\n if (types_1.isString(attribution) && attribution.length > 0) {\n if (this.attributionEl == null) {\n var right = this.plot_model.canvas._right.value - this.plot_model.frame._right.value;\n var bottom = this.plot_model.canvas._bottom.value - this.plot_model.frame._bottom.value;\n var max_width = this.map_frame._width.value;\n this.attributionEl = dom_1.div({\n class: 'bk-tile-attribution',\n style: {\n position: 'absolute',\n bottom: bottom + 'px',\n right: right + 'px',\n 'max-width': max_width + 'px',\n padding: '2px',\n 'background-color': 'rgba(255,255,255,0.8)',\n 'font-size': '9pt',\n 'font-family': 'sans-serif'\n }\n });\n var overlays = this.plot_view.canvas_view.events_el;\n overlays.appendChild(this.attributionEl);\n }\n this.attributionEl.innerHTML = attribution;\n }\n };\n TileRendererView.prototype._map_data = function () {\n this.initial_extent = this.get_extent();\n var zoom_level = this.model.tile_source.get_level_by_extent(this.initial_extent, this.map_frame._height.value, this.map_frame._width.value);\n var new_extent = this.model.tile_source.snap_to_zoom_level(this.initial_extent, this.map_frame._height.value, this.map_frame._width.value, zoom_level);\n this.x_range.start = new_extent[0];\n this.y_range.start = new_extent[1];\n this.x_range.end = new_extent[2];\n this.y_range.end = new_extent[3];\n this._add_attribution();\n };\n TileRendererView.prototype._on_tile_load = function (tile_data, e) {\n tile_data.img = e.target;\n tile_data.loaded = true;\n this.request_render();\n };\n TileRendererView.prototype._on_tile_cache_load = function (tile_data, e) {\n tile_data.img = e.target;\n tile_data.loaded = true;\n tile_data.finished = true;\n this.notify_finished();\n };\n TileRendererView.prototype._on_tile_error = function (tile_data) {\n tile_data.finished = true;\n };\n TileRendererView.prototype._create_tile = function (x, y, z, bounds, cache_only) {\n if (cache_only === void 0) {\n cache_only = false;\n }\n var _a = this.model.tile_source.normalize_xyz(x, y, z), nx = _a[0], ny = _a[1], nz = _a[2];\n var img = this.pool.pop();\n var tile = {\n img: img,\n tile_coords: [\n x,\n y,\n z\n ],\n normalized_coords: [\n nx,\n ny,\n nz\n ],\n quadkey: this.model.tile_source.tile_xyz_to_quadkey(x, y, z),\n cache_key: this.model.tile_source.tile_xyz_to_key(x, y, z),\n bounds: bounds,\n loaded: false,\n finished: false,\n x_coord: bounds[0],\n y_coord: bounds[3]\n };\n img.onload = cache_only ? this._on_tile_cache_load.bind(this, tile) : this._on_tile_load.bind(this, tile);\n img.onerror = this._on_tile_error.bind(this, tile);\n img.alt = '';\n img.src = this.model.tile_source.get_image_url(nx, ny, nz);\n this.model.tile_source.tiles[tile.cache_key] = tile;\n this._tiles.push(tile);\n };\n TileRendererView.prototype._enforce_aspect_ratio = function () {\n // brute force way of handling resize or sizing_mode event -------------------------------------------------------------\n if (this._last_height !== this.map_frame._height.value || this._last_width !== this.map_frame._width.value) {\n var extent = this.get_extent();\n var zoom_level = this.model.tile_source.get_level_by_extent(extent, this.map_frame._height.value, this.map_frame._width.value);\n var new_extent = this.model.tile_source.snap_to_zoom_level(extent, this.map_frame._height.value, this.map_frame._width.value, zoom_level);\n this.x_range.setv({\n start: new_extent[0],\n end: new_extent[2]\n });\n this.y_range.setv({\n start: new_extent[1],\n end: new_extent[3]\n });\n this.extent = new_extent;\n this._last_height = this.map_frame._height.value;\n this._last_width = this.map_frame._width.value;\n return true;\n }\n return false;\n };\n TileRendererView.prototype.has_finished = function () {\n if (!_super.prototype.has_finished.call(this)) {\n return false;\n }\n if (this._tiles.length === 0) {\n return false;\n }\n for (var _i = 0, _a = this._tiles; _i < _a.length; _i++) {\n var tile = _a[_i];\n if (!tile.finished) {\n return false;\n }\n }\n return true;\n };\n TileRendererView.prototype.render = function () {\n if (this.map_initialized == null) {\n this._set_data();\n this._map_data();\n this.map_initialized = true;\n }\n if (this._enforce_aspect_ratio()) {\n return;\n }\n this._update();\n if (this.prefetch_timer != null) {\n clearTimeout(this.prefetch_timer);\n }\n this.prefetch_timer = setTimeout(this._prefetch_tiles.bind(this), 500);\n if (this.has_finished()) {\n this.notify_finished();\n }\n };\n TileRendererView.prototype._draw_tile = function (tile_key) {\n var tile_obj = this.model.tile_source.tiles[tile_key];\n if (tile_obj != null) {\n var _a = this.plot_view.map_to_screen([tile_obj.bounds[0]], [tile_obj.bounds[3]]), sxmin = _a[0][0], symin = _a[1][0];\n // XXX: TS #20623\n var _b = this.plot_view.map_to_screen([tile_obj.bounds[2]], [tile_obj.bounds[1]]), sxmax = _b[0][0], symax = _b[1][0];\n //\n var sw = sxmax - sxmin;\n var sh = symax - symin;\n var sx = sxmin;\n var sy = symin;\n this.map_canvas.drawImage(tile_obj.img, sx, sy, sw, sh);\n tile_obj.finished = true;\n }\n };\n TileRendererView.prototype._set_rect = function () {\n var outline_width = this.plot_model.plot.properties.outline_line_width.value();\n var l = this.map_frame._left.value + outline_width / 2;\n var t = this.map_frame._top.value + outline_width / 2;\n var w = this.map_frame._width.value - outline_width;\n var h = this.map_frame._height.value - outline_width;\n this.map_canvas.rect(l, t, w, h);\n this.map_canvas.clip();\n };\n TileRendererView.prototype._render_tiles = function (tile_keys) {\n this.map_canvas.save();\n this._set_rect();\n this.map_canvas.globalAlpha = this.model.alpha;\n for (var _i = 0, tile_keys_1 = tile_keys; _i < tile_keys_1.length; _i++) {\n var tile_key = tile_keys_1[_i];\n this._draw_tile(tile_key);\n }\n this.map_canvas.restore();\n };\n TileRendererView.prototype._prefetch_tiles = function () {\n var tile_source = this.model.tile_source;\n var extent = this.get_extent();\n var h = this.map_frame._height.value;\n var w = this.map_frame._width.value;\n var zoom_level = this.model.tile_source.get_level_by_extent(extent, h, w);\n var tiles = this.model.tile_source.get_tiles_by_extent(extent, zoom_level);\n for (var t = 0, end = Math.min(10, tiles.length); t < end; t++) {\n var _a = tiles[t], x = _a[0], y = _a[1], z = _a[2];\n var children = this.model.tile_source.children_by_tile_xyz(x, y, z);\n for (var _i = 0, children_1 = children; _i < children_1.length; _i++) {\n var c = children_1[_i];\n var cx = c[0], cy = c[1], cz = c[2], cbounds = c[3];\n if (tile_source.tile_xyz_to_key(cx, cy, cz) in tile_source.tiles) {\n continue;\n } else {\n this._create_tile(cx, cy, cz, cbounds, true);\n }\n }\n }\n };\n TileRendererView.prototype._fetch_tiles = function (tiles) {\n for (var _i = 0, tiles_1 = tiles; _i < tiles_1.length; _i++) {\n var tile = tiles_1[_i];\n var x = tile[0], y = tile[1], z = tile[2], bounds = tile[3];\n this._create_tile(x, y, z, bounds);\n }\n };\n TileRendererView.prototype._update = function () {\n var _this = this;\n var tile_source = this.model.tile_source;\n var min_zoom = tile_source.min_zoom;\n var max_zoom = tile_source.max_zoom;\n var extent = this.get_extent();\n var zooming_out = this.extent[2] - this.extent[0] < extent[2] - extent[0];\n var h = this.map_frame._height.value;\n var w = this.map_frame._width.value;\n var zoom_level = tile_source.get_level_by_extent(extent, h, w);\n var snap_back = false;\n if (zoom_level < min_zoom) {\n extent = this.extent;\n zoom_level = min_zoom;\n snap_back = true;\n } else if (zoom_level > max_zoom) {\n extent = this.extent;\n zoom_level = max_zoom;\n snap_back = true;\n }\n if (snap_back) {\n this.x_range.setv({\n x_range: {\n start: extent[0],\n end: extent[2]\n }\n });\n this.y_range.setv({\n start: extent[1],\n end: extent[3]\n });\n this.extent = extent;\n }\n this.extent = extent;\n var tiles = tile_source.get_tiles_by_extent(extent, zoom_level);\n var need_load = [];\n var cached = [];\n var parents = [];\n var children = [];\n for (var _i = 0, tiles_2 = tiles; _i < tiles_2.length; _i++) {\n var t = tiles_2[_i];\n var x = t[0], y = t[1], z = t[2];\n var key = tile_source.tile_xyz_to_key(x, y, z);\n var tile = tile_source.tiles[key];\n if (tile != null && tile.loaded) {\n cached.push(key);\n } else {\n if (this.model.render_parents) {\n var _a = tile_source.get_closest_parent_by_tile_xyz(x, y, z), px = _a[0], py = _a[1], pz = _a[2];\n var parent_key = tile_source.tile_xyz_to_key(px, py, pz);\n var parent_tile = tile_source.tiles[parent_key];\n if (parent_tile != null && parent_tile.loaded && !array_1.includes(parents, parent_key)) {\n parents.push(parent_key);\n }\n if (zooming_out) {\n var child_tiles = tile_source.children_by_tile_xyz(x, y, z);\n for (var _b = 0, child_tiles_1 = child_tiles; _b < child_tiles_1.length; _b++) {\n var _c = child_tiles_1[_b], cx = _c[0], cy = _c[1], cz = _c[2];\n var child_key = tile_source.tile_xyz_to_key(cx, cy, cz);\n if (child_key in tile_source.tiles)\n children.push(child_key);\n }\n }\n }\n }\n if (tile == null)\n need_load.push(t);\n }\n // draw stand-in parents ----------\n this._render_tiles(parents);\n this._render_tiles(children);\n // draw cached ----------\n this._render_tiles(cached);\n // fetch missing -------\n if (this.render_timer != null) {\n clearTimeout(this.render_timer);\n }\n this.render_timer = setTimeout(function () {\n return _this._fetch_tiles(need_load);\n }, 65);\n };\n return TileRendererView;\n }(renderer_1.RendererView);\n exports.TileRendererView = TileRendererView;\n var TileRenderer = function (_super) {\n tslib_1.__extends(TileRenderer, _super);\n function TileRenderer(attrs) {\n return _super.call(this, attrs) || this;\n }\n TileRenderer.initClass = function () {\n this.prototype.type = 'TileRenderer';\n this.prototype.default_view = TileRendererView;\n this.define({\n alpha: [\n p.Number,\n 1\n ],\n x_range_name: [\n p.String,\n 'default'\n ],\n y_range_name: [\n p.String,\n 'default'\n ],\n tile_source: [\n p.Instance,\n function () {\n return new wmts_tile_source_1.WMTSTileSource();\n }\n ],\n render_parents: [\n p.Bool,\n true\n ]\n });\n this.override({ level: 'underlay' });\n };\n return TileRenderer;\n }(renderer_1.Renderer);\n exports.TileRenderer = TileRenderer;\n TileRenderer.initClass(); \n}","/*models/tiles/tile_source*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var model_1 = require(53 /* ../../model */);\n var image_pool_1 = require(207 /* ./image_pool */);\n var p = require(15 /* core/properties */);\n var TileSource = function (_super) {\n tslib_1.__extends(TileSource, _super);\n function TileSource(attrs) {\n return _super.call(this, attrs) || this;\n }\n TileSource.initClass = function () {\n this.prototype.type = 'TileSource';\n this.define({\n url: [\n p.String,\n ''\n ],\n tile_size: [\n p.Number,\n 256\n ],\n max_zoom: [\n p.Number,\n 30\n ],\n min_zoom: [\n p.Number,\n 0\n ],\n extra_url_vars: [\n p.Any,\n {}\n ],\n attribution: [\n p.String,\n ''\n ],\n x_origin_offset: [p.Number],\n y_origin_offset: [p.Number],\n initial_resolution: [p.Number]\n });\n };\n TileSource.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n this.tiles = {};\n this.pool = new image_pool_1.ImagePool();\n this._normalize_case();\n };\n TileSource.prototype.string_lookup_replace = function (str, lookup) {\n var result_str = str;\n for (var key in lookup) {\n var value = lookup[key];\n result_str = result_str.replace('{' + key + '}', value);\n }\n return result_str;\n };\n TileSource.prototype._normalize_case = function () {\n /*\n * Note: should probably be refactored into subclasses.\n */\n var url = this.url.replace('{x}', '{X}').replace('{y}', '{Y}').replace('{z}', '{Z}').replace('{q}', '{Q}').replace('{xmin}', '{XMIN}').replace('{ymin}', '{YMIN}').replace('{xmax}', '{XMAX}').replace('{ymax}', '{YMAX}');\n this.url = url;\n };\n TileSource.prototype.tile_xyz_to_key = function (x, y, z) {\n return x + ':' + y + ':' + z;\n };\n TileSource.prototype.key_to_tile_xyz = function (key) {\n var _a = key.split(':').map(function (c) {\n return parseInt(c);\n }), x = _a[0], y = _a[1], z = _a[2];\n return [\n x,\n y,\n z\n ];\n };\n TileSource.prototype.sort_tiles_from_center = function (tiles, tile_extent) {\n var txmin = tile_extent[0], tymin = tile_extent[1], txmax = tile_extent[2], tymax = tile_extent[3];\n var center_x = (txmax - txmin) / 2 + txmin;\n var center_y = (tymax - tymin) / 2 + tymin;\n tiles.sort(function (a, b) {\n var a_distance = Math.sqrt(Math.pow(center_x - a[0], 2) + Math.pow(center_y - a[1], 2));\n var b_distance = Math.sqrt(Math.pow(center_x - b[0], 2) + Math.pow(center_y - b[1], 2));\n return a_distance - b_distance;\n });\n };\n TileSource.prototype.get_image_url = function (x, y, z) {\n var image_url = this.string_lookup_replace(this.url, this.extra_url_vars);\n return image_url.replace('{X}', x.toString()).replace('{Y}', y.toString()).replace('{Z}', z.toString());\n };\n return TileSource;\n }(model_1.Model);\n exports.TileSource = TileSource;\n TileSource.initClass(); \n}","/*models/tiles/tile_utils*/\nfunction _(require, module, exports) {\n var projections_1 = require(33 /* core/util/projections */);\n function geographic_to_meters(xLon, yLat) {\n return projections_1.wgs84_mercator.forward([\n xLon,\n yLat\n ]);\n }\n exports.geographic_to_meters = geographic_to_meters;\n function meters_to_geographic(mx, my) {\n return projections_1.wgs84_mercator.inverse([\n mx,\n my\n ]);\n }\n exports.meters_to_geographic = meters_to_geographic;\n function geographic_extent_to_meters(extent) {\n var g_xmin = extent[0], g_ymin = extent[1], g_xmax = extent[2], g_ymax = extent[3];\n var _a = geographic_to_meters(g_xmin, g_ymin), m_xmin = _a[0], m_ymin = _a[1];\n var _b = geographic_to_meters(g_xmax, g_ymax), m_xmax = _b[0], m_ymax = _b[1];\n return [\n m_xmin,\n m_ymin,\n m_xmax,\n m_ymax\n ];\n }\n exports.geographic_extent_to_meters = geographic_extent_to_meters;\n function meters_extent_to_geographic(extent) {\n var m_xmin = extent[0], m_ymin = extent[1], m_xmax = extent[2], m_ymax = extent[3];\n var _a = meters_to_geographic(m_xmin, m_ymin), g_xmin = _a[0], g_ymin = _a[1];\n var _b = meters_to_geographic(m_xmax, m_ymax), g_xmax = _b[0], g_ymax = _b[1];\n return [\n g_xmin,\n g_ymin,\n g_xmax,\n g_ymax\n ];\n }\n exports.meters_extent_to_geographic = meters_extent_to_geographic; \n}","/*models/tiles/tms_tile_source*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var mercator_tile_source_1 = require(209 /* ./mercator_tile_source */);\n var TMSTileSource = function (_super) {\n tslib_1.__extends(TMSTileSource, _super);\n function TMSTileSource(attrs) {\n return _super.call(this, attrs) || this;\n }\n TMSTileSource.initClass = function () {\n this.prototype.type = 'TMSTileSource';\n };\n TMSTileSource.prototype.get_image_url = function (x, y, z) {\n var image_url = this.string_lookup_replace(this.url, this.extra_url_vars);\n return image_url.replace('{X}', x.toString()).replace('{Y}', y.toString()).replace('{Z}', z.toString());\n };\n return TMSTileSource;\n }(mercator_tile_source_1.MercatorTileSource);\n exports.TMSTileSource = TMSTileSource;\n TMSTileSource.initClass(); \n}","/*models/tiles/wmts_tile_source*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var mercator_tile_source_1 = require(209 /* ./mercator_tile_source */);\n var WMTSTileSource = function (_super) {\n tslib_1.__extends(WMTSTileSource, _super);\n function WMTSTileSource(attrs) {\n return _super.call(this, attrs) || this;\n }\n WMTSTileSource.initClass = function () {\n this.prototype.type = 'WMTSTileSource';\n };\n WMTSTileSource.prototype.get_image_url = function (x, y, z) {\n var image_url = this.string_lookup_replace(this.url, this.extra_url_vars);\n var _a = this.tms_to_wmts(x, y, z), wx = _a[0], wy = _a[1], wz = _a[2];\n return image_url.replace('{X}', wx.toString()).replace('{Y}', wy.toString()).replace('{Z}', wz.toString());\n };\n return WMTSTileSource;\n }(mercator_tile_source_1.MercatorTileSource);\n exports.WMTSTileSource = WMTSTileSource;\n WMTSTileSource.initClass(); \n}","/*models/tools/actions/action_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var button_tool_1 = require(224 /* ../button_tool */);\n var signaling_1 = require(19 /* core/signaling */);\n var ActionToolButtonView = function (_super) {\n tslib_1.__extends(ActionToolButtonView, _super);\n function ActionToolButtonView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n ActionToolButtonView.prototype._clicked = function () {\n this.model.do.emit();\n };\n return ActionToolButtonView;\n }(button_tool_1.ButtonToolButtonView);\n exports.ActionToolButtonView = ActionToolButtonView;\n var ActionToolView = function (_super) {\n tslib_1.__extends(ActionToolView, _super);\n function ActionToolView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n ActionToolView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.model.do, function () {\n return _this.doit();\n });\n };\n return ActionToolView;\n }(button_tool_1.ButtonToolView);\n exports.ActionToolView = ActionToolView;\n var ActionTool = function (_super) {\n tslib_1.__extends(ActionTool, _super);\n function ActionTool(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.button_view = ActionToolButtonView;\n _this.do = new signaling_1.Signal0(_this, 'do');\n return _this;\n }\n ActionTool.initClass = function () {\n this.prototype.type = 'ActionTool';\n };\n return ActionTool;\n }(button_tool_1.ButtonTool);\n exports.ActionTool = ActionTool;\n ActionTool.initClass(); \n}","/*models/tools/actions/help_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var action_tool_1 = require(216 /* ./action_tool */);\n var p = require(15 /* core/properties */);\n var HelpToolView = function (_super) {\n tslib_1.__extends(HelpToolView, _super);\n function HelpToolView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n HelpToolView.prototype.doit = function () {\n window.open(this.model.redirect);\n };\n return HelpToolView;\n }(action_tool_1.ActionToolView);\n exports.HelpToolView = HelpToolView;\n var HelpTool = function (_super) {\n tslib_1.__extends(HelpTool, _super);\n function HelpTool(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.tool_name = 'Help';\n _this.icon = 'bk-tool-icon-help';\n return _this;\n }\n HelpTool.initClass = function () {\n this.prototype.type = 'HelpTool';\n this.prototype.default_view = HelpToolView;\n this.define({\n help_tooltip: [\n p.String,\n 'Click the question mark to learn more about Bokeh plot tools.'\n ],\n redirect: [\n p.String,\n 'https://bokeh.pydata.org/en/latest/docs/user_guide/tools.html#built-in-tools'\n ]\n });\n };\n Object.defineProperty(HelpTool.prototype, 'tooltip', {\n get: function () {\n return this.help_tooltip;\n },\n enumerable: true,\n configurable: true\n });\n return HelpTool;\n }(action_tool_1.ActionTool);\n exports.HelpTool = HelpTool;\n HelpTool.initClass(); \n}","/*models/tools/actions/redo_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var action_tool_1 = require(216 /* ./action_tool */);\n var RedoToolView = function (_super) {\n tslib_1.__extends(RedoToolView, _super);\n function RedoToolView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n RedoToolView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.plot_view.state_changed, function () {\n return _this.model.disabled = !_this.plot_view.can_redo();\n });\n };\n RedoToolView.prototype.doit = function () {\n this.plot_view.redo();\n };\n return RedoToolView;\n }(action_tool_1.ActionToolView);\n exports.RedoToolView = RedoToolView;\n var RedoTool = function (_super) {\n tslib_1.__extends(RedoTool, _super);\n function RedoTool(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.tool_name = 'Redo';\n _this.icon = 'bk-tool-icon-redo';\n return _this;\n }\n RedoTool.initClass = function () {\n this.prototype.type = 'RedoTool';\n this.prototype.default_view = RedoToolView;\n this.override({ disabled: true });\n };\n return RedoTool;\n }(action_tool_1.ActionTool);\n exports.RedoTool = RedoTool;\n RedoTool.initClass(); \n}","/*models/tools/actions/reset_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var action_tool_1 = require(216 /* ./action_tool */);\n var ResetToolView = function (_super) {\n tslib_1.__extends(ResetToolView, _super);\n function ResetToolView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n ResetToolView.prototype.doit = function () {\n this.plot_view.reset();\n };\n return ResetToolView;\n }(action_tool_1.ActionToolView);\n exports.ResetToolView = ResetToolView;\n var ResetTool = function (_super) {\n tslib_1.__extends(ResetTool, _super);\n function ResetTool(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.tool_name = 'Reset';\n _this.icon = 'bk-tool-icon-reset';\n return _this;\n }\n ResetTool.initClass = function () {\n this.prototype.type = 'ResetTool';\n this.prototype.default_view = ResetToolView;\n };\n return ResetTool;\n }(action_tool_1.ActionTool);\n exports.ResetTool = ResetTool;\n ResetTool.initClass(); \n}","/*models/tools/actions/save_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var action_tool_1 = require(216 /* ./action_tool */);\n var SaveToolView = function (_super) {\n tslib_1.__extends(SaveToolView, _super);\n function SaveToolView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n SaveToolView.prototype.doit = function () {\n this.plot_view.save('bokeh_plot');\n };\n return SaveToolView;\n }(action_tool_1.ActionToolView);\n exports.SaveToolView = SaveToolView;\n var SaveTool = function (_super) {\n tslib_1.__extends(SaveTool, _super);\n function SaveTool(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.tool_name = 'Save';\n _this.icon = 'bk-tool-icon-save';\n return _this;\n }\n SaveTool.initClass = function () {\n this.prototype.type = 'SaveTool';\n this.prototype.default_view = SaveToolView;\n };\n return SaveTool;\n }(action_tool_1.ActionTool);\n exports.SaveTool = SaveTool;\n SaveTool.initClass(); \n}","/*models/tools/actions/undo_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var action_tool_1 = require(216 /* ./action_tool */);\n var UndoToolView = function (_super) {\n tslib_1.__extends(UndoToolView, _super);\n function UndoToolView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n UndoToolView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.plot_view.state_changed, function () {\n return _this.model.disabled = !_this.plot_view.can_undo();\n });\n };\n UndoToolView.prototype.doit = function () {\n this.plot_view.undo();\n };\n return UndoToolView;\n }(action_tool_1.ActionToolView);\n exports.UndoToolView = UndoToolView;\n var UndoTool = function (_super) {\n tslib_1.__extends(UndoTool, _super);\n function UndoTool(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.tool_name = 'Undo';\n _this.icon = 'bk-tool-icon-undo';\n return _this;\n }\n UndoTool.initClass = function () {\n this.prototype.type = 'UndoTool';\n this.prototype.default_view = UndoToolView;\n this.override({ disabled: true });\n };\n return UndoTool;\n }(action_tool_1.ActionTool);\n exports.UndoTool = UndoTool;\n UndoTool.initClass(); \n}","/*models/tools/actions/zoom_in_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var action_tool_1 = require(216 /* ./action_tool */);\n var zoom_1 = require(46 /* core/util/zoom */);\n var p = require(15 /* core/properties */);\n var ZoomInToolView = function (_super) {\n tslib_1.__extends(ZoomInToolView, _super);\n function ZoomInToolView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n ZoomInToolView.prototype.doit = function () {\n var frame = this.plot_model.frame;\n var dims = this.model.dimensions;\n // restrict to axis configured in tool's dimensions property\n var h_axis = dims == 'width' || dims == 'both';\n var v_axis = dims == 'height' || dims == 'both';\n var zoom_info = zoom_1.scale_range(frame, this.model.factor, h_axis, v_axis);\n this.plot_view.push_state('zoom_out', { range: zoom_info });\n this.plot_view.update_range(zoom_info, false, true);\n if (this.model.document)\n this.model.document.interactive_start(this.plot_model.plot);\n };\n return ZoomInToolView;\n }(action_tool_1.ActionToolView);\n exports.ZoomInToolView = ZoomInToolView;\n var ZoomInTool = function (_super) {\n tslib_1.__extends(ZoomInTool, _super);\n function ZoomInTool(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.tool_name = 'Zoom In';\n _this.icon = 'bk-tool-icon-zoom-in';\n return _this;\n }\n ZoomInTool.initClass = function () {\n this.prototype.type = 'ZoomInTool';\n this.prototype.default_view = ZoomInToolView;\n this.define({\n factor: [\n p.Percent,\n 0.1\n ],\n dimensions: [\n p.Dimensions,\n 'both'\n ]\n });\n };\n Object.defineProperty(ZoomInTool.prototype, 'tooltip', {\n get: function () {\n return this._get_dim_tooltip(this.tool_name, this.dimensions);\n },\n enumerable: true,\n configurable: true\n });\n return ZoomInTool;\n }(action_tool_1.ActionTool);\n exports.ZoomInTool = ZoomInTool;\n ZoomInTool.initClass(); \n}","/*models/tools/actions/zoom_out_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var action_tool_1 = require(216 /* ./action_tool */);\n var zoom_1 = require(46 /* core/util/zoom */);\n var p = require(15 /* core/properties */);\n var ZoomOutToolView = function (_super) {\n tslib_1.__extends(ZoomOutToolView, _super);\n function ZoomOutToolView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n ZoomOutToolView.prototype.doit = function () {\n var frame = this.plot_model.frame;\n var dims = this.model.dimensions;\n // restrict to axis configured in tool's dimensions property\n var h_axis = dims == 'width' || dims == 'both';\n var v_axis = dims == 'height' || dims == 'both';\n // zooming out requires a negative factor to scale_range\n var zoom_info = zoom_1.scale_range(frame, -this.model.factor, h_axis, v_axis);\n this.plot_view.push_state('zoom_out', { range: zoom_info });\n this.plot_view.update_range(zoom_info, false, true);\n if (this.model.document)\n this.model.document.interactive_start(this.plot_model.plot);\n };\n return ZoomOutToolView;\n }(action_tool_1.ActionToolView);\n exports.ZoomOutToolView = ZoomOutToolView;\n var ZoomOutTool = function (_super) {\n tslib_1.__extends(ZoomOutTool, _super);\n function ZoomOutTool(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.tool_name = 'Zoom Out';\n _this.icon = 'bk-tool-icon-zoom-out';\n return _this;\n }\n ZoomOutTool.initClass = function () {\n this.prototype.type = 'ZoomOutTool';\n this.prototype.default_view = ZoomOutToolView;\n this.define({\n factor: [\n p.Percent,\n 0.1\n ],\n dimensions: [\n p.Dimensions,\n 'both'\n ]\n });\n };\n Object.defineProperty(ZoomOutTool.prototype, 'tooltip', {\n get: function () {\n return this._get_dim_tooltip(this.tool_name, this.dimensions);\n },\n enumerable: true,\n configurable: true\n });\n return ZoomOutTool;\n }(action_tool_1.ActionTool);\n exports.ZoomOutTool = ZoomOutTool;\n ZoomOutTool.initClass(); \n}","/*models/tools/button_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var dom_view_1 = require(6 /* core/dom_view */);\n var tool_1 = require(246 /* ./tool */);\n var dom_1 = require(5 /* core/dom */);\n var p = require(15 /* core/properties */);\n var ButtonToolButtonView = function (_super) {\n tslib_1.__extends(ButtonToolButtonView, _super);\n function ButtonToolButtonView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n ButtonToolButtonView.prototype.initialize = function (options) {\n var _this = this;\n _super.prototype.initialize.call(this, options);\n this.connect(this.model.change, function () {\n return _this.render();\n });\n this.el.addEventListener('click', function () {\n return _this._clicked();\n });\n this.render();\n };\n ButtonToolButtonView.prototype.css_classes = function () {\n return _super.prototype.css_classes.call(this).concat('bk-toolbar-button');\n };\n ButtonToolButtonView.prototype.render = function () {\n dom_1.empty(this.el);\n this.el.classList.add(this.model.icon);\n this.el.title = this.model.tooltip;\n };\n return ButtonToolButtonView;\n }(dom_view_1.DOMView);\n exports.ButtonToolButtonView = ButtonToolButtonView;\n var ButtonToolView = function (_super) {\n tslib_1.__extends(ButtonToolView, _super);\n function ButtonToolView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return ButtonToolView;\n }(tool_1.ToolView);\n exports.ButtonToolView = ButtonToolView;\n var ButtonTool = function (_super) {\n tslib_1.__extends(ButtonTool, _super);\n function ButtonTool(attrs) {\n return _super.call(this, attrs) || this;\n }\n ButtonTool.initClass = function () {\n this.prototype.type = 'ButtonTool';\n this.internal({\n disabled: [\n p.Boolean,\n false\n ]\n });\n };\n Object.defineProperty(ButtonTool.prototype, 'tooltip', {\n get: function () {\n return this.tool_name;\n },\n enumerable: true,\n configurable: true\n });\n return ButtonTool;\n }(tool_1.Tool);\n exports.ButtonTool = ButtonTool;\n ButtonTool.initClass(); \n}","/*models/tools/edit/box_edit_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var dom_1 = require(5 /* core/dom */);\n var p = require(15 /* core/properties */);\n var edit_tool_1 = require(226 /* ./edit_tool */);\n var BoxEditToolView = function (_super) {\n tslib_1.__extends(BoxEditToolView, _super);\n function BoxEditToolView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n BoxEditToolView.prototype._tap = function (ev) {\n if (this._draw_basepoint != null || this._basepoint != null) {\n return;\n }\n var append = ev.shiftKey;\n this._select_event(ev, append, this.model.renderers);\n };\n BoxEditToolView.prototype._keyup = function (ev) {\n if (!this.model.active || !this._mouse_in_frame) {\n return;\n }\n for (var _i = 0, _a = this.model.renderers; _i < _a.length; _i++) {\n var renderer = _a[_i];\n if (ev.keyCode === dom_1.Keys.Backspace) {\n this._delete_selected(renderer);\n } else if (ev.keyCode == dom_1.Keys.Esc) {\n // Type properly once selection_manager is typed\n var cds = renderer.data_source;\n cds.selection_manager.clear();\n }\n }\n };\n BoxEditToolView.prototype._set_extent = function (_a, _b, append, emit) {\n var sx0 = _a[0], sx1 = _a[1];\n var sy0 = _b[0], sy1 = _b[1];\n if (emit === void 0) {\n emit = false;\n }\n var renderer = this.model.renderers[0];\n var frame = this.plot_model.frame;\n // Type once dataspecs are typed\n var glyph = renderer.glyph;\n var ds = renderer.data_source;\n var xscale = frame.xscales[renderer.x_range_name];\n var yscale = frame.yscales[renderer.y_range_name];\n var _c = xscale.r_invert(sx0, sx1), x0 = _c[0], x1 = _c[1];\n var _d = yscale.r_invert(sy0, sy1), y0 = _d[0], y1 = _d[1];\n var _e = [\n (x0 + x1) / 2,\n (y0 + y1) / 2\n ], x = _e[0], y = _e[1];\n var _f = [\n x1 - x0,\n y1 - y0\n ], w = _f[0], h = _f[1];\n var _g = [\n glyph.x.field,\n glyph.y.field\n ], xkey = _g[0], ykey = _g[1];\n var _h = [\n glyph.width.field,\n glyph.height.field\n ], wkey = _h[0], hkey = _h[1];\n if (append) {\n if (xkey)\n ds.get_array(xkey).push(x);\n if (ykey)\n ds.get_array(ykey).push(y);\n if (wkey)\n ds.get_array(wkey).push(w);\n if (hkey)\n ds.get_array(hkey).push(h);\n this._pad_empty_columns(ds, [\n xkey,\n ykey,\n wkey,\n hkey\n ]);\n } else {\n var index = ds.data[xkey].length - 1;\n if (xkey)\n ds.data[xkey][index] = x;\n if (ykey)\n ds.data[ykey][index] = y;\n if (wkey)\n ds.data[wkey][index] = w;\n if (hkey)\n ds.data[hkey][index] = h;\n }\n ds.change.emit();\n if (emit) {\n ds.properties.data.change.emit();\n }\n };\n BoxEditToolView.prototype._update_box = function (ev, append, emit) {\n if (append === void 0) {\n append = false;\n }\n if (emit === void 0) {\n emit = false;\n }\n if (this._draw_basepoint == null) {\n return;\n }\n var curpoint = [\n ev.sx,\n ev.sy\n ];\n var frame = this.plot_model.frame;\n var dims = this.model.dimensions;\n var limits = this.model._get_dim_limits(this._draw_basepoint, curpoint, frame, dims);\n if (limits != null) {\n var sxlim = limits[0], sylim = limits[1];\n this._set_extent(sxlim, sylim, append, emit);\n }\n };\n BoxEditToolView.prototype._doubletap = function (ev) {\n if (this._draw_basepoint != null) {\n this._update_box(ev, false, true);\n this._draw_basepoint = null;\n for (var _i = 0, _a = this.model.renderers; _i < _a.length; _i++) {\n var renderer = _a[_i];\n renderer.data_source.selected.indices = [];\n renderer.data_source.properties.data.change.emit();\n }\n } else {\n this._draw_basepoint = [\n ev.sx,\n ev.sy\n ];\n this._select_event(ev, true, this.model.renderers);\n this._update_box(ev, true, false);\n }\n };\n BoxEditToolView.prototype._move = function (ev) {\n this._update_box(ev, false, false);\n };\n BoxEditToolView.prototype._pan_start = function (ev) {\n if (ev.shiftKey) {\n if (this._draw_basepoint != null) {\n return;\n }\n this._draw_basepoint = [\n ev.sx,\n ev.sy\n ];\n this._update_box(ev, true, false);\n } else {\n if (this._basepoint != null) {\n return;\n }\n this._select_event(ev, true, this.model.renderers);\n this._basepoint = [\n ev.sx,\n ev.sy\n ];\n }\n };\n BoxEditToolView.prototype._pan = function (ev, append, emit) {\n if (append === void 0) {\n append = false;\n }\n if (emit === void 0) {\n emit = false;\n }\n if (ev.shiftKey) {\n if (this._draw_basepoint == null) {\n return;\n }\n this._update_box(ev, append, emit);\n } else {\n if (this._basepoint == null) {\n return;\n }\n this._drag_points(ev, this.model.renderers);\n }\n };\n BoxEditToolView.prototype._pan_end = function (ev) {\n this._pan(ev, false, true);\n if (ev.shiftKey) {\n this._draw_basepoint = null;\n } else {\n this._basepoint = null;\n }\n for (var _i = 0, _a = this.model.renderers; _i < _a.length; _i++) {\n var renderer = _a[_i];\n renderer.data_source.selected.indices = [];\n renderer.data_source.properties.data.change.emit();\n }\n };\n return BoxEditToolView;\n }(edit_tool_1.EditToolView);\n exports.BoxEditToolView = BoxEditToolView;\n var BoxEditTool = function (_super) {\n tslib_1.__extends(BoxEditTool, _super);\n function BoxEditTool(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.tool_name = 'Box Edit Tool';\n _this.icon = 'bk-tool-icon-box-edit';\n _this.event_type = [\n 'tap',\n 'pan',\n 'move'\n ];\n _this.default_order = 1;\n return _this;\n }\n BoxEditTool.initClass = function () {\n this.prototype.type = 'BoxEditTool';\n this.prototype.default_view = BoxEditToolView;\n this.define({\n dimensions: [\n p.Dimensions,\n 'both'\n ]\n });\n };\n return BoxEditTool;\n }(edit_tool_1.EditTool);\n exports.BoxEditTool = BoxEditTool;\n BoxEditTool.initClass(); \n}","/*models/tools/edit/edit_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var p = require(15 /* core/properties */);\n var array_1 = require(21 /* core/util/array */);\n var gesture_tool_1 = require(232 /* ../gestures/gesture_tool */);\n var EditToolView = function (_super) {\n tslib_1.__extends(EditToolView, _super);\n function EditToolView() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this._mouse_in_frame = true;\n return _this;\n }\n EditToolView.prototype._move_enter = function (_e) {\n this._mouse_in_frame = true;\n };\n EditToolView.prototype._move_exit = function (_e) {\n this._mouse_in_frame = false;\n };\n EditToolView.prototype._map_drag = function (sx, sy, renderer) {\n // Maps screen to data coordinates\n var frame = this.plot_model.frame;\n if (!frame.bbox.contains(sx, sy)) {\n return null;\n }\n var x = frame.xscales[renderer.x_range_name].invert(sx);\n var y = frame.yscales[renderer.y_range_name].invert(sy);\n return [\n x,\n y\n ];\n };\n EditToolView.prototype._delete_selected = function (renderer) {\n // Deletes all selected rows in the ColumnDataSource\n var cds = renderer.data_source;\n var indices = cds.selected.indices;\n indices.sort();\n for (var _i = 0, _a = cds.columns(); _i < _a.length; _i++) {\n var column = _a[_i];\n var values = cds.get_array(column);\n for (var index = 0; index < indices.length; index++) {\n var ind = indices[index];\n values.splice(ind - index, 1);\n }\n }\n cds.change.emit();\n cds.properties.data.change.emit();\n cds.selection_manager.clear();\n };\n EditToolView.prototype._drag_points = function (ev, renderers) {\n if (this._basepoint == null) {\n return;\n }\n ;\n var _a = this._basepoint, bx = _a[0], by = _a[1];\n for (var _i = 0, renderers_1 = renderers; _i < renderers_1.length; _i++) {\n var renderer = renderers_1[_i];\n var basepoint = this._map_drag(bx, by, renderer);\n var point = this._map_drag(ev.sx, ev.sy, renderer);\n if (point == null || basepoint == null) {\n continue;\n }\n var x = point[0], y = point[1];\n var px = basepoint[0], py = basepoint[1];\n var _b = [\n x - px,\n y - py\n ], dx = _b[0], dy = _b[1];\n // Type once dataspecs are typed\n var glyph = renderer.glyph;\n var ds = renderer.data_source;\n var _c = [\n glyph.x.field,\n glyph.y.field\n ], xkey = _c[0], ykey = _c[1];\n for (var _d = 0, _f = ds.selected.indices; _d < _f.length; _d++) {\n var index = _f[_d];\n if (xkey)\n ds.data[xkey][index] += dx;\n if (ykey)\n ds.data[ykey][index] += dy;\n }\n }\n for (var _g = 0, renderers_2 = renderers; _g < renderers_2.length; _g++) {\n var renderer = renderers_2[_g];\n renderer.data_source.change.emit();\n renderer.data_source.properties.data.change.emit();\n }\n this._basepoint = [\n ev.sx,\n ev.sy\n ];\n };\n EditToolView.prototype._pad_empty_columns = function (cds, coord_columns) {\n // Pad ColumnDataSource non-coordinate columns with empty_value\n for (var _i = 0, _a = cds.columns(); _i < _a.length; _i++) {\n var column = _a[_i];\n if (!array_1.includes(coord_columns, column))\n cds.get_array(column).push(this.model.empty_value);\n }\n };\n EditToolView.prototype._select_event = function (ev, append, renderers) {\n // Process selection event on the supplied renderers and return selected renderers\n var frame = this.plot_model.frame;\n var sx = ev.sx, sy = ev.sy;\n if (!frame.bbox.contains(sx, sy)) {\n return [];\n }\n var geometry = {\n type: 'point',\n sx: sx,\n sy: sy\n };\n var selected = [];\n for (var _i = 0, renderers_3 = renderers; _i < renderers_3.length; _i++) {\n var renderer = renderers_3[_i];\n var sm = renderer.get_selection_manager();\n var cds = renderer.data_source;\n var views = [this.plot_view.renderer_views[renderer.id]];\n var did_hit = sm.select(views, geometry, true, append);\n if (did_hit) {\n selected.push(renderer);\n }\n cds.properties.selected.change.emit();\n }\n return selected;\n };\n return EditToolView;\n }(gesture_tool_1.GestureToolView);\n exports.EditToolView = EditToolView;\n var EditTool = function (_super) {\n tslib_1.__extends(EditTool, _super);\n function EditTool(attrs) {\n return _super.call(this, attrs) || this;\n }\n EditTool.initClass = function () {\n this.prototype.type = 'EditTool';\n this.define({\n empty_value: [p.Any],\n renderers: [\n p.Array,\n []\n ]\n });\n };\n return EditTool;\n }(gesture_tool_1.GestureTool);\n exports.EditTool = EditTool;\n EditTool.initClass(); \n}","/*models/tools/edit/point_draw_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var dom_1 = require(5 /* core/dom */);\n var p = require(15 /* core/properties */);\n var edit_tool_1 = require(226 /* ./edit_tool */);\n var PointDrawToolView = function (_super) {\n tslib_1.__extends(PointDrawToolView, _super);\n function PointDrawToolView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n PointDrawToolView.prototype._tap = function (ev) {\n var append = ev.shiftKey;\n var renderers = this._select_event(ev, append, this.model.renderers);\n if (renderers.length || !this.model.add) {\n return;\n }\n var renderer = this.model.renderers[0];\n var point = this._map_drag(ev.sx, ev.sy, renderer);\n if (point == null) {\n return;\n }\n // Type once dataspecs are typed\n var glyph = renderer.glyph;\n var ds = renderer.data_source;\n var _a = [\n glyph.x.field,\n glyph.y.field\n ], xkey = _a[0], ykey = _a[1];\n var x = point[0], y = point[1];\n if (xkey)\n ds.get_array(xkey).push(x);\n if (ykey)\n ds.get_array(ykey).push(y);\n this._pad_empty_columns(ds, [\n xkey,\n ykey\n ]);\n ds.change.emit();\n ds.properties.data.change.emit();\n };\n PointDrawToolView.prototype._keyup = function (ev) {\n if (!this.model.active || !this._mouse_in_frame) {\n return;\n }\n for (var _i = 0, _a = this.model.renderers; _i < _a.length; _i++) {\n var renderer = _a[_i];\n if (ev.keyCode === dom_1.Keys.Backspace) {\n this._delete_selected(renderer);\n } else if (ev.keyCode == dom_1.Keys.Esc) {\n // Type once selection_manager is typed\n var cds = renderer.data_source;\n cds.selection_manager.clear();\n }\n }\n };\n PointDrawToolView.prototype._pan_start = function (ev) {\n if (!this.model.drag) {\n return;\n }\n this._select_event(ev, true, this.model.renderers);\n this._basepoint = [\n ev.sx,\n ev.sy\n ];\n };\n PointDrawToolView.prototype._pan = function (ev) {\n if (!this.model.drag || this._basepoint == null) {\n return;\n }\n this._drag_points(ev, this.model.renderers);\n };\n PointDrawToolView.prototype._pan_end = function (ev) {\n if (!this.model.drag) {\n return;\n }\n this._pan(ev);\n for (var _i = 0, _a = this.model.renderers; _i < _a.length; _i++) {\n var renderer = _a[_i];\n renderer.data_source.selected.indices = [];\n // This is only needed to call @_tell_document_about_change()\n renderer.data_source.data = renderer.data_source.data;\n renderer.data_source.properties.data.change.emit();\n }\n this._basepoint = null;\n };\n return PointDrawToolView;\n }(edit_tool_1.EditToolView);\n exports.PointDrawToolView = PointDrawToolView;\n var PointDrawTool = function (_super) {\n tslib_1.__extends(PointDrawTool, _super);\n function PointDrawTool(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.tool_name = 'Point Draw Tool';\n _this.icon = 'bk-tool-icon-point-draw';\n _this.event_type = [\n 'tap',\n 'pan',\n 'move'\n ];\n _this.default_order = 2;\n return _this;\n }\n PointDrawTool.initClass = function () {\n this.prototype.type = 'PointDrawTool';\n this.prototype.default_view = PointDrawToolView;\n this.define({\n add: [\n p.Bool,\n true\n ],\n drag: [\n p.Bool,\n true\n ]\n });\n };\n return PointDrawTool;\n }(edit_tool_1.EditTool);\n exports.PointDrawTool = PointDrawTool;\n PointDrawTool.initClass(); \n}","/*models/tools/edit/poly_draw_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var dom_1 = require(5 /* core/dom */);\n var p = require(15 /* core/properties */);\n var edit_tool_1 = require(226 /* ./edit_tool */);\n var PolyDrawToolView = function (_super) {\n tslib_1.__extends(PolyDrawToolView, _super);\n function PolyDrawToolView() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this._drawing = false;\n return _this;\n }\n PolyDrawToolView.prototype._tap = function (ev) {\n if (this._drawing) {\n this._draw(ev, 'add');\n this.model.renderers[0].data_source.properties.data.change.emit();\n } else {\n var append = ev.shiftKey;\n this._select_event(ev, append, this.model.renderers);\n }\n };\n PolyDrawToolView.prototype._draw = function (ev, mode) {\n var renderer = this.model.renderers[0];\n var point = this._map_drag(ev.sx, ev.sy, renderer);\n if (point == null) {\n return;\n }\n var x = point[0], y = point[1];\n var ds = renderer.data_source;\n var glyph = renderer.glyph;\n var _a = [\n glyph.xs.field,\n glyph.ys.field\n ], xkey = _a[0], ykey = _a[1];\n if (mode == 'new') {\n if (xkey)\n ds.get_array(xkey).push([\n x,\n x\n ]);\n if (ykey)\n ds.get_array(ykey).push([\n y,\n y\n ]);\n this._pad_empty_columns(ds, [\n xkey,\n ykey\n ]);\n } else if (mode == 'edit') {\n if (xkey) {\n var xs = ds.data[xkey][ds.data[xkey].length - 1];\n xs[xs.length - 1] = x;\n }\n if (ykey) {\n var ys = ds.data[ykey][ds.data[ykey].length - 1];\n ys[ys.length - 1] = y;\n }\n } else if (mode == 'add') {\n if (xkey) {\n var xidx = ds.data[xkey].length - 1;\n var xs = ds.get_array(xkey)[xidx];\n var nx = xs[xs.length - 1];\n xs[xs.length - 1] = x;\n xs.push(nx);\n }\n if (ykey) {\n var yidx = ds.data[ykey].length - 1;\n var ys = ds.get_array(ykey)[yidx];\n var ny = ys[ys.length - 1];\n ys[ys.length - 1] = y;\n ys.push(ny);\n }\n }\n ds.change.emit();\n };\n PolyDrawToolView.prototype._doubletap = function (ev) {\n if (!this.model.active) {\n return;\n }\n if (this._drawing) {\n this._drawing = false;\n this._draw(ev, 'edit');\n } else {\n this._drawing = true;\n this._draw(ev, 'new');\n }\n this.model.renderers[0].data_source.properties.data.change.emit();\n };\n PolyDrawToolView.prototype._move = function (ev) {\n if (this._drawing) {\n this._draw(ev, 'edit');\n }\n };\n PolyDrawToolView.prototype._remove = function () {\n var renderer = this.model.renderers[0];\n var ds = renderer.data_source;\n var glyph = renderer.glyph;\n var _a = [\n glyph.xs.field,\n glyph.ys.field\n ], xkey = _a[0], ykey = _a[1];\n if (xkey) {\n var xidx = ds.data[xkey].length - 1;\n var xs = ds.get_array(xkey)[xidx];\n xs.splice(xs.length - 1, 1);\n }\n if (ykey) {\n var yidx = ds.data[ykey].length - 1;\n var ys = ds.get_array(ykey)[yidx];\n ys.splice(ys.length - 1, 1);\n }\n ds.change.emit();\n ds.properties.data.change.emit();\n };\n PolyDrawToolView.prototype._keyup = function (ev) {\n if (!this.model.active || !this._mouse_in_frame) {\n return;\n }\n for (var _i = 0, _a = this.model.renderers; _i < _a.length; _i++) {\n var renderer = _a[_i];\n if (ev.keyCode === dom_1.Keys.Backspace) {\n this._delete_selected(renderer);\n } else if (ev.keyCode == dom_1.Keys.Esc) {\n // Type once selection_manager is typed\n if (this._drawing) {\n this._remove();\n this._drawing = false;\n }\n var cds = renderer.data_source;\n cds.selection_manager.clear();\n }\n }\n };\n PolyDrawToolView.prototype._pan_start = function (ev) {\n if (!this.model.drag) {\n return;\n }\n this._select_event(ev, true, this.model.renderers);\n this._basepoint = [\n ev.sx,\n ev.sy\n ];\n };\n PolyDrawToolView.prototype._pan = function (ev) {\n if (this._basepoint == null || !this.model.drag) {\n return;\n }\n var _a = this._basepoint, bx = _a[0], by = _a[1];\n // Process polygon/line dragging\n for (var _i = 0, _b = this.model.renderers; _i < _b.length; _i++) {\n var renderer = _b[_i];\n var basepoint = this._map_drag(bx, by, renderer);\n var point = this._map_drag(ev.sx, ev.sy, renderer);\n if (point == null || basepoint == null) {\n continue;\n }\n var ds = renderer.data_source;\n // Type once dataspecs are typed\n var glyph = renderer.glyph;\n var _c = [\n glyph.xs.field,\n glyph.ys.field\n ], xkey = _c[0], ykey = _c[1];\n if (!xkey && !ykey) {\n continue;\n }\n var x = point[0], y = point[1];\n var px = basepoint[0], py = basepoint[1];\n var _d = [\n x - px,\n y - py\n ], dx = _d[0], dy = _d[1];\n for (var _e = 0, _f = ds.selected.indices; _e < _f.length; _e++) {\n var index = _f[_e];\n var length_1 = void 0, xs = void 0, ys = void 0;\n if (xkey)\n xs = ds.data[xkey][index];\n if (ykey) {\n ys = ds.data[ykey][index];\n length_1 = ys.length;\n } else {\n length_1 = xs.length;\n }\n for (var i = 0; i < length_1; i++) {\n if (xs) {\n xs[i] += dx;\n }\n if (ys) {\n ys[i] += dy;\n }\n }\n }\n ds.change.emit();\n }\n this._basepoint = [\n ev.sx,\n ev.sy\n ];\n };\n PolyDrawToolView.prototype._pan_end = function (ev) {\n if (!this.model.drag) {\n return;\n }\n this._pan(ev);\n for (var _i = 0, _a = this.model.renderers; _i < _a.length; _i++) {\n var renderer = _a[_i];\n renderer.data_source.selected.indices = [];\n renderer.data_source.properties.data.change.emit();\n }\n this._basepoint = null;\n };\n PolyDrawToolView.prototype.deactivate = function () {\n if (this._drawing) {\n this._remove();\n this._drawing = false;\n }\n };\n return PolyDrawToolView;\n }(edit_tool_1.EditToolView);\n exports.PolyDrawToolView = PolyDrawToolView;\n var PolyDrawTool = function (_super) {\n tslib_1.__extends(PolyDrawTool, _super);\n function PolyDrawTool(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.tool_name = 'Polygon Draw Tool';\n _this.icon = 'bk-tool-icon-poly-draw';\n _this.event_type = [\n 'pan',\n 'tap',\n 'move'\n ];\n _this.default_order = 3;\n return _this;\n }\n PolyDrawTool.initClass = function () {\n this.prototype.type = 'PolyDrawTool';\n this.prototype.default_view = PolyDrawToolView;\n this.define({\n drag: [\n p.Bool,\n true\n ]\n });\n };\n return PolyDrawTool;\n }(edit_tool_1.EditTool);\n exports.PolyDrawTool = PolyDrawTool;\n PolyDrawTool.initClass(); \n}","/*models/tools/edit/poly_edit_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var dom_1 = require(5 /* core/dom */);\n var p = require(15 /* core/properties */);\n var edit_tool_1 = require(226 /* ./edit_tool */);\n var PolyEditToolView = function (_super) {\n tslib_1.__extends(PolyEditToolView, _super);\n function PolyEditToolView() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this._drawing = false;\n return _this;\n }\n PolyEditToolView.prototype._doubletap = function (ev) {\n if (!this.model.active) {\n return;\n }\n var point = this._map_drag(ev.sx, ev.sy, this.model.vertex_renderer);\n if (point == null) {\n return;\n }\n var x = point[0], y = point[1];\n // Perform hit testing\n var renderers = this._select_event(ev, false, this.model.renderers);\n var vertex_selected = this._select_event(ev, false, [this.model.vertex_renderer]);\n var point_ds = this.model.vertex_renderer.data_source;\n // Type once dataspecs are typed\n var point_glyph = this.model.vertex_renderer.glyph;\n var _a = [\n point_glyph.x.field,\n point_glyph.y.field\n ], pxkey = _a[0], pykey = _a[1];\n if (vertex_selected.length && this._selected_renderer != null) {\n // Insert a new point after the selected vertex and enter draw mode\n var index_1 = point_ds.selected.indices[0];\n if (this._drawing) {\n point_ds.selected.indices = [];\n if (pxkey)\n point_ds.data[pxkey][index_1] = x;\n if (pykey)\n point_ds.data[pykey][index_1] = y;\n this._drawing = false;\n this._selected_renderer.data_source.properties.data.change.emit();\n } else {\n point_ds.selected.indices = [index_1 + 1];\n if (pxkey)\n point_ds.get_array(pxkey).splice(index_1 + 1, 0, x);\n if (pykey)\n point_ds.get_array(pykey).splice(index_1 + 1, 0, y);\n this._drawing = true;\n }\n point_ds.change.emit();\n this._selected_renderer.data_source.change.emit();\n return;\n } else if (!renderers.length) {\n // If we did not hit an existing line, clear node CDS\n if (pxkey)\n point_ds.data[pxkey] = [];\n if (pykey)\n point_ds.data[pykey] = [];\n this._selected_renderer = null;\n this._drawing = false;\n point_ds.change.emit();\n return;\n }\n // Otherwise copy selected line array to vertex renderer CDS\n // (Note: can only edit one at a time)\n var renderer = renderers[0];\n // Type once dataspecs are typed\n var glyph = renderer.glyph;\n var ds = renderer.data_source;\n var index = ds.selected.indices[0];\n var _b = [\n glyph.xs.field,\n glyph.ys.field\n ], xkey = _b[0], ykey = _b[1];\n if (xkey) {\n var xs = ds.data[xkey][index];\n if (pxkey)\n point_ds.data[pxkey] = xs;\n } else\n point_glyph.x = { value: glyph.xs.value };\n if (ykey) {\n var ys = ds.data[ykey][index];\n if (pykey)\n point_ds.data[pykey] = ys;\n } else\n point_glyph.y = { value: glyph.ys.value };\n point_ds.selected.indices = [];\n this._selected_renderer = renderer;\n point_ds.change.emit();\n point_ds.properties.data.change.emit();\n };\n PolyEditToolView.prototype._move = function (ev) {\n if (this._drawing && this._selected_renderer != null) {\n var renderer = this.model.vertex_renderer;\n var point = this._map_drag(ev.sx, ev.sy, renderer);\n if (point == null) {\n return;\n }\n var x = point[0], y = point[1];\n var ds = renderer.data_source;\n var glyph = renderer.glyph;\n var _a = [\n glyph.x.field,\n glyph.y.field\n ], xkey = _a[0], ykey = _a[1];\n var index = ds.selected.indices[0];\n if (xkey)\n ds.data[xkey][index] = x;\n if (ykey)\n ds.data[ykey][index] = y;\n ds.change.emit();\n this._selected_renderer.data_source.change.emit();\n }\n };\n PolyEditToolView.prototype._tap = function (ev) {\n var renderer = this.model.vertex_renderer;\n var point = this._map_drag(ev.sx, ev.sy, renderer);\n if (point == null) {\n return;\n } else if (this._drawing && this._selected_renderer) {\n var x = point[0], y = point[1];\n var ds = renderer.data_source;\n // Type once dataspecs are typed\n var glyph = renderer.glyph;\n var _a = [\n glyph.x.field,\n glyph.y.field\n ], xkey = _a[0], ykey = _a[1];\n var index = ds.selected.indices[0];\n ds.selected.indices = [index + 1];\n if (xkey) {\n var xs = ds.get_array(xkey);\n var nx = xs[index];\n xs[index] = x;\n xs.splice(index + 1, 0, nx);\n }\n if (ykey) {\n var ys = ds.get_array(ykey);\n var ny = ys[index];\n ys[index] = y;\n ys.splice(index + 1, 0, ny);\n }\n ds.change.emit();\n var selected_ds = this._selected_renderer.data_source;\n selected_ds.change.emit();\n selected_ds.properties.data.change.emit();\n return;\n }\n var append = ev.shiftKey;\n this._select_event(ev, append, [renderer]);\n this._select_event(ev, append, this.model.renderers);\n };\n PolyEditToolView.prototype._remove_vertex = function (emit) {\n if (emit === void 0) {\n emit = true;\n }\n if (!this._drawing || !this._selected_renderer) {\n return;\n }\n var renderer = this.model.vertex_renderer;\n var ds = renderer.data_source;\n // Type once dataspecs are typed\n var glyph = renderer.glyph;\n var index = ds.selected.indices[0];\n var _a = [\n glyph.x.field,\n glyph.y.field\n ], xkey = _a[0], ykey = _a[1];\n if (xkey)\n ds.get_array(xkey).splice(index, 1);\n if (ykey)\n ds.get_array(ykey).splice(index, 1);\n if (emit) {\n ds.change.emit();\n ds.properties.data.change.emit();\n }\n };\n PolyEditToolView.prototype._pan_start = function (ev) {\n this._select_event(ev, true, [this.model.vertex_renderer]);\n this._basepoint = [\n ev.sx,\n ev.sy\n ];\n };\n PolyEditToolView.prototype._pan = function (ev) {\n if (this._basepoint == null) {\n return;\n }\n this._drag_points(ev, [this.model.vertex_renderer]);\n if (this._selected_renderer) {\n this._selected_renderer.data_source.change.emit();\n }\n };\n PolyEditToolView.prototype._pan_end = function (_e) {\n this.model.vertex_renderer.data_source.selected.indices = [];\n if (this._selected_renderer) {\n this._selected_renderer.data_source.properties.data.change.emit();\n }\n this._basepoint = null;\n };\n PolyEditToolView.prototype._keyup = function (ev) {\n if (!this.model.active || !this._mouse_in_frame) {\n return;\n }\n var renderers;\n if (this._selected_renderer) {\n renderers = [this.model.vertex_renderer];\n } else {\n renderers = this.model.renderers;\n }\n for (var _i = 0, renderers_1 = renderers; _i < renderers_1.length; _i++) {\n var renderer = renderers_1[_i];\n if (ev.keyCode === dom_1.Keys.Backspace) {\n this._delete_selected(renderer);\n } else if (ev.keyCode == dom_1.Keys.Esc) {\n // Type once selection_manager is typed\n if (this._drawing) {\n this._remove_vertex();\n this._drawing = false;\n }\n var cds = renderer.data_source;\n cds.selection_manager.clear();\n }\n }\n };\n PolyEditToolView.prototype.deactivate = function () {\n if (!this._selected_renderer) {\n return;\n } else if (this._drawing) {\n this._remove_vertex(false);\n this._drawing = false;\n }\n var renderer = this.model.vertex_renderer;\n // Type once selection manager and dataspecs are typed\n var ds = renderer.data_source;\n var glyph = renderer.glyph;\n var _a = [\n glyph.x.field,\n glyph.y.field\n ], xkey = _a[0], ykey = _a[1];\n if (xkey)\n ds.data[xkey] = [];\n if (ykey)\n ds.data[ykey] = [];\n ds.selection_manager.clear();\n ds.change.emit();\n this._selected_renderer.data_source.change.emit();\n ds.properties.data.change.emit();\n this._selected_renderer.data_source.properties.data.change.emit();\n this._selected_renderer = null;\n };\n return PolyEditToolView;\n }(edit_tool_1.EditToolView);\n exports.PolyEditToolView = PolyEditToolView;\n var PolyEditTool = function (_super) {\n tslib_1.__extends(PolyEditTool, _super);\n function PolyEditTool(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.tool_name = 'Poly Edit Tool';\n _this.icon = 'bk-tool-icon-poly-edit';\n _this.event_type = [\n 'tap',\n 'pan',\n 'move'\n ];\n _this.default_order = 4;\n return _this;\n }\n PolyEditTool.initClass = function () {\n this.prototype.type = 'PolyEditTool';\n this.prototype.default_view = PolyEditToolView;\n this.define({ vertex_renderer: [p.Instance] });\n };\n return PolyEditTool;\n }(edit_tool_1.EditTool);\n exports.PolyEditTool = PolyEditTool;\n PolyEditTool.initClass(); \n}","/*models/tools/gestures/box_select_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var select_tool_1 = require(236 /* ./select_tool */);\n var box_annotation_1 = require(58 /* ../../annotations/box_annotation */);\n var p = require(15 /* core/properties */);\n var object_1 = require(32 /* core/util/object */);\n var BoxSelectToolView = function (_super) {\n tslib_1.__extends(BoxSelectToolView, _super);\n function BoxSelectToolView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n BoxSelectToolView.prototype._compute_limits = function (curpoint) {\n var frame = this.plot_model.frame;\n var dims = this.model.dimensions;\n var base_point = this._base_point;\n if (this.model.origin == 'center') {\n var cx = base_point[0], cy = base_point[1];\n var dx = curpoint[0], dy = curpoint[1];\n base_point = [\n cx - (dx - cx),\n cy - (dy - cy)\n ];\n }\n return this.model._get_dim_limits(base_point, curpoint, frame, dims);\n };\n BoxSelectToolView.prototype._pan_start = function (ev) {\n var sx = ev.sx, sy = ev.sy;\n this._base_point = [\n sx,\n sy\n ];\n };\n BoxSelectToolView.prototype._pan = function (ev) {\n var sx = ev.sx, sy = ev.sy;\n var curpoint = [\n sx,\n sy\n ];\n var _a = this._compute_limits(curpoint), sxlim = _a[0], sylim = _a[1];\n this.model.overlay.update({\n left: sxlim[0],\n right: sxlim[1],\n top: sylim[0],\n bottom: sylim[1]\n });\n if (this.model.select_every_mousemove) {\n var append = ev.shiftKey;\n this._do_select(sxlim, sylim, false, append);\n }\n };\n BoxSelectToolView.prototype._pan_end = function (ev) {\n var sx = ev.sx, sy = ev.sy;\n var curpoint = [\n sx,\n sy\n ];\n var _a = this._compute_limits(curpoint), sxlim = _a[0], sylim = _a[1];\n var append = ev.shiftKey;\n this._do_select(sxlim, sylim, true, append);\n this.model.overlay.update({\n left: null,\n right: null,\n top: null,\n bottom: null\n });\n this._base_point = null;\n this.plot_view.push_state('box_select', { selection: this.plot_view.get_selection() });\n };\n BoxSelectToolView.prototype._do_select = function (_a, _b, final, append) {\n var sx0 = _a[0], sx1 = _a[1];\n var sy0 = _b[0], sy1 = _b[1];\n if (append === void 0) {\n append = false;\n }\n var geometry = {\n type: 'rect',\n sx0: sx0,\n sx1: sx1,\n sy0: sy0,\n sy1: sy1\n };\n this._select(geometry, final, append);\n };\n BoxSelectToolView.prototype._emit_callback = function (geometry) {\n var r = this.computed_renderers[0];\n var frame = this.plot_model.frame;\n var xscale = frame.xscales[r.x_range_name];\n var yscale = frame.yscales[r.y_range_name];\n var sx0 = geometry.sx0, sx1 = geometry.sx1, sy0 = geometry.sy0, sy1 = geometry.sy1;\n var _a = xscale.r_invert(sx0, sx1), x0 = _a[0], x1 = _a[1];\n var _b = yscale.r_invert(sy0, sy1), y0 = _b[0], y1 = _b[1];\n var g = object_1.extend({\n x0: x0,\n y0: y0,\n x1: x1,\n y1: y1\n }, geometry);\n this.model.callback.execute(this.model, { geometry: g });\n };\n return BoxSelectToolView;\n }(select_tool_1.SelectToolView);\n exports.BoxSelectToolView = BoxSelectToolView;\n var DEFAULT_BOX_OVERLAY = function () {\n return new box_annotation_1.BoxAnnotation({\n level: 'overlay',\n render_mode: 'css',\n top_units: 'screen',\n left_units: 'screen',\n bottom_units: 'screen',\n right_units: 'screen',\n fill_color: { value: 'lightgrey' },\n fill_alpha: { value: 0.5 },\n line_color: { value: 'black' },\n line_alpha: { value: 1 },\n line_width: { value: 2 },\n line_dash: {\n value: [\n 4,\n 4\n ]\n }\n });\n };\n var BoxSelectTool = function (_super) {\n tslib_1.__extends(BoxSelectTool, _super);\n function BoxSelectTool(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.tool_name = 'Box Select';\n _this.icon = 'bk-tool-icon-box-select';\n _this.event_type = 'pan';\n _this.default_order = 30;\n return _this;\n }\n BoxSelectTool.initClass = function () {\n this.prototype.type = 'BoxSelectTool';\n this.prototype.default_view = BoxSelectToolView;\n this.define({\n dimensions: [\n p.Dimensions,\n 'both'\n ],\n select_every_mousemove: [\n p.Bool,\n false\n ],\n callback: [p.Instance],\n overlay: [\n p.Instance,\n DEFAULT_BOX_OVERLAY\n ],\n origin: [\n p.String,\n 'corner'\n ]\n });\n };\n Object.defineProperty(BoxSelectTool.prototype, 'tooltip', {\n get: function () {\n return this._get_dim_tooltip(this.tool_name, this.dimensions);\n },\n enumerable: true,\n configurable: true\n });\n return BoxSelectTool;\n }(select_tool_1.SelectTool);\n exports.BoxSelectTool = BoxSelectTool;\n BoxSelectTool.initClass(); \n}","/*models/tools/gestures/box_zoom_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var gesture_tool_1 = require(232 /* ./gesture_tool */);\n var box_annotation_1 = require(58 /* ../../annotations/box_annotation */);\n var p = require(15 /* core/properties */);\n var BoxZoomToolView = function (_super) {\n tslib_1.__extends(BoxZoomToolView, _super);\n function BoxZoomToolView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n BoxZoomToolView.prototype._match_aspect = function (base_point, curpoint, frame) {\n // aspect ratio of plot frame\n var a = frame.bbox.aspect;\n var hend = frame.bbox.h_range.end;\n var hstart = frame.bbox.h_range.start;\n var vend = frame.bbox.v_range.end;\n var vstart = frame.bbox.v_range.start;\n // current aspect of cursor-defined box\n var vw = Math.abs(base_point[0] - curpoint[0]);\n var vh = Math.abs(base_point[1] - curpoint[1]);\n var va = vh == 0 ? 0 : vw / vh;\n var xmod = (va >= a ? [\n 1,\n va / a\n ] : [\n a / va,\n 1\n ])[0];\n // OK the code blocks below merit some explanation. They do:\n //\n // compute left/right, pin to frame if necessary\n // compute top/bottom (based on new left/right), pin to frame if necessary\n // recompute left/right (based on top/bottom), in case top/bottom were pinned\n // base_point[0] is left\n var left;\n var right;\n if (base_point[0] <= curpoint[0]) {\n left = base_point[0];\n right = base_point[0] + vw * xmod;\n if (right > hend)\n right = hend; // base_point[0] is right\n } else {\n right = base_point[0];\n left = base_point[0] - vw * xmod;\n if (left < hstart)\n left = hstart;\n }\n vw = Math.abs(right - left);\n // base_point[1] is bottom\n var top;\n var bottom;\n if (base_point[1] <= curpoint[1]) {\n bottom = base_point[1];\n top = base_point[1] + vw / a;\n if (top > vend)\n top = vend; // base_point[1] is top\n } else {\n top = base_point[1];\n bottom = base_point[1] - vw / a;\n if (bottom < vstart)\n bottom = vstart;\n }\n vh = Math.abs(top - bottom);\n // base_point[0] is left\n if (base_point[0] <= curpoint[0])\n right = base_point[0] + a * vh; // base_point[0] is right\n else\n left = base_point[0] - a * vh;\n return [\n [\n left,\n right\n ],\n [\n bottom,\n top\n ]\n ];\n };\n BoxZoomToolView.prototype._compute_limits = function (curpoint) {\n var frame = this.plot_model.frame;\n var dims = this.model.dimensions;\n var base_point = this._base_point;\n if (this.model.origin == 'center') {\n var cx = base_point[0], cy = base_point[1];\n var dx = curpoint[0], dy = curpoint[1];\n base_point = [\n cx - (dx - cx),\n cy - (dy - cy)\n ];\n }\n var sx;\n var sy;\n if (this.model.match_aspect && dims == 'both')\n _a = this._match_aspect(base_point, curpoint, frame), sx = _a[0], sy = _a[1];\n else\n _b = this.model._get_dim_limits(base_point, curpoint, frame, dims), sx = _b[0], sy = _b[1];\n return [\n sx,\n sy\n ];\n var _a, _b;\n };\n BoxZoomToolView.prototype._pan_start = function (ev) {\n this._base_point = [\n ev.sx,\n ev.sy\n ];\n };\n BoxZoomToolView.prototype._pan = function (ev) {\n var curpoint = [\n ev.sx,\n ev.sy\n ];\n var _a = this._compute_limits(curpoint), sx = _a[0], sy = _a[1];\n this.model.overlay.update({\n left: sx[0],\n right: sx[1],\n top: sy[0],\n bottom: sy[1]\n });\n };\n BoxZoomToolView.prototype._pan_end = function (ev) {\n var curpoint = [\n ev.sx,\n ev.sy\n ];\n var _a = this._compute_limits(curpoint), sx = _a[0], sy = _a[1];\n this._update(sx, sy);\n this.model.overlay.update({\n left: null,\n right: null,\n top: null,\n bottom: null\n });\n this._base_point = null;\n };\n BoxZoomToolView.prototype._update = function (_a, _b) {\n var sx0 = _a[0], sx1 = _a[1];\n var sy0 = _b[0], sy1 = _b[1];\n // If the viewing window is too small, no-op: it is likely that the user did\n // not intend to make this box zoom and instead was trying to cancel out of the\n // zoom, a la matplotlib's ToolZoom. Like matplotlib, set the threshold at 5 pixels.\n if (Math.abs(sx1 - sx0) <= 5 || Math.abs(sy1 - sy0) <= 5)\n return;\n var _c = this.plot_model.frame, xscales = _c.xscales, yscales = _c.yscales;\n var xrs = {};\n for (var name_1 in xscales) {\n var scale = xscales[name_1];\n var _d = scale.r_invert(sx0, sx1), start = _d[0], end = _d[1];\n xrs[name_1] = {\n start: start,\n end: end\n };\n }\n var yrs = {};\n for (var name_2 in yscales) {\n var scale = yscales[name_2];\n var _e = scale.r_invert(sy0, sy1), start = _e[0], end = _e[1];\n yrs[name_2] = {\n start: start,\n end: end\n };\n }\n var zoom_info = {\n xrs: xrs,\n yrs: yrs\n };\n this.plot_view.push_state('box_zoom', { range: zoom_info });\n this.plot_view.update_range(zoom_info);\n };\n return BoxZoomToolView;\n }(gesture_tool_1.GestureToolView);\n exports.BoxZoomToolView = BoxZoomToolView;\n var DEFAULT_BOX_OVERLAY = function () {\n return new box_annotation_1.BoxAnnotation({\n level: 'overlay',\n render_mode: 'css',\n top_units: 'screen',\n left_units: 'screen',\n bottom_units: 'screen',\n right_units: 'screen',\n fill_color: { value: 'lightgrey' },\n fill_alpha: { value: 0.5 },\n line_color: { value: 'black' },\n line_alpha: { value: 1 },\n line_width: { value: 2 },\n line_dash: {\n value: [\n 4,\n 4\n ]\n }\n });\n };\n var BoxZoomTool = function (_super) {\n tslib_1.__extends(BoxZoomTool, _super);\n function BoxZoomTool(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.tool_name = 'Box Zoom';\n _this.icon = 'bk-tool-icon-box-zoom';\n _this.event_type = 'pan';\n _this.default_order = 20;\n return _this;\n }\n BoxZoomTool.initClass = function () {\n this.prototype.type = 'BoxZoomTool';\n this.prototype.default_view = BoxZoomToolView;\n this.define({\n dimensions: [\n p.Dimensions,\n 'both'\n ],\n overlay: [\n p.Instance,\n DEFAULT_BOX_OVERLAY\n ],\n match_aspect: [\n p.Bool,\n false\n ],\n origin: [\n p.String,\n 'corner'\n ]\n });\n };\n Object.defineProperty(BoxZoomTool.prototype, 'tooltip', {\n get: function () {\n return this._get_dim_tooltip(this.tool_name, this.dimensions);\n },\n enumerable: true,\n configurable: true\n });\n return BoxZoomTool;\n }(gesture_tool_1.GestureTool);\n exports.BoxZoomTool = BoxZoomTool;\n BoxZoomTool.initClass(); \n}","/*models/tools/gestures/gesture_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var button_tool_1 = require(224 /* ../button_tool */);\n var on_off_button_1 = require(245 /* ../on_off_button */);\n var GestureToolView = function (_super) {\n tslib_1.__extends(GestureToolView, _super);\n function GestureToolView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return GestureToolView;\n }(button_tool_1.ButtonToolView);\n exports.GestureToolView = GestureToolView;\n var GestureTool = function (_super) {\n tslib_1.__extends(GestureTool, _super);\n function GestureTool(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.button_view = on_off_button_1.OnOffButtonView;\n return _this;\n }\n GestureTool.initClass = function () {\n this.prototype.type = 'GestureTool';\n };\n return GestureTool;\n }(button_tool_1.ButtonTool);\n exports.GestureTool = GestureTool;\n GestureTool.initClass(); \n}","/*models/tools/gestures/lasso_select_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var select_tool_1 = require(236 /* ./select_tool */);\n var poly_annotation_1 = require(65 /* ../../annotations/poly_annotation */);\n var dom_1 = require(5 /* core/dom */);\n var p = require(15 /* core/properties */);\n var object_1 = require(32 /* core/util/object */);\n var LassoSelectToolView = function (_super) {\n tslib_1.__extends(LassoSelectToolView, _super);\n function LassoSelectToolView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n LassoSelectToolView.prototype.initialize = function (options) {\n _super.prototype.initialize.call(this, options);\n this.data = null;\n };\n LassoSelectToolView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.model.properties.active.change, function () {\n return _this._active_change();\n });\n };\n LassoSelectToolView.prototype._active_change = function () {\n if (!this.model.active)\n this._clear_overlay();\n };\n LassoSelectToolView.prototype._keyup = function (ev) {\n if (ev.keyCode == dom_1.Keys.Enter)\n this._clear_overlay();\n };\n LassoSelectToolView.prototype._pan_start = function (ev) {\n var sx = ev.sx, sy = ev.sy;\n this.data = {\n sx: [sx],\n sy: [sy]\n };\n };\n LassoSelectToolView.prototype._pan = function (ev) {\n var _sx = ev.sx, _sy = ev.sy;\n var _a = this.plot_model.frame.bbox.clip(_sx, _sy), sx = _a[0], sy = _a[1];\n this.data.sx.push(sx);\n this.data.sy.push(sy);\n var overlay = this.model.overlay;\n overlay.update({\n xs: this.data.sx,\n ys: this.data.sy\n });\n if (this.model.select_every_mousemove) {\n var append = ev.shiftKey;\n this._do_select(this.data.sx, this.data.sy, false, append);\n }\n };\n LassoSelectToolView.prototype._pan_end = function (ev) {\n this._clear_overlay();\n var append = ev.shiftKey;\n this._do_select(this.data.sx, this.data.sy, true, append);\n this.plot_view.push_state('lasso_select', { selection: this.plot_view.get_selection() });\n };\n LassoSelectToolView.prototype._clear_overlay = function () {\n this.model.overlay.update({\n xs: [],\n ys: []\n });\n };\n LassoSelectToolView.prototype._do_select = function (sx, sy, final, append) {\n var geometry = {\n type: 'poly',\n sx: sx,\n sy: sy\n };\n this._select(geometry, final, append);\n };\n LassoSelectToolView.prototype._emit_callback = function (geometry) {\n var r = this.computed_renderers[0];\n var frame = this.plot_model.frame;\n var xscale = frame.xscales[r.x_range_name];\n var yscale = frame.yscales[r.y_range_name];\n var x = xscale.v_invert(geometry.sx);\n var y = yscale.v_invert(geometry.sy);\n var g = object_1.extend({\n x: x,\n y: y\n }, geometry);\n this.model.callback.execute(this.model, { geometry: g });\n };\n return LassoSelectToolView;\n }(select_tool_1.SelectToolView);\n exports.LassoSelectToolView = LassoSelectToolView;\n var DEFAULT_POLY_OVERLAY = function () {\n return new poly_annotation_1.PolyAnnotation({\n level: 'overlay',\n xs_units: 'screen',\n ys_units: 'screen',\n fill_color: { value: 'lightgrey' },\n fill_alpha: { value: 0.5 },\n line_color: { value: 'black' },\n line_alpha: { value: 1 },\n line_width: { value: 2 },\n line_dash: {\n value: [\n 4,\n 4\n ]\n }\n });\n };\n var LassoSelectTool = function (_super) {\n tslib_1.__extends(LassoSelectTool, _super);\n function LassoSelectTool(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.tool_name = 'Lasso Select';\n _this.icon = 'bk-tool-icon-lasso-select';\n _this.event_type = 'pan';\n _this.default_order = 12;\n return _this;\n }\n LassoSelectTool.initClass = function () {\n this.prototype.type = 'LassoSelectTool';\n this.prototype.default_view = LassoSelectToolView;\n this.define({\n select_every_mousemove: [\n p.Bool,\n true\n ],\n callback: [p.Instance],\n overlay: [\n p.Instance,\n DEFAULT_POLY_OVERLAY\n ]\n });\n };\n return LassoSelectTool;\n }(select_tool_1.SelectTool);\n exports.LassoSelectTool = LassoSelectTool;\n LassoSelectTool.initClass(); \n}","/*models/tools/gestures/pan_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var gesture_tool_1 = require(232 /* ./gesture_tool */);\n var p = require(15 /* core/properties */);\n var PanToolView = function (_super) {\n tslib_1.__extends(PanToolView, _super);\n function PanToolView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n PanToolView.prototype._pan_start = function (ev) {\n this.last_dx = 0;\n this.last_dy = 0;\n var sx = ev.sx, sy = ev.sy;\n var bbox = this.plot_model.frame.bbox;\n if (!bbox.contains(sx, sy)) {\n var hr = bbox.h_range;\n var vr = bbox.v_range;\n if (sx < hr.start || sx > hr.end)\n this.v_axis_only = true;\n if (sy < vr.start || sy > vr.end)\n this.h_axis_only = true;\n }\n if (this.model.document != null)\n this.model.document.interactive_start(this.plot_model.plot);\n };\n PanToolView.prototype._pan = function (ev) {\n this._update(ev.deltaX, ev.deltaY);\n if (this.model.document != null)\n this.model.document.interactive_start(this.plot_model.plot);\n };\n PanToolView.prototype._pan_end = function (_e) {\n this.h_axis_only = false;\n this.v_axis_only = false;\n if (this.pan_info != null)\n this.plot_view.push_state('pan', { range: this.pan_info });\n };\n PanToolView.prototype._update = function (dx, dy) {\n var frame = this.plot_model.frame;\n var new_dx = dx - this.last_dx;\n var new_dy = dy - this.last_dy;\n var hr = frame.bbox.h_range;\n var sx_low = hr.start - new_dx;\n var sx_high = hr.end - new_dx;\n var vr = frame.bbox.v_range;\n var sy_low = vr.start - new_dy;\n var sy_high = vr.end - new_dy;\n var dims = this.model.dimensions;\n var sx0;\n var sx1;\n var sdx;\n if ((dims == 'width' || dims == 'both') && !this.v_axis_only) {\n sx0 = sx_low;\n sx1 = sx_high;\n sdx = -new_dx;\n } else {\n sx0 = hr.start;\n sx1 = hr.end;\n sdx = 0;\n }\n var sy0;\n var sy1;\n var sdy;\n if ((dims == 'height' || dims == 'both') && !this.h_axis_only) {\n sy0 = sy_low;\n sy1 = sy_high;\n sdy = -new_dy;\n } else {\n sy0 = vr.start;\n sy1 = vr.end;\n sdy = 0;\n }\n this.last_dx = dx;\n this.last_dy = dy;\n var xscales = frame.xscales, yscales = frame.yscales;\n var xrs = {};\n for (var name_1 in xscales) {\n var scale = xscales[name_1];\n var _a = scale.r_invert(sx0, sx1), start = _a[0], end = _a[1];\n xrs[name_1] = {\n start: start,\n end: end\n };\n }\n var yrs = {};\n for (var name_2 in yscales) {\n var scale = yscales[name_2];\n var _b = scale.r_invert(sy0, sy1), start = _b[0], end = _b[1];\n yrs[name_2] = {\n start: start,\n end: end\n };\n }\n this.pan_info = {\n xrs: xrs,\n yrs: yrs,\n sdx: sdx,\n sdy: sdy\n };\n this.plot_view.update_range(this.pan_info, true);\n };\n return PanToolView;\n }(gesture_tool_1.GestureToolView);\n exports.PanToolView = PanToolView;\n var PanTool = function (_super) {\n tslib_1.__extends(PanTool, _super);\n function PanTool(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.tool_name = 'Pan';\n _this.event_type = 'pan';\n _this.default_order = 10;\n return _this;\n }\n PanTool.initClass = function () {\n this.prototype.type = 'PanTool';\n this.prototype.default_view = PanToolView;\n this.define({\n dimensions: [\n p.Dimensions,\n 'both'\n ]\n });\n };\n Object.defineProperty(PanTool.prototype, 'tooltip', {\n get: function () {\n return this._get_dim_tooltip('Pan', this.dimensions);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(PanTool.prototype, 'icon', {\n get: function () {\n switch (this.dimensions) {\n case 'both':\n return 'bk-tool-icon-pan';\n case 'width':\n return 'bk-tool-icon-xpan';\n case 'height':\n return 'bk-tool-icon-ypan';\n }\n },\n enumerable: true,\n configurable: true\n });\n return PanTool;\n }(gesture_tool_1.GestureTool);\n exports.PanTool = PanTool;\n PanTool.initClass(); \n}","/*models/tools/gestures/poly_select_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var select_tool_1 = require(236 /* ./select_tool */);\n var poly_annotation_1 = require(65 /* ../../annotations/poly_annotation */);\n var dom_1 = require(5 /* core/dom */);\n var p = require(15 /* core/properties */);\n var array_1 = require(21 /* core/util/array */);\n var object_1 = require(32 /* core/util/object */);\n var PolySelectToolView = function (_super) {\n tslib_1.__extends(PolySelectToolView, _super);\n function PolySelectToolView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n PolySelectToolView.prototype.initialize = function (options) {\n _super.prototype.initialize.call(this, options);\n this.data = {\n sx: [],\n sy: []\n };\n };\n PolySelectToolView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.model.properties.active.change, function () {\n return _this._active_change();\n });\n };\n PolySelectToolView.prototype._active_change = function () {\n if (!this.model.active)\n this._clear_data();\n };\n PolySelectToolView.prototype._keyup = function (ev) {\n if (ev.keyCode == dom_1.Keys.Enter)\n this._clear_data();\n };\n PolySelectToolView.prototype._doubletap = function (ev) {\n var append = ev.shiftKey;\n this._do_select(this.data.sx, this.data.sy, true, append);\n this.plot_view.push_state('poly_select', { selection: this.plot_view.get_selection() });\n this._clear_data();\n };\n PolySelectToolView.prototype._clear_data = function () {\n this.data = {\n sx: [],\n sy: []\n };\n this.model.overlay.update({\n xs: [],\n ys: []\n });\n };\n PolySelectToolView.prototype._tap = function (ev) {\n var sx = ev.sx, sy = ev.sy;\n var frame = this.plot_model.frame;\n if (!frame.bbox.contains(sx, sy))\n return;\n this.data.sx.push(sx);\n this.data.sy.push(sy);\n this.model.overlay.update({\n xs: array_1.copy(this.data.sx),\n ys: array_1.copy(this.data.sy)\n });\n };\n PolySelectToolView.prototype._do_select = function (sx, sy, final, append) {\n var geometry = {\n type: 'poly',\n sx: sx,\n sy: sy\n };\n this._select(geometry, final, append);\n };\n PolySelectToolView.prototype._emit_callback = function (geometry) {\n var r = this.computed_renderers[0];\n var frame = this.plot_model.frame;\n var xscale = frame.xscales[r.x_range_name];\n var yscale = frame.yscales[r.y_range_name];\n var x = xscale.v_invert(geometry.sx);\n var y = yscale.v_invert(geometry.sy);\n var g = object_1.extend({\n x: x,\n y: y\n }, geometry);\n this.model.callback.execute(this.model, { geometry: g });\n };\n return PolySelectToolView;\n }(select_tool_1.SelectToolView);\n exports.PolySelectToolView = PolySelectToolView;\n var DEFAULT_POLY_OVERLAY = function () {\n return new poly_annotation_1.PolyAnnotation({\n level: 'overlay',\n xs_units: 'screen',\n ys_units: 'screen',\n fill_color: { value: 'lightgrey' },\n fill_alpha: { value: 0.5 },\n line_color: { value: 'black' },\n line_alpha: { value: 1 },\n line_width: { value: 2 },\n line_dash: {\n value: [\n 4,\n 4\n ]\n }\n });\n };\n var PolySelectTool = function (_super) {\n tslib_1.__extends(PolySelectTool, _super);\n function PolySelectTool(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.tool_name = 'Poly Select';\n _this.icon = 'bk-tool-icon-polygon-select';\n _this.event_type = 'tap';\n _this.default_order = 11;\n return _this;\n }\n PolySelectTool.initClass = function () {\n this.prototype.type = 'PolySelectTool';\n this.prototype.default_view = PolySelectToolView;\n this.define({\n callback: [p.Instance],\n overlay: [\n p.Instance,\n DEFAULT_POLY_OVERLAY\n ]\n });\n };\n return PolySelectTool;\n }(select_tool_1.SelectTool);\n exports.PolySelectTool = PolySelectTool;\n PolySelectTool.initClass(); \n}","/*models/tools/gestures/select_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var gesture_tool_1 = require(232 /* ./gesture_tool */);\n var graph_renderer_1 = require(170 /* ../../renderers/graph_renderer */);\n var util_1 = require(251 /* ../util */);\n var p = require(15 /* core/properties */);\n var object_1 = require(32 /* core/util/object */);\n var dom_1 = require(5 /* core/dom */);\n var bokeh_events_1 = require(3 /* core/bokeh_events */);\n var SelectToolView = function (_super) {\n tslib_1.__extends(SelectToolView, _super);\n function SelectToolView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n Object.defineProperty(SelectToolView.prototype, 'computed_renderers', {\n get: function () {\n var renderers = this.model.renderers;\n var all_renderers = this.plot_model.plot.renderers;\n var names = this.model.names;\n return util_1.compute_renderers(renderers, all_renderers, names);\n },\n enumerable: true,\n configurable: true\n });\n SelectToolView.prototype._computed_renderers_by_data_source = function () {\n var renderers_by_source = {};\n for (var _i = 0, _a = this.computed_renderers; _i < _a.length; _i++) {\n var r = _a[_i];\n var source_id = void 0;\n // XXX: needs typings for renderers\n if (r instanceof graph_renderer_1.GraphRenderer)\n source_id = r.node_renderer.data_source.id;\n else\n source_id = r.data_source.id;\n if (!(source_id in renderers_by_source))\n renderers_by_source[source_id] = [];\n renderers_by_source[source_id].push(r);\n }\n return renderers_by_source;\n };\n SelectToolView.prototype._keyup = function (ev) {\n if (ev.keyCode == dom_1.Keys.Esc) {\n for (var _i = 0, _a = this.computed_renderers; _i < _a.length; _i++) {\n var r = _a[_i];\n // XXX: needs typings for renderers\n var ds = r.data_source;\n var sm = ds.selection_manager;\n sm.clear();\n }\n }\n };\n SelectToolView.prototype._select = function (geometry, final, append) {\n var renderers_by_source = this._computed_renderers_by_data_source();\n for (var id in renderers_by_source) {\n var renderers = renderers_by_source[id];\n var sm = renderers[0].get_selection_manager();\n var r_views = [];\n for (var _i = 0, renderers_1 = renderers; _i < renderers_1.length; _i++) {\n var r = renderers_1[_i];\n if (r.id in this.plot_view.renderer_views)\n r_views.push(this.plot_view.renderer_views[r.id]);\n }\n sm.select(r_views, geometry, final, append);\n }\n // XXX: messed up class structure\n if (this.model.callback != null)\n this._emit_callback(geometry);\n this._emit_selection_event(geometry, final);\n };\n SelectToolView.prototype._emit_selection_event = function (geometry, final) {\n if (final === void 0) {\n final = true;\n }\n var xm = this.plot_model.frame.xscales['default'];\n var ym = this.plot_model.frame.yscales['default'];\n var g;\n // XXX: Geometry & something\n switch (geometry.type) {\n case 'point': {\n var sx = geometry.sx, sy = geometry.sy;\n var x = xm.invert(sx);\n var y = ym.invert(sy);\n g = object_1.extend({}, geometry, {\n x: x,\n y: y\n });\n break;\n }\n case 'rect': {\n var sx0 = geometry.sx0, sx1 = geometry.sx1, sy0 = geometry.sy0, sy1 = geometry.sy1;\n var _a = xm.r_invert(sx0, sx1), x0 = _a[0], x1 = _a[1];\n var _b = ym.r_invert(sy0, sy1), y0 = _b[0], y1 = _b[1];\n g = object_1.extend({}, geometry, {\n x0: x0,\n y0: y0,\n x1: x1,\n y1: y1\n });\n break;\n }\n case 'poly': {\n var sx = geometry.sx, sy = geometry.sy;\n var x = xm.v_invert(sx);\n var y = ym.v_invert(sy);\n g = object_1.extend({}, geometry, {\n x: x,\n y: y\n });\n break;\n }\n default:\n throw new Error('Unrecognized selection geometry type: \\'' + geometry.type + '\\'');\n }\n this.plot_model.plot.trigger_event(new bokeh_events_1.SelectionGeometry({\n geometry: g,\n final: final\n }));\n };\n return SelectToolView;\n }(gesture_tool_1.GestureToolView);\n exports.SelectToolView = SelectToolView;\n var SelectTool = function (_super) {\n tslib_1.__extends(SelectTool, _super);\n function SelectTool(attrs) {\n return _super.call(this, attrs) || this;\n }\n SelectTool.initClass = function () {\n this.prototype.type = 'SelectTool';\n this.define({\n renderers: [\n p.Any,\n 'auto'\n ],\n names: [\n p.Array,\n []\n ]\n });\n };\n return SelectTool;\n }(gesture_tool_1.GestureTool);\n exports.SelectTool = SelectTool;\n SelectTool.initClass(); \n}","/*models/tools/gestures/tap_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var select_tool_1 = require(236 /* ./select_tool */);\n var p = require(15 /* core/properties */);\n var types_1 = require(44 /* core/util/types */);\n var TapToolView = function (_super) {\n tslib_1.__extends(TapToolView, _super);\n function TapToolView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n TapToolView.prototype._tap = function (ev) {\n var sx = ev.sx, sy = ev.sy;\n var geometry = {\n type: 'point',\n sx: sx,\n sy: sy\n };\n var append = ev.shiftKey;\n this._select(geometry, true, append);\n };\n TapToolView.prototype._select = function (geometry, final, append) {\n var _this = this;\n var callback = this.model.callback;\n var cb_data = {\n geometries: geometry,\n source: null\n };\n if (this.model.behavior == 'select') {\n var renderers_by_source = this._computed_renderers_by_data_source();\n for (var id in renderers_by_source) {\n var renderers = renderers_by_source[id];\n var sm = renderers[0].get_selection_manager();\n var r_views = renderers.map(function (r) {\n return _this.plot_view.renderer_views[r.id];\n });\n var did_hit = sm.select(r_views, geometry, final, append);\n if (did_hit && callback != null) {\n cb_data.source = sm.source;\n if (types_1.isFunction(callback))\n callback(this, cb_data);\n else\n callback.execute(this, cb_data);\n }\n }\n this._emit_selection_event(geometry);\n this.plot_view.push_state('tap', { selection: this.plot_view.get_selection() });\n } else {\n for (var _i = 0, _a = this.computed_renderers; _i < _a.length; _i++) {\n var r = _a[_i];\n var sm = r.get_selection_manager();\n var did_hit = sm.inspect(this.plot_view.renderer_views[r.id], geometry);\n if (did_hit && callback != null) {\n cb_data.source = sm.source;\n if (types_1.isFunction(callback))\n callback(this, cb_data);\n else\n callback.execute(this, cb_data);\n }\n }\n }\n };\n return TapToolView;\n }(select_tool_1.SelectToolView);\n exports.TapToolView = TapToolView;\n var TapTool = function (_super) {\n tslib_1.__extends(TapTool, _super);\n function TapTool(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.tool_name = 'Tap';\n _this.icon = 'bk-tool-icon-tap-select';\n _this.event_type = 'tap';\n _this.default_order = 10;\n return _this;\n }\n TapTool.initClass = function () {\n this.prototype.type = 'TapTool';\n this.prototype.default_view = TapToolView;\n this.define({\n behavior: [\n p.String,\n 'select'\n ],\n callback: [p.Any]\n });\n };\n return TapTool;\n }(select_tool_1.SelectTool);\n exports.TapTool = TapTool;\n TapTool.initClass(); \n}","/*models/tools/gestures/wheel_pan_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var gesture_tool_1 = require(232 /* ./gesture_tool */);\n var p = require(15 /* core/properties */);\n var WheelPanToolView = function (_super) {\n tslib_1.__extends(WheelPanToolView, _super);\n function WheelPanToolView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n WheelPanToolView.prototype._scroll = function (ev) {\n var factor = this.model.speed * ev.delta;\n // clamp the magnitude of factor, if it is > 1 bad things happen\n if (factor > 0.9)\n factor = 0.9;\n else if (factor < -0.9)\n factor = -0.9;\n this._update_ranges(factor);\n };\n WheelPanToolView.prototype._update_ranges = function (factor) {\n var frame = this.plot_model.frame;\n var hr = frame.bbox.h_range;\n var vr = frame.bbox.v_range;\n var _a = [\n hr.start,\n hr.end\n ], sx_low = _a[0], sx_high = _a[1];\n var _b = [\n vr.start,\n vr.end\n ], sy_low = _b[0], sy_high = _b[1];\n var sx0;\n var sx1;\n var sy0;\n var sy1;\n switch (this.model.dimension) {\n case 'height': {\n var sy_range = Math.abs(sy_high - sy_low);\n sx0 = sx_low;\n sx1 = sx_high;\n sy0 = sy_low - sy_range * factor;\n sy1 = sy_high - sy_range * factor;\n break;\n }\n case 'width': {\n var sx_range = Math.abs(sx_high - sx_low);\n sx0 = sx_low - sx_range * factor;\n sx1 = sx_high - sx_range * factor;\n sy0 = sy_low;\n sy1 = sy_high;\n break;\n }\n default:\n throw new Error('this shouldn\\'t have happened');\n }\n var xscales = frame.xscales, yscales = frame.yscales;\n var xrs = {};\n for (var name_1 in xscales) {\n var scale = xscales[name_1];\n var _c = scale.r_invert(sx0, sx1), start = _c[0], end = _c[1];\n xrs[name_1] = {\n start: start,\n end: end\n };\n }\n var yrs = {};\n for (var name_2 in yscales) {\n var scale = yscales[name_2];\n var _d = scale.r_invert(sy0, sy1), start = _d[0], end = _d[1];\n yrs[name_2] = {\n start: start,\n end: end\n };\n }\n // OK this sucks we can't set factor independently in each direction. It is used\n // for GMap plots, and GMap plots always preserve aspect, so effective the value\n // of 'dimensions' is ignored.\n var pan_info = {\n xrs: xrs,\n yrs: yrs,\n factor: factor\n };\n this.plot_view.push_state('wheel_pan', { range: pan_info });\n this.plot_view.update_range(pan_info, false, true);\n if (this.model.document != null)\n this.model.document.interactive_start(this.plot_model.plot);\n };\n return WheelPanToolView;\n }(gesture_tool_1.GestureToolView);\n exports.WheelPanToolView = WheelPanToolView;\n var WheelPanTool = function (_super) {\n tslib_1.__extends(WheelPanTool, _super);\n function WheelPanTool(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.tool_name = 'Wheel Pan';\n _this.icon = 'bk-tool-icon-wheel-pan';\n _this.event_type = 'scroll';\n _this.default_order = 12;\n return _this;\n }\n WheelPanTool.initClass = function () {\n this.prototype.type = 'WheelPanTool';\n this.prototype.default_view = WheelPanToolView;\n this.define({\n dimension: [\n p.Dimension,\n 'width'\n ]\n });\n this.internal({\n speed: [\n p.Number,\n 1 / 1000\n ]\n });\n };\n Object.defineProperty(WheelPanTool.prototype, 'tooltip', {\n get: function () {\n return this._get_dim_tooltip(this.tool_name, this.dimension);\n },\n enumerable: true,\n configurable: true\n });\n return WheelPanTool;\n }(gesture_tool_1.GestureTool);\n exports.WheelPanTool = WheelPanTool;\n WheelPanTool.initClass(); \n}","/*models/tools/gestures/wheel_zoom_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var gesture_tool_1 = require(232 /* ./gesture_tool */);\n var zoom_1 = require(46 /* core/util/zoom */);\n var p = require(15 /* core/properties */);\n var ui_events_1 = require(20 /* core/ui_events */);\n var WheelZoomToolView = function (_super) {\n tslib_1.__extends(WheelZoomToolView, _super);\n function WheelZoomToolView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n WheelZoomToolView.prototype._pinch = function (ev) {\n // TODO (bev) this can probably be done much better\n var sx = ev.sx, sy = ev.sy, scale = ev.scale;\n var delta;\n if (scale >= 1)\n delta = (scale - 1) * 20;\n else\n delta = -20 / scale;\n this._scroll({\n type: 'mousewheel',\n sx: sx,\n sy: sy,\n delta: delta\n });\n };\n WheelZoomToolView.prototype._scroll = function (ev) {\n var frame = this.plot_model.frame;\n var hr = frame.bbox.h_range;\n var vr = frame.bbox.v_range;\n var sx = ev.sx, sy = ev.sy;\n var dims = this.model.dimensions;\n // restrict to axis configured in tool's dimensions property and if\n // zoom origin is inside of frame range/domain\n var h_axis = (dims == 'width' || dims == 'both') && hr.start < sx && sx < hr.end;\n var v_axis = (dims == 'height' || dims == 'both') && vr.start < sy && sy < vr.end;\n if ((!h_axis || !v_axis) && !this.model.zoom_on_axis) {\n return;\n }\n var factor = this.model.speed * ev.delta;\n var zoom_info = zoom_1.scale_range(frame, factor, h_axis, v_axis, {\n x: sx,\n y: sy\n });\n this.plot_view.push_state('wheel_zoom', { range: zoom_info });\n this.plot_view.update_range(zoom_info, false, true, this.model.maintain_focus);\n if (this.model.document != null)\n this.model.document.interactive_start(this.plot_model.plot);\n };\n return WheelZoomToolView;\n }(gesture_tool_1.GestureToolView);\n exports.WheelZoomToolView = WheelZoomToolView;\n var WheelZoomTool = function (_super) {\n tslib_1.__extends(WheelZoomTool, _super);\n function WheelZoomTool(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.tool_name = 'Wheel Zoom';\n _this.icon = 'bk-tool-icon-wheel-zoom';\n _this.event_type = ui_events_1.is_mobile ? 'pinch' : 'scroll';\n _this.default_order = 10;\n return _this;\n }\n WheelZoomTool.initClass = function () {\n this.prototype.type = 'WheelZoomTool';\n this.prototype.default_view = WheelZoomToolView;\n this.define({\n dimensions: [\n p.Dimensions,\n 'both'\n ],\n maintain_focus: [\n p.Boolean,\n true\n ],\n zoom_on_axis: [\n p.Boolean,\n true\n ],\n speed: [\n p.Number,\n 1 / 600\n ]\n });\n };\n Object.defineProperty(WheelZoomTool.prototype, 'tooltip', {\n get: function () {\n return this._get_dim_tooltip(this.tool_name, this.dimensions);\n },\n enumerable: true,\n configurable: true\n });\n return WheelZoomTool;\n }(gesture_tool_1.GestureTool);\n exports.WheelZoomTool = WheelZoomTool;\n WheelZoomTool.initClass(); \n}","/*models/tools/index*/\nfunction _(require, module, exports) {\n var action_tool_1 = require(216 /* ./actions/action_tool */);\n exports.ActionTool = action_tool_1.ActionTool;\n var help_tool_1 = require(217 /* ./actions/help_tool */);\n exports.HelpTool = help_tool_1.HelpTool;\n var redo_tool_1 = require(218 /* ./actions/redo_tool */);\n exports.RedoTool = redo_tool_1.RedoTool;\n var reset_tool_1 = require(219 /* ./actions/reset_tool */);\n exports.ResetTool = reset_tool_1.ResetTool;\n var save_tool_1 = require(220 /* ./actions/save_tool */);\n exports.SaveTool = save_tool_1.SaveTool;\n var undo_tool_1 = require(221 /* ./actions/undo_tool */);\n exports.UndoTool = undo_tool_1.UndoTool;\n var zoom_in_tool_1 = require(222 /* ./actions/zoom_in_tool */);\n exports.ZoomInTool = zoom_in_tool_1.ZoomInTool;\n var zoom_out_tool_1 = require(223 /* ./actions/zoom_out_tool */);\n exports.ZoomOutTool = zoom_out_tool_1.ZoomOutTool;\n var button_tool_1 = require(224 /* ./button_tool */);\n exports.ButtonTool = button_tool_1.ButtonTool;\n var edit_tool_1 = require(226 /* ./edit/edit_tool */);\n exports.EditTool = edit_tool_1.EditTool;\n var box_edit_tool_1 = require(225 /* ./edit/box_edit_tool */);\n exports.BoxEditTool = box_edit_tool_1.BoxEditTool;\n var point_draw_tool_1 = require(227 /* ./edit/point_draw_tool */);\n exports.PointDrawTool = point_draw_tool_1.PointDrawTool;\n var poly_draw_tool_1 = require(228 /* ./edit/poly_draw_tool */);\n exports.PolyDrawTool = poly_draw_tool_1.PolyDrawTool;\n var poly_edit_tool_1 = require(229 /* ./edit/poly_edit_tool */);\n exports.PolyEditTool = poly_edit_tool_1.PolyEditTool;\n var box_select_tool_1 = require(230 /* ./gestures/box_select_tool */);\n exports.BoxSelectTool = box_select_tool_1.BoxSelectTool;\n var box_zoom_tool_1 = require(231 /* ./gestures/box_zoom_tool */);\n exports.BoxZoomTool = box_zoom_tool_1.BoxZoomTool;\n var gesture_tool_1 = require(232 /* ./gestures/gesture_tool */);\n exports.GestureTool = gesture_tool_1.GestureTool;\n var lasso_select_tool_1 = require(233 /* ./gestures/lasso_select_tool */);\n exports.LassoSelectTool = lasso_select_tool_1.LassoSelectTool;\n var pan_tool_1 = require(234 /* ./gestures/pan_tool */);\n exports.PanTool = pan_tool_1.PanTool;\n var poly_select_tool_1 = require(235 /* ./gestures/poly_select_tool */);\n exports.PolySelectTool = poly_select_tool_1.PolySelectTool;\n var select_tool_1 = require(236 /* ./gestures/select_tool */);\n exports.SelectTool = select_tool_1.SelectTool;\n var tap_tool_1 = require(237 /* ./gestures/tap_tool */);\n exports.TapTool = tap_tool_1.TapTool;\n var wheel_pan_tool_1 = require(238 /* ./gestures/wheel_pan_tool */);\n exports.WheelPanTool = wheel_pan_tool_1.WheelPanTool;\n var wheel_zoom_tool_1 = require(239 /* ./gestures/wheel_zoom_tool */);\n exports.WheelZoomTool = wheel_zoom_tool_1.WheelZoomTool;\n var crosshair_tool_1 = require(241 /* ./inspectors/crosshair_tool */);\n exports.CrosshairTool = crosshair_tool_1.CrosshairTool;\n var customjs_hover_1 = require(242 /* ./inspectors/customjs_hover */);\n exports.CustomJSHover = customjs_hover_1.CustomJSHover;\n var hover_tool_1 = require(243 /* ./inspectors/hover_tool */);\n exports.HoverTool = hover_tool_1.HoverTool;\n var inspect_tool_1 = require(244 /* ./inspectors/inspect_tool */);\n exports.InspectTool = inspect_tool_1.InspectTool;\n var tool_1 = require(246 /* ./tool */);\n exports.Tool = tool_1.Tool;\n var tool_proxy_1 = require(247 /* ./tool_proxy */);\n exports.ToolProxy = tool_proxy_1.ToolProxy;\n var toolbar_1 = require(248 /* ./toolbar */);\n exports.Toolbar = toolbar_1.Toolbar;\n var toolbar_base_1 = require(249 /* ./toolbar_base */);\n exports.ToolbarBase = toolbar_base_1.ToolbarBase;\n var toolbar_box_1 = require(250 /* ./toolbar_box */);\n exports.ProxyToolbar = toolbar_box_1.ProxyToolbar;\n var toolbar_box_2 = require(250 /* ./toolbar_box */);\n exports.ToolbarBox = toolbar_box_2.ToolbarBox; \n}","/*models/tools/inspectors/crosshair_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var inspect_tool_1 = require(244 /* ./inspect_tool */);\n var span_1 = require(66 /* ../../annotations/span */);\n var p = require(15 /* core/properties */);\n var object_1 = require(32 /* core/util/object */);\n var CrosshairToolView = function (_super) {\n tslib_1.__extends(CrosshairToolView, _super);\n function CrosshairToolView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n CrosshairToolView.prototype._move = function (ev) {\n if (!this.model.active)\n return;\n var sx = ev.sx, sy = ev.sy;\n if (!this.plot_model.frame.bbox.contains(sx, sy))\n this._update_spans(null, null);\n else\n this._update_spans(sx, sy);\n };\n CrosshairToolView.prototype._move_exit = function (_e) {\n this._update_spans(null, null);\n };\n CrosshairToolView.prototype._update_spans = function (x, y) {\n var dims = this.model.dimensions;\n if (dims == 'width' || dims == 'both')\n this.model.spans.width.computed_location = y;\n if (dims == 'height' || dims == 'both')\n this.model.spans.height.computed_location = x;\n };\n return CrosshairToolView;\n }(inspect_tool_1.InspectToolView);\n exports.CrosshairToolView = CrosshairToolView;\n var CrosshairTool = function (_super) {\n tslib_1.__extends(CrosshairTool, _super);\n function CrosshairTool(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.tool_name = 'Crosshair';\n _this.icon = 'bk-tool-icon-crosshair';\n return _this;\n }\n CrosshairTool.initClass = function () {\n this.prototype.type = 'CrosshairTool';\n this.prototype.default_view = CrosshairToolView;\n this.define({\n dimensions: [\n p.Dimensions,\n 'both'\n ],\n line_color: [\n p.Color,\n 'black'\n ],\n line_width: [\n p.Number,\n 1\n ],\n line_alpha: [\n p.Number,\n 1\n ]\n });\n this.internal({\n location_units: [\n p.SpatialUnits,\n 'screen'\n ],\n render_mode: [\n p.RenderMode,\n 'css'\n ],\n spans: [p.Any]\n });\n };\n Object.defineProperty(CrosshairTool.prototype, 'tooltip', {\n get: function () {\n return this._get_dim_tooltip('Crosshair', this.dimensions);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(CrosshairTool.prototype, 'synthetic_renderers', {\n get: function () {\n return object_1.values(this.spans);\n },\n enumerable: true,\n configurable: true\n });\n CrosshairTool.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n this.spans = {\n width: new span_1.Span({\n for_hover: true,\n dimension: 'width',\n render_mode: this.render_mode,\n location_units: this.location_units,\n line_color: this.line_color,\n line_width: this.line_width,\n line_alpha: this.line_alpha\n }),\n height: new span_1.Span({\n for_hover: true,\n dimension: 'height',\n render_mode: this.render_mode,\n location_units: this.location_units,\n line_color: this.line_color,\n line_width: this.line_width,\n line_alpha: this.line_alpha\n })\n };\n };\n return CrosshairTool;\n }(inspect_tool_1.InspectTool);\n exports.CrosshairTool = CrosshairTool;\n CrosshairTool.initClass(); \n}","/*models/tools/inspectors/customjs_hover*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var model_1 = require(53 /* ../../../model */);\n var p = require(15 /* core/properties */);\n var object_1 = require(32 /* core/util/object */);\n var string_1 = require(38 /* core/util/string */);\n var CustomJSHover = function (_super) {\n tslib_1.__extends(CustomJSHover, _super);\n function CustomJSHover(attrs) {\n return _super.call(this, attrs) || this;\n }\n CustomJSHover.initClass = function () {\n this.prototype.type = 'CustomJSHover';\n this.define({\n args: [\n p.Any,\n {}\n ],\n code: [\n p.String,\n ''\n ]\n });\n };\n Object.defineProperty(CustomJSHover.prototype, 'values', {\n get: function () {\n return object_1.values(this.args);\n },\n enumerable: true,\n configurable: true\n });\n CustomJSHover.prototype._make_code = function (valname, formatname, varsname, fn) {\n // this relies on keys(args) and values(args) returning keys and values\n // in the same order\n return new (Function.bind.apply(Function, [void 0].concat(object_1.keys(this.args), [\n valname,\n formatname,\n varsname,\n 'require',\n 'exports',\n string_1.use_strict(fn)\n ])))();\n };\n CustomJSHover.prototype.format = function (value, format, special_vars) {\n var formatter = this._make_code('value', 'format', 'special_vars', this.code);\n return formatter.apply(void 0, this.values.concat([\n value,\n format,\n special_vars,\n require,\n exports\n ]));\n };\n return CustomJSHover;\n }(model_1.Model);\n exports.CustomJSHover = CustomJSHover;\n CustomJSHover.initClass(); \n}","/*models/tools/inspectors/hover_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var inspect_tool_1 = require(244 /* ./inspect_tool */);\n var tooltip_1 = require(70 /* ../../annotations/tooltip */);\n var glyph_renderer_1 = require(169 /* ../../renderers/glyph_renderer */);\n var graph_renderer_1 = require(170 /* ../../renderers/graph_renderer */);\n var util_1 = require(251 /* ../util */);\n var hittest = require(9 /* core/hittest */);\n var templating_1 = require(40 /* core/util/templating */);\n var dom_1 = require(5 /* core/dom */);\n var p = require(15 /* core/properties */);\n var color_1 = require(27 /* core/util/color */);\n var object_1 = require(32 /* core/util/object */);\n var types_1 = require(44 /* core/util/types */);\n var build_views_1 = require(4 /* core/build_views */);\n function _nearest_line_hit(i, geometry, sx, sy, dx, dy) {\n var d1 = {\n x: dx[i],\n y: dy[i]\n };\n var d2 = {\n x: dx[i + 1],\n y: dy[i + 1]\n };\n var dist1;\n var dist2;\n if (geometry.type == 'span') {\n if (geometry.direction == 'h') {\n dist1 = Math.abs(d1.x - sx);\n dist2 = Math.abs(d2.x - sx);\n } else {\n dist1 = Math.abs(d1.y - sy);\n dist2 = Math.abs(d2.y - sy);\n }\n } else {\n var s = {\n x: sx,\n y: sy\n };\n dist1 = hittest.dist_2_pts(d1, s);\n dist2 = hittest.dist_2_pts(d2, s);\n }\n if (dist1 < dist2)\n return [\n [\n d1.x,\n d1.y\n ],\n i\n ];\n else\n return [\n [\n d2.x,\n d2.y\n ],\n i + 1\n ];\n }\n exports._nearest_line_hit = _nearest_line_hit;\n function _line_hit(xs, ys, ind) {\n return [\n [\n xs[ind],\n ys[ind]\n ],\n ind\n ];\n }\n exports._line_hit = _line_hit;\n var HoverToolView = function (_super) {\n tslib_1.__extends(HoverToolView, _super);\n function HoverToolView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n HoverToolView.prototype.initialize = function (options) {\n _super.prototype.initialize.call(this, options);\n this.ttviews = {};\n };\n HoverToolView.prototype.remove = function () {\n build_views_1.remove_views(this.ttviews);\n _super.prototype.remove.call(this);\n };\n HoverToolView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n for (var _i = 0, _a = this.computed_renderers; _i < _a.length; _i++) {\n var r = _a[_i];\n // XXX: no typings\n if (r instanceof glyph_renderer_1.GlyphRenderer) {\n this.connect(r.data_source.inspect, this._update);\n } else if (r instanceof graph_renderer_1.GraphRenderer) {\n this.connect(r.node_renderer.data_source.inspect, this._update);\n this.connect(r.edge_renderer.data_source.inspect, this._update);\n }\n }\n // TODO: this.connect(this.plot_model.plot.properties.renderers.change, () => this._computed_renderers = this._ttmodels = null)\n this.connect(this.model.properties.renderers.change, function () {\n return _this._computed_renderers = _this._ttmodels = null;\n });\n this.connect(this.model.properties.names.change, function () {\n return _this._computed_renderers = _this._ttmodels = null;\n });\n this.connect(this.model.properties.tooltips.change, function () {\n return _this._ttmodels = null;\n });\n };\n HoverToolView.prototype._compute_ttmodels = function () {\n var ttmodels = {};\n var tooltips = this.model.tooltips;\n if (tooltips != null) {\n for (var _i = 0, _a = this.computed_renderers; _i < _a.length; _i++) {\n var r = _a[_i];\n if (r instanceof glyph_renderer_1.GlyphRenderer) {\n var tooltip = new tooltip_1.Tooltip({\n custom: types_1.isString(tooltips) || types_1.isFunction(tooltips),\n attachment: this.model.attachment,\n show_arrow: this.model.show_arrow\n });\n ttmodels[r.id] = tooltip;\n } else if (r instanceof graph_renderer_1.GraphRenderer) {\n var tooltip = new tooltip_1.Tooltip({\n custom: types_1.isString(tooltips) || types_1.isFunction(tooltips),\n attachment: this.model.attachment,\n show_arrow: this.model.show_arrow\n });\n /// XXX: no typings\n ttmodels[r.node_renderer.id] = tooltip;\n ttmodels[r.edge_renderer.id] = tooltip;\n }\n }\n }\n build_views_1.build_views(this.ttviews, object_1.values(ttmodels), {\n parent: this,\n plot_view: this.plot_view\n });\n return ttmodels;\n };\n Object.defineProperty(HoverToolView.prototype, 'computed_renderers', {\n get: function () {\n if (this._computed_renderers == null) {\n var renderers = this.model.renderers;\n var all_renderers = this.plot_model.plot.renderers;\n var names = this.model.names;\n this._computed_renderers = util_1.compute_renderers(renderers, all_renderers, names);\n }\n return this._computed_renderers;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(HoverToolView.prototype, 'ttmodels', {\n get: function () {\n if (this._ttmodels == null)\n this._ttmodels = this._compute_ttmodels();\n return this._ttmodels;\n },\n enumerable: true,\n configurable: true\n });\n HoverToolView.prototype._clear = function () {\n this._inspect(Infinity, Infinity);\n for (var rid in this.ttmodels) {\n var tt = this.ttmodels[rid];\n tt.clear();\n }\n };\n HoverToolView.prototype._move = function (ev) {\n if (!this.model.active)\n return;\n var sx = ev.sx, sy = ev.sy;\n if (!this.plot_model.frame.bbox.contains(sx, sy))\n this._clear();\n else\n this._inspect(sx, sy);\n };\n HoverToolView.prototype._move_exit = function () {\n this._clear();\n };\n HoverToolView.prototype._inspect = function (sx, sy) {\n var geometry;\n if (this.model.mode == 'mouse')\n geometry = {\n type: 'point',\n sx: sx,\n sy: sy\n };\n else {\n var direction = this.model.mode == 'vline' ? 'h' : 'v';\n geometry = {\n type: 'span',\n direction: direction,\n sx: sx,\n sy: sy\n };\n }\n for (var _i = 0, _a = this.computed_renderers; _i < _a.length; _i++) {\n var r = _a[_i];\n var sm = r.get_selection_manager();\n sm.inspect(this.plot_view.renderer_views[r.id], geometry);\n }\n if (this.model.callback != null)\n this._emit_callback(geometry);\n };\n HoverToolView.prototype._update = function (_a) {\n var renderer_view = _a[0], geometry = _a[1].geometry;\n if (!this.model.active)\n return;\n var tooltip = this.ttmodels[renderer_view.model.id];\n if (tooltip == null)\n return;\n tooltip.clear();\n var indices = renderer_view.model.get_selection_manager().inspectors[renderer_view.model.id];\n if (renderer_view.model instanceof glyph_renderer_1.GlyphRenderer)\n indices = renderer_view.model.view.convert_selection_to_subset(indices);\n var ds = renderer_view.model.get_selection_manager().source;\n if (indices.is_empty())\n return;\n var frame = this.plot_model.frame;\n var sx = geometry.sx, sy = geometry.sy;\n var xscale = frame.xscales[renderer_view.model.x_range_name];\n // XXX: bad class structure\n var yscale = frame.yscales[renderer_view.model.y_range_name];\n var x = xscale.invert(sx);\n var y = yscale.invert(sy);\n var glyph = renderer_view.glyph;\n // XXX\n for (var _i = 0, _b = indices.line_indices; _i < _b.length; _i++) {\n var i = _b[_i];\n var data_x = glyph._x[i + 1];\n var data_y = glyph._y[i + 1];\n var ii = i;\n var rx = void 0;\n var ry = void 0;\n switch (this.model.line_policy) {\n case 'interp': {\n // and renderer.get_interpolation_hit?\n _c = glyph.get_interpolation_hit(i, geometry), data_x = _c[0], data_y = _c[1];\n rx = xscale.compute(data_x);\n ry = yscale.compute(data_y);\n break;\n }\n case 'prev': {\n _d = _line_hit(glyph.sx, glyph.sy, i), _e = _d[0], rx = _e[0], ry = _e[1], ii = _d[1];\n break;\n }\n case 'next': {\n _f = _line_hit(glyph.sx, glyph.sy, i + 1), _g = _f[0], rx = _g[0], ry = _g[1], ii = _f[1];\n break;\n }\n case 'nearest': {\n _h = _nearest_line_hit(i, geometry, sx, sy, glyph.sx, glyph.sy), _j = _h[0], rx = _j[0], ry = _j[1], ii = _h[1];\n data_x = glyph._x[ii];\n data_y = glyph._y[ii];\n break;\n }\n default: {\n _k = [\n sx,\n sy\n ], rx = _k[0], ry = _k[1];\n }\n }\n var vars = {\n index: ii,\n x: x,\n y: y,\n sx: sx,\n sy: sy,\n data_x: data_x,\n data_y: data_y,\n rx: rx,\n ry: ry,\n indices: indices.line_indices\n };\n tooltip.add(rx, ry, this._render_tooltips(ds, ii, vars));\n }\n for (var _l = 0, _m = indices.image_indices; _l < _m.length; _l++) {\n var struct = _m[_l];\n var vars = {\n index: struct['index'],\n x: x,\n y: y,\n sx: sx,\n sy: sy\n };\n var rendered = this._render_tooltips(ds, struct, vars);\n tooltip.add(sx, sy, rendered);\n }\n for (var _o = 0, _p = indices.indices; _o < _p.length; _o++) {\n var i = _p[_o];\n // multiglyphs set additional indices, e.g. multiline_indices for different tooltips\n if (!object_1.isEmpty(indices.multiline_indices)) {\n for (var _q = 0, _r = indices.multiline_indices[i.toString()]; _q < _r.length; _q++) {\n var j = _r[_q];\n var data_x = glyph._xs[i][j];\n var data_y = glyph._ys[i][j];\n var jj = j;\n var rx = void 0;\n var ry = void 0;\n switch (this.model.line_policy) {\n case 'interp': {\n // and renderer.get_interpolation_hit?\n _s = glyph.get_interpolation_hit(i, j, geometry), data_x = _s[0], data_y = _s[1];\n rx = xscale.compute(data_x);\n ry = yscale.compute(data_y);\n break;\n }\n case 'prev': {\n _t = _line_hit(glyph.sxs[i], glyph.sys[i], j), _u = _t[0], rx = _u[0], ry = _u[1], jj = _t[1];\n break;\n }\n case 'next': {\n _v = _line_hit(glyph.sxs[i], glyph.sys[i], j + 1), _w = _v[0], rx = _w[0], ry = _w[1], jj = _v[1];\n break;\n }\n case 'nearest': {\n _z = _nearest_line_hit(j, geometry, sx, sy, glyph.sxs[i], glyph.sys[i]), _0 = _z[0], rx = _0[0], ry = _0[1], jj = _z[1];\n data_x = glyph._xs[i][jj];\n data_y = glyph._ys[i][jj];\n break;\n }\n default:\n throw new Error('should\\'t have happened');\n }\n var index = void 0;\n if (renderer_view.model instanceof glyph_renderer_1.GlyphRenderer)\n index = renderer_view.model.view.convert_indices_from_subset([i])[0];\n else\n index = i;\n // XXX: ???\n var vars = {\n index: index,\n segment_index: jj,\n x: x,\n y: y,\n sx: sx,\n sy: sy,\n data_x: data_x,\n data_y: data_y,\n indices: indices.multiline_indices\n };\n tooltip.add(rx, ry, this._render_tooltips(ds, index, vars));\n }\n } else {\n // handle non-multiglyphs\n var data_x = glyph._x != null ? glyph._x[i] : undefined;\n var data_y = glyph._y != null ? glyph._y[i] : undefined;\n var rx = void 0;\n var ry = void 0;\n if (this.model.point_policy == 'snap_to_data') {\n // and renderer.glyph.sx? and renderer.glyph.sy?\n // Pass in our screen position so we can determine which patch we're\n // over if there are discontinuous patches.\n var pt = glyph.get_anchor_point(this.model.anchor, i, [\n sx,\n sy\n ]);\n if (pt == null)\n pt = glyph.get_anchor_point('center', i, [\n sx,\n sy\n ]);\n rx = pt.x;\n ry = pt.y;\n } else\n _1 = [\n sx,\n sy\n ], rx = _1[0], ry = _1[1];\n var index = void 0;\n if (renderer_view.model instanceof glyph_renderer_1.GlyphRenderer)\n index = renderer_view.model.view.convert_indices_from_subset([i])[0];\n else\n index = i;\n var vars = {\n index: index,\n x: x,\n y: y,\n sx: sx,\n sy: sy,\n data_x: data_x,\n data_y: data_y,\n indices: indices.indices\n };\n tooltip.add(rx, ry, this._render_tooltips(ds, index, vars));\n }\n }\n var _c, _d, _e, _f, _g, _h, _j, _k, _s, _t, _u, _v, _w, _z, _0, _1;\n };\n HoverToolView.prototype._emit_callback = function (geometry) {\n for (var _i = 0, _a = this.computed_renderers; _i < _a.length; _i++) {\n var r = _a[_i];\n var index = r.data_source.inspected;\n var frame = this.plot_model.frame;\n var xscale = frame.xscales[r.x_range_name];\n var yscale = frame.yscales[r.y_range_name];\n var x = xscale.invert(geometry.sx);\n var y = yscale.invert(geometry.sy);\n var g = object_1.extend({\n x: x,\n y: y\n }, geometry);\n var callback = this.model.callback;\n var _b = [\n callback,\n {\n index: index,\n geometry: g,\n renderer: r\n }\n ], obj = _b[0], data = _b[1];\n if (types_1.isFunction(callback))\n callback(obj, data);\n else\n callback.execute(obj, data);\n }\n };\n HoverToolView.prototype._render_tooltips = function (ds, i, vars) {\n var tooltips = this.model.tooltips;\n if (types_1.isString(tooltips)) {\n var el = dom_1.div();\n el.innerHTML = templating_1.replace_placeholders(tooltips, ds, i, this.model.formatters, vars);\n return el;\n } else if (types_1.isFunction(tooltips)) {\n return tooltips(ds, vars);\n } else {\n var rows = dom_1.div({\n style: {\n display: 'table',\n borderSpacing: '2px'\n }\n });\n for (var _i = 0, tooltips_1 = tooltips; _i < tooltips_1.length; _i++) {\n var _a = tooltips_1[_i], label = _a[0], value = _a[1];\n var row = dom_1.div({ style: { display: 'table-row' } });\n rows.appendChild(row);\n var cell = void 0;\n cell = dom_1.div({\n style: { display: 'table-cell' },\n class: 'bk-tooltip-row-label'\n }, label + ': ');\n row.appendChild(cell);\n cell = dom_1.div({\n style: { display: 'table-cell' },\n class: 'bk-tooltip-row-value'\n });\n row.appendChild(cell);\n if (value.indexOf('$color') >= 0) {\n var _b = value.match(/\\$color(\\[.*\\])?:(\\w*)/), _c = _b[1], opts = _c === void 0 ? '' : _c, colname = _b[2];\n // XXX!\n var column = ds.get_column(colname);\n // XXX: change to columnar ds\n if (column == null) {\n var el_1 = dom_1.span({}, colname + ' unknown');\n cell.appendChild(el_1);\n continue;\n }\n var hex = opts.indexOf('hex') >= 0;\n var swatch = opts.indexOf('swatch') >= 0;\n var color = types_1.isNumber(i) ? column[i] : null;\n if (color == null) {\n var el_2 = dom_1.span({}, '(null)');\n cell.appendChild(el_2);\n continue;\n }\n if (hex)\n color = color_1.color2hex(color);\n var el = dom_1.span({}, color);\n cell.appendChild(el);\n if (swatch) {\n el = dom_1.span({\n class: 'bk-tooltip-color-block',\n style: { backgroundColor: color }\n }, ' ');\n cell.appendChild(el);\n }\n } else {\n var el = dom_1.span();\n el.innerHTML = templating_1.replace_placeholders(value.replace('$~', '$data_'), ds, i, this.model.formatters, vars);\n cell.appendChild(el);\n }\n }\n return rows;\n }\n };\n return HoverToolView;\n }(inspect_tool_1.InspectToolView);\n exports.HoverToolView = HoverToolView;\n var HoverTool = function (_super) {\n tslib_1.__extends(HoverTool, _super);\n function HoverTool(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.tool_name = 'Hover';\n _this.icon = 'bk-tool-icon-hover';\n return _this;\n }\n HoverTool.initClass = function () {\n this.prototype.type = 'HoverTool';\n this.prototype.default_view = HoverToolView;\n this.define({\n tooltips: [\n p.Any,\n [\n [\n 'index',\n '$index'\n ],\n [\n 'data (x, y)',\n '($x, $y)'\n ],\n [\n 'screen (x, y)',\n '($sx, $sy)'\n ]\n ]\n ],\n formatters: [\n p.Any,\n {}\n ],\n renderers: [\n p.Any,\n 'auto'\n ],\n names: [\n p.Array,\n []\n ],\n mode: [\n p.String,\n 'mouse'\n ],\n point_policy: [\n p.String,\n 'snap_to_data'\n ],\n line_policy: [\n p.String,\n 'nearest'\n ],\n show_arrow: [\n p.Boolean,\n true\n ],\n anchor: [\n p.String,\n 'center'\n ],\n attachment: [\n p.String,\n 'horizontal'\n ],\n callback: [p.Any]\n });\n };\n return HoverTool;\n }(inspect_tool_1.InspectTool);\n exports.HoverTool = HoverTool;\n HoverTool.initClass(); \n}","/*models/tools/inspectors/inspect_tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var button_tool_1 = require(224 /* ../button_tool */);\n var on_off_button_1 = require(245 /* ../on_off_button */);\n var p = require(15 /* core/properties */);\n var InspectToolView = function (_super) {\n tslib_1.__extends(InspectToolView, _super);\n function InspectToolView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return InspectToolView;\n }(button_tool_1.ButtonToolView);\n exports.InspectToolView = InspectToolView;\n var InspectTool = function (_super) {\n tslib_1.__extends(InspectTool, _super);\n function InspectTool(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this.event_type = 'move';\n return _this;\n }\n InspectTool.initClass = function () {\n this.prototype.type = 'InspectTool';\n this.prototype.button_view = on_off_button_1.OnOffButtonView;\n this.define({\n toggleable: [\n p.Bool,\n true\n ]\n });\n this.override({ active: true });\n };\n return InspectTool;\n }(button_tool_1.ButtonTool);\n exports.InspectTool = InspectTool;\n InspectTool.initClass(); \n}","/*models/tools/on_off_button*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var button_tool_1 = require(224 /* ./button_tool */);\n var OnOffButtonView = function (_super) {\n tslib_1.__extends(OnOffButtonView, _super);\n function OnOffButtonView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n OnOffButtonView.prototype.render = function () {\n _super.prototype.render.call(this);\n if (this.model.active)\n this.el.classList.add('bk-active');\n else\n this.el.classList.remove('bk-active');\n };\n OnOffButtonView.prototype._clicked = function () {\n var active = this.model.active;\n this.model.active = !active;\n };\n return OnOffButtonView;\n }(button_tool_1.ButtonToolButtonView);\n exports.OnOffButtonView = OnOffButtonView; \n}","/*models/tools/tool*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var p = require(15 /* core/properties */);\n var view_1 = require(48 /* core/view */);\n var array_1 = require(21 /* core/util/array */);\n var model_1 = require(53 /* ../../model */);\n var ToolView = function (_super) {\n tslib_1.__extends(ToolView, _super);\n function ToolView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n ToolView.prototype.initialize = function (options) {\n _super.prototype.initialize.call(this, options);\n this.plot_view = options.plot_view;\n };\n Object.defineProperty(ToolView.prototype, 'plot_model', {\n get: function () {\n return this.plot_view.model;\n },\n enumerable: true,\n configurable: true\n });\n ToolView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.model.properties.active.change, function () {\n if (_this.model.active)\n _this.activate();\n else\n _this.deactivate();\n });\n };\n // activate is triggered by toolbar ui actions\n ToolView.prototype.activate = function () {\n };\n // deactivate is triggered by toolbar ui actions\n ToolView.prototype.deactivate = function () {\n };\n return ToolView;\n }(view_1.View);\n exports.ToolView = ToolView;\n var Tool = function (_super) {\n tslib_1.__extends(Tool, _super);\n function Tool(attrs) {\n return _super.call(this, attrs) || this;\n }\n Tool.initClass = function () {\n this.prototype.type = 'Tool';\n this.internal({\n active: [\n p.Boolean,\n false\n ]\n });\n };\n Object.defineProperty(Tool.prototype, 'synthetic_renderers', {\n get: function () {\n return [];\n },\n enumerable: true,\n configurable: true\n });\n // utility function to return a tool name, modified\n // by the active dimenions. Used by tools that have dimensions\n Tool.prototype._get_dim_tooltip = function (name, dims) {\n switch (dims) {\n case 'width':\n return name + ' (x-axis)';\n case 'height':\n return name + ' (y-axis)';\n case 'both':\n return name;\n }\n };\n // utility function to get limits along both dimensions, given\n // optional dimensional constraints\n Tool.prototype._get_dim_limits = function (_a, _b, frame, dims) {\n var sx0 = _a[0], sy0 = _a[1];\n var sx1 = _b[0], sy1 = _b[1];\n var hr = frame.bbox.h_range;\n var sxlim;\n if (dims == 'width' || dims == 'both') {\n sxlim = [\n array_1.min([\n sx0,\n sx1\n ]),\n array_1.max([\n sx0,\n sx1\n ])\n ];\n sxlim = [\n array_1.max([\n sxlim[0],\n hr.start\n ]),\n array_1.min([\n sxlim[1],\n hr.end\n ])\n ];\n } else\n sxlim = [\n hr.start,\n hr.end\n ];\n var vr = frame.bbox.v_range;\n var sylim;\n if (dims == 'height' || dims == 'both') {\n sylim = [\n array_1.min([\n sy0,\n sy1\n ]),\n array_1.max([\n sy0,\n sy1\n ])\n ];\n sylim = [\n array_1.max([\n sylim[0],\n vr.start\n ]),\n array_1.min([\n sylim[1],\n vr.end\n ])\n ];\n } else\n sylim = [\n vr.start,\n vr.end\n ];\n return [\n sxlim,\n sylim\n ];\n };\n return Tool;\n }(model_1.Model);\n exports.Tool = Tool;\n Tool.initClass(); \n}","/*models/tools/tool_proxy*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var p = require(15 /* core/properties */);\n var signaling_1 = require(19 /* core/signaling */);\n var model_1 = require(53 /* ../../model */);\n var ToolProxy = function (_super) {\n tslib_1.__extends(ToolProxy, _super);\n function ToolProxy(attrs) {\n return _super.call(this, attrs) || this;\n }\n ToolProxy.initClass = function () {\n this.prototype.type = 'ToolProxy';\n this.define({\n tools: [\n p.Array,\n []\n ],\n active: [\n p.Bool,\n false\n ],\n disabled: [\n p.Bool,\n false\n ]\n });\n };\n Object.defineProperty(ToolProxy.prototype, 'button_view', {\n // Operates all the tools given only one button\n get: function () {\n return this.tools[0].button_view;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(ToolProxy.prototype, 'event_type', {\n get: function () {\n return this.tools[0].event_type;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(ToolProxy.prototype, 'tooltip', {\n get: function () {\n return this.tools[0].tool_name;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(ToolProxy.prototype, 'tool_name', {\n get: function () {\n return this.tools[0].tool_name;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(ToolProxy.prototype, 'icon', {\n get: function () {\n return this.tools[0].icon;\n },\n enumerable: true,\n configurable: true\n });\n ToolProxy.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n this.do = new signaling_1.Signal0(this, 'do');\n };\n ToolProxy.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.do, function () {\n return _this.doit();\n });\n this.connect(this.properties.active.change, function () {\n return _this.set_active();\n });\n };\n ToolProxy.prototype.doit = function () {\n for (var _i = 0, _a = this.tools; _i < _a.length; _i++) {\n var tool = _a[_i];\n tool.do.emit();\n }\n };\n ToolProxy.prototype.set_active = function () {\n for (var _i = 0, _a = this.tools; _i < _a.length; _i++) {\n var tool = _a[_i];\n tool.active = this.active;\n }\n };\n return ToolProxy;\n }(model_1.Model);\n exports.ToolProxy = ToolProxy;\n ToolProxy.initClass(); \n}","/*models/tools/toolbar*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var p = require(15 /* core/properties */);\n var logging_1 = require(14 /* core/logging */);\n var types_1 = require(44 /* core/util/types */);\n var array_1 = require(21 /* core/util/array */);\n var action_tool_1 = require(216 /* ./actions/action_tool */);\n var help_tool_1 = require(217 /* ./actions/help_tool */);\n var gesture_tool_1 = require(232 /* ./gestures/gesture_tool */);\n var inspect_tool_1 = require(244 /* ./inspectors/inspect_tool */);\n var toolbar_base_1 = require(249 /* ./toolbar_base */);\n var Toolbar = function (_super) {\n tslib_1.__extends(Toolbar, _super);\n function Toolbar(attrs) {\n return _super.call(this, attrs) || this;\n }\n Toolbar.initClass = function () {\n this.prototype.type = 'Toolbar';\n this.prototype.default_view = toolbar_base_1.ToolbarBaseView;\n this.define({\n active_drag: [\n p.Any,\n 'auto'\n ],\n active_inspect: [\n p.Any,\n 'auto'\n ],\n active_scroll: [\n p.Any,\n 'auto'\n ],\n active_tap: [\n p.Any,\n 'auto'\n ]\n });\n };\n Toolbar.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n this._init_tools();\n };\n Toolbar.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.properties.tools.change, function () {\n return _this._init_tools();\n });\n };\n Toolbar.prototype._init_tools = function () {\n var _this = this;\n var _loop_1 = function (tool) {\n if (tool instanceof inspect_tool_1.InspectTool) {\n if (!array_1.any(this_1.inspectors, function (t) {\n return t.id == tool.id;\n })) {\n this_1.inspectors = this_1.inspectors.concat([tool]);\n }\n } else if (tool instanceof help_tool_1.HelpTool) {\n if (!array_1.any(this_1.help, function (t) {\n return t.id == tool.id;\n })) {\n this_1.help = this_1.help.concat([tool]);\n }\n } else if (tool instanceof action_tool_1.ActionTool) {\n if (!array_1.any(this_1.actions, function (t) {\n return t.id == tool.id;\n })) {\n this_1.actions = this_1.actions.concat([tool]);\n }\n } else if (tool instanceof gesture_tool_1.GestureTool) {\n var event_types = void 0;\n var multi = void 0;\n if (types_1.isString(tool.event_type)) {\n event_types = [tool.event_type];\n multi = false;\n } else {\n event_types = tool.event_type || [];\n multi = true;\n }\n for (var _i = 0, event_types_1 = event_types; _i < event_types_1.length; _i++) {\n var et = event_types_1[_i];\n if (!(et in this_1.gestures)) {\n logging_1.logger.warn('Toolbar: unknown event type \\'' + et + '\\' for tool: ' + tool.type + ' (' + tool.id + ')');\n continue;\n }\n if (multi)\n et = 'multi';\n if (!array_1.any(this_1.gestures[et].tools, function (t) {\n return t.id == tool.id;\n }))\n this_1.gestures[et].tools = this_1.gestures[et].tools.concat([tool]);\n this_1.connect(tool.properties.active.change, this_1._active_change.bind(this_1, tool));\n }\n }\n };\n var this_1 = this;\n for (var _i = 0, _a = this.tools; _i < _a.length; _i++) {\n var tool = _a[_i];\n _loop_1(tool);\n }\n if (this.active_inspect == 'auto') {\n } else if (this.active_inspect instanceof inspect_tool_1.InspectTool) {\n for (var _b = 0, _c = this.inspectors; _b < _c.length; _b++) {\n var inspector = _c[_b];\n if (inspector != this.active_inspect)\n inspector.active = false;\n }\n } else if (types_1.isArray(this.active_inspect)) {\n for (var _d = 0, _e = this.inspectors; _d < _e.length; _d++) {\n var inspector = _e[_d];\n if (!array_1.includes(this.active_inspect, inspector))\n inspector.active = false;\n }\n } else if (this.active_inspect == null) {\n for (var _f = 0, _g = this.inspectors; _f < _g.length; _f++) {\n var inspector = _g[_f];\n inspector.active = false;\n }\n }\n var _activate_gesture = function (tool) {\n if (tool.active) {\n // tool was activated by a proxy, but we need to finish configuration manually\n _this._active_change(tool);\n } else\n tool.active = true;\n };\n for (var et in this.gestures) {\n var gesture = this.gestures[et];\n if (gesture.tools.length == 0)\n continue;\n gesture.tools = array_1.sortBy(gesture.tools, function (tool) {\n return tool.default_order;\n });\n if (et == 'tap') {\n if (this.active_tap == null)\n continue;\n if (this.active_tap == 'auto')\n _activate_gesture(gesture.tools[0]);\n else\n _activate_gesture(this.active_tap);\n }\n if (et == 'pan') {\n if (this.active_drag == null)\n continue;\n if (this.active_drag == 'auto')\n _activate_gesture(gesture.tools[0]);\n else\n _activate_gesture(this.active_drag);\n }\n if (et == 'pinch' || et == 'scroll') {\n if (this.active_scroll == null || this.active_scroll == 'auto')\n continue;\n _activate_gesture(this.active_scroll);\n }\n }\n };\n return Toolbar;\n }(toolbar_base_1.ToolbarBase);\n exports.Toolbar = Toolbar;\n Toolbar.initClass(); \n}","/*models/tools/toolbar_base*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var logging_1 = require(14 /* core/logging */);\n var dom_1 = require(5 /* core/dom */);\n var build_views_1 = require(4 /* core/build_views */);\n var p = require(15 /* core/properties */);\n var dom_view_1 = require(6 /* core/dom_view */);\n var types_1 = require(44 /* core/util/types */);\n var model_1 = require(53 /* model */);\n var ToolbarBaseView = function (_super) {\n tslib_1.__extends(ToolbarBaseView, _super);\n function ToolbarBaseView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n ToolbarBaseView.prototype.initialize = function (options) {\n _super.prototype.initialize.call(this, options);\n this._tool_button_views = {};\n this._build_tool_button_views();\n };\n ToolbarBaseView.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.model.properties.tools.change, function () {\n return _this._build_tool_button_views();\n });\n };\n ToolbarBaseView.prototype.remove = function () {\n build_views_1.remove_views(this._tool_button_views);\n _super.prototype.remove.call(this);\n };\n ToolbarBaseView.prototype._build_tool_button_views = function () {\n var tools = this.model._proxied_tools != null ? this.model._proxied_tools : this.model.tools;\n // XXX\n build_views_1.build_views(this._tool_button_views, tools, { parent: this }, function (tool) {\n return tool.button_view;\n });\n };\n ToolbarBaseView.prototype.render = function () {\n var _this = this;\n dom_1.empty(this.el);\n this.el.classList.add('bk-toolbar');\n this.el.classList.add('bk-toolbar-' + this.model.toolbar_location);\n if (this.model.logo != null) {\n var cls = this.model.logo === 'grey' ? 'bk-grey' : null;\n var logo = dom_1.a({\n href: 'https://bokeh.pydata.org/',\n target: '_blank',\n class: [\n 'bk-logo',\n 'bk-logo-small',\n cls\n ]\n });\n this.el.appendChild(logo);\n }\n var bars = [];\n var el = function (tool) {\n return _this._tool_button_views[tool.id].el;\n };\n var gestures = this.model.gestures;\n for (var et in gestures) {\n bars.push(gestures[et].tools.map(el));\n }\n bars.push(this.model.actions.map(el));\n bars.push(this.model.inspectors.filter(function (tool) {\n return tool.toggleable;\n }).map(el));\n bars.push(this.model.help.map(el));\n for (var _i = 0, bars_1 = bars; _i < bars_1.length; _i++) {\n var bar = bars_1[_i];\n if (bar.length !== 0) {\n var el_1 = dom_1.div({ class: 'bk-button-bar' }, bar);\n this.el.appendChild(el_1);\n }\n }\n };\n return ToolbarBaseView;\n }(dom_view_1.DOMView);\n exports.ToolbarBaseView = ToolbarBaseView;\n var ToolbarBase = function (_super) {\n tslib_1.__extends(ToolbarBase, _super);\n function ToolbarBase(attrs) {\n return _super.call(this, attrs) || this;\n }\n ToolbarBase.initClass = function () {\n this.prototype.type = 'ToolbarBase';\n this.prototype.default_view = ToolbarBaseView;\n this.define({\n tools: [\n p.Array,\n []\n ],\n logo: [\n p.String,\n 'normal'\n ]\n });\n this.internal({\n gestures: [\n p.Any,\n function () {\n return {\n pan: {\n tools: [],\n active: null\n },\n scroll: {\n tools: [],\n active: null\n },\n pinch: {\n tools: [],\n active: null\n },\n tap: {\n tools: [],\n active: null\n },\n doubletap: {\n tools: [],\n active: null\n },\n press: {\n tools: [],\n active: null\n },\n rotate: {\n tools: [],\n active: null\n },\n move: {\n tools: [],\n active: null\n },\n multi: {\n tools: [],\n active: null\n }\n };\n }\n ],\n actions: [\n p.Array,\n []\n ],\n inspectors: [\n p.Array,\n []\n ],\n help: [\n p.Array,\n []\n ],\n toolbar_location: [\n p.Location,\n 'right'\n ]\n });\n };\n Object.defineProperty(ToolbarBase.prototype, 'horizontal', {\n get: function () {\n return this.toolbar_location === 'above' || this.toolbar_location === 'below';\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(ToolbarBase.prototype, 'vertical', {\n get: function () {\n return this.toolbar_location === 'left' || this.toolbar_location === 'right';\n },\n enumerable: true,\n configurable: true\n });\n ToolbarBase.prototype._active_change = function (tool) {\n var event_type = tool.event_type;\n if (event_type == null)\n return;\n var event_types = types_1.isString(event_type) ? [event_type] : event_type;\n for (var _i = 0, event_types_1 = event_types; _i < event_types_1.length; _i++) {\n var et = event_types_1[_i];\n if (tool.active) {\n var currently_active_tool = this.gestures[et].active;\n if (currently_active_tool != null && tool != currently_active_tool) {\n logging_1.logger.debug('Toolbar: deactivating tool: ' + currently_active_tool.type + ' (' + currently_active_tool.id + ') for event type \\'' + et + '\\'');\n currently_active_tool.active = false;\n }\n this.gestures[et].active = tool;\n logging_1.logger.debug('Toolbar: activating tool: ' + tool.type + ' (' + tool.id + ') for event type \\'' + et + '\\'');\n } else\n this.gestures[et].active = null;\n }\n };\n return ToolbarBase;\n }(model_1.Model);\n exports.ToolbarBase = ToolbarBase;\n ToolbarBase.initClass(); \n}","/*models/tools/toolbar_box*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var p = require(15 /* core/properties */);\n var dom_1 = require(5 /* core/dom */);\n var logging_1 = require(14 /* core/logging */);\n var types_1 = require(44 /* core/util/types */);\n var array_1 = require(21 /* core/util/array */);\n var action_tool_1 = require(216 /* ./actions/action_tool */);\n var help_tool_1 = require(217 /* ./actions/help_tool */);\n var gesture_tool_1 = require(232 /* ./gestures/gesture_tool */);\n var inspect_tool_1 = require(244 /* ./inspectors/inspect_tool */);\n var toolbar_base_1 = require(249 /* ./toolbar_base */);\n var tool_proxy_1 = require(247 /* ./tool_proxy */);\n var layout_dom_1 = require(146 /* ../layouts/layout_dom */);\n var build_views_1 = require(4 /* core/build_views */);\n var ProxyToolbar = function (_super) {\n tslib_1.__extends(ProxyToolbar, _super);\n function ProxyToolbar(attrs) {\n return _super.call(this, attrs) || this;\n }\n ProxyToolbar.initClass = function () {\n this.prototype.type = 'ProxyToolbar';\n };\n ProxyToolbar.prototype.initialize = function () {\n _super.prototype.initialize.call(this);\n this._init_tools();\n this._merge_tools();\n };\n ProxyToolbar.prototype._init_tools = function () {\n var _loop_1 = function (tool) {\n if (tool instanceof inspect_tool_1.InspectTool) {\n if (!array_1.any(this_1.inspectors, function (t) {\n return t.id == tool.id;\n }))\n this_1.inspectors = this_1.inspectors.concat([tool]);\n } else if (tool instanceof help_tool_1.HelpTool) {\n if (!array_1.any(this_1.help, function (t) {\n return t.id == tool.id;\n }))\n this_1.help = this_1.help.concat([tool]);\n } else if (tool instanceof action_tool_1.ActionTool) {\n if (!array_1.any(this_1.actions, function (t) {\n return t.id == tool.id;\n }))\n this_1.actions = this_1.actions.concat([tool]);\n } else if (tool instanceof gesture_tool_1.GestureTool) {\n var event_types = void 0;\n var multi = void 0;\n if (types_1.isString(tool.event_type)) {\n event_types = [tool.event_type];\n multi = false;\n } else {\n event_types = tool.event_type || [];\n multi = true;\n }\n for (var _i = 0, event_types_1 = event_types; _i < event_types_1.length; _i++) {\n var et = event_types_1[_i];\n if (!(et in this_1.gestures)) {\n logging_1.logger.warn('Toolbar: unknown event type \\'' + et + '\\' for tool: ' + tool.type + ' (' + tool.id + ')');\n continue;\n }\n if (multi)\n et = 'multi';\n if (!array_1.any(this_1.gestures[et].tools, function (t) {\n return t.id == tool.id;\n }))\n this_1.gestures[et].tools = this_1.gestures[et].tools.concat([tool]);\n }\n }\n };\n var this_1 = this;\n for (var _i = 0, _a = this.tools; _i < _a.length; _i++) {\n var tool = _a[_i];\n _loop_1(tool);\n }\n };\n ProxyToolbar.prototype._merge_tools = function () {\n var _this = this;\n // Go through all the tools on the toolbar and replace them with\n // a proxy e.g. PanTool, BoxSelectTool, etc.\n this._proxied_tools = [];\n var inspectors = {};\n var actions = {};\n var gestures = {};\n var new_help_tools = [];\n var new_help_urls = [];\n for (var _i = 0, _a = this.help; _i < _a.length; _i++) {\n var helptool = _a[_i];\n if (!array_1.includes(new_help_urls, helptool.redirect)) {\n new_help_tools.push(helptool);\n new_help_urls.push(helptool.redirect);\n }\n }\n (_b = this._proxied_tools).push.apply(_b, new_help_tools);\n this.help = new_help_tools;\n for (var event_type in this.gestures) {\n var gesture = this.gestures[event_type];\n if (!(event_type in gestures)) {\n gestures[event_type] = {};\n }\n for (var _c = 0, _d = gesture.tools; _c < _d.length; _c++) {\n var tool = _d[_c];\n if (!(tool.type in gestures[event_type])) {\n gestures[event_type][tool.type] = [];\n }\n gestures[event_type][tool.type].push(tool);\n }\n }\n for (var _e = 0, _f = this.inspectors; _e < _f.length; _e++) {\n var tool = _f[_e];\n if (!(tool.type in inspectors)) {\n inspectors[tool.type] = [];\n }\n inspectors[tool.type].push(tool);\n }\n for (var _g = 0, _h = this.actions; _g < _h.length; _g++) {\n var tool = _h[_g];\n if (!(tool.type in actions)) {\n actions[tool.type] = [];\n }\n actions[tool.type].push(tool);\n }\n // Add a proxy for each of the groups of tools.\n var make_proxy = function (tools, active) {\n if (active === void 0) {\n active = false;\n }\n var proxy = new tool_proxy_1.ToolProxy({\n tools: tools,\n active: active\n });\n _this._proxied_tools.push(proxy);\n return proxy;\n };\n for (var event_type in gestures) {\n var gesture = this.gestures[event_type];\n gesture.tools = [];\n for (var tool_type in gestures[event_type]) {\n var tools = gestures[event_type][tool_type];\n if (tools.length > 0) {\n var proxy = make_proxy(tools);\n gesture.tools.push(proxy);\n this.connect(proxy.properties.active.change, this._active_change.bind(this, proxy));\n }\n }\n }\n this.actions = [];\n for (var tool_type in actions) {\n var tools = actions[tool_type];\n if (tools.length > 0)\n this.actions.push(make_proxy(tools)); // XXX\n }\n this.inspectors = [];\n for (var tool_type in inspectors) {\n var tools = inspectors[tool_type];\n if (tools.length > 0)\n this.inspectors.push(make_proxy(tools, true)); // XXX\n }\n for (var et in this.gestures) {\n var gesture = this.gestures[et];\n if (gesture.tools.length == 0)\n continue;\n gesture.tools = array_1.sortBy(gesture.tools, function (tool) {\n return tool.default_order;\n });\n if (!(et == 'pinch' || et == 'scroll' || et == 'multi'))\n gesture.tools[0].active = true;\n }\n var _b;\n };\n return ProxyToolbar;\n }(toolbar_base_1.ToolbarBase);\n exports.ProxyToolbar = ProxyToolbar;\n ProxyToolbar.initClass();\n var ToolbarBoxView = function (_super) {\n tslib_1.__extends(ToolbarBoxView, _super);\n function ToolbarBoxView() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n ToolbarBoxView.prototype.initialize = function (options) {\n _super.prototype.initialize.call(this, options);\n this.model.toolbar.toolbar_location = this.model.toolbar_location;\n this._toolbar_views = {};\n build_views_1.build_views(this._toolbar_views, [this.model.toolbar], { parent: this });\n };\n ToolbarBoxView.prototype.remove = function () {\n build_views_1.remove_views(this._toolbar_views);\n _super.prototype.remove.call(this);\n };\n ToolbarBoxView.prototype.css_classes = function () {\n return _super.prototype.css_classes.call(this).concat('bk-toolbar-box');\n };\n ToolbarBoxView.prototype.render = function () {\n _super.prototype.render.call(this);\n var toolbar = this._toolbar_views[this.model.toolbar.id];\n toolbar.render();\n dom_1.empty(this.el);\n this.el.appendChild(toolbar.el);\n };\n ToolbarBoxView.prototype.get_width = function () {\n return this.model.toolbar.vertical ? 30 : null;\n };\n ToolbarBoxView.prototype.get_height = function () {\n return this.model.toolbar.horizontal ? 30 : null;\n };\n return ToolbarBoxView;\n }(layout_dom_1.LayoutDOMView);\n exports.ToolbarBoxView = ToolbarBoxView;\n var ToolbarBox = function (_super) {\n tslib_1.__extends(ToolbarBox, _super);\n function ToolbarBox(attrs) {\n return _super.call(this, attrs) || this;\n }\n ToolbarBox.initClass = function () {\n this.prototype.type = 'ToolbarBox';\n this.prototype.default_view = ToolbarBoxView;\n this.define({\n toolbar: [p.Instance],\n toolbar_location: [\n p.Location,\n 'right'\n ]\n });\n };\n Object.defineProperty(ToolbarBox.prototype, 'sizing_mode', {\n // XXX: we are overriding LayoutDOM.sizing_mode here. That's a bad\n // hack, but currently every layoutable is allowed to have its\n // sizing mode configured, which is wrong. Another example of this\n // is PlotCanvas which only works with strech_both sizing mode.\n get: function () {\n switch (this.toolbar_location) {\n case 'above':\n case 'below': {\n return 'scale_width';\n }\n case 'left':\n case 'right': {\n return 'scale_height';\n }\n }\n },\n enumerable: true,\n configurable: true\n });\n return ToolbarBox;\n }(layout_dom_1.LayoutDOM);\n exports.ToolbarBox = ToolbarBox;\n ToolbarBox.initClass(); \n}","/*models/tools/util*/\nfunction _(require, module, exports) {\n var glyph_renderer_1 = require(169 /* ../renderers/glyph_renderer */);\n var graph_renderer_1 = require(170 /* ../renderers/graph_renderer */);\n var array_1 = require(21 /* core/util/array */);\n function compute_renderers(renderers, all_renderers, names) {\n if (renderers == null) {\n return [];\n }\n var result;\n if (renderers == 'auto') {\n result = all_renderers.filter(function (r) {\n return r instanceof glyph_renderer_1.GlyphRenderer || r instanceof graph_renderer_1.GraphRenderer;\n });\n } else {\n result = renderers;\n }\n if (names.length > 0) {\n result = result.filter(function (r) {\n return array_1.includes(names, r.name);\n });\n }\n return result;\n }\n exports.compute_renderers = compute_renderers; \n}","/*models/transforms/customjs_transform*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var transform_1 = require(259 /* ./transform */);\n var p = require(15 /* core/properties */);\n var object_1 = require(32 /* core/util/object */);\n var string_1 = require(38 /* core/util/string */);\n var CustomJSTransform = function (_super) {\n tslib_1.__extends(CustomJSTransform, _super);\n function CustomJSTransform(attrs) {\n return _super.call(this, attrs) || this;\n }\n CustomJSTransform.initClass = function () {\n this.prototype.type = 'CustomJSTransform';\n this.define({\n args: [\n p.Any,\n {}\n ],\n func: [\n p.String,\n ''\n ],\n v_func: [\n p.String,\n ''\n ],\n use_strict: [\n p.Boolean,\n false\n ]\n });\n };\n Object.defineProperty(CustomJSTransform.prototype, 'names', {\n get: function () {\n return object_1.keys(this.args);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(CustomJSTransform.prototype, 'values', {\n get: function () {\n return object_1.values(this.args);\n },\n enumerable: true,\n configurable: true\n });\n CustomJSTransform.prototype._make_transform = function (name, func) {\n var code = this.use_strict ? string_1.use_strict(func) : func;\n return new (Function.bind.apply(Function, [void 0].concat(this.names, [\n name,\n 'require',\n 'exports',\n code\n ])))();\n };\n Object.defineProperty(CustomJSTransform.prototype, 'scalar_transform', {\n get: function () {\n return this._make_transform('x', this.func);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(CustomJSTransform.prototype, 'vector_transform', {\n get: function () {\n return this._make_transform('xs', this.v_func);\n },\n enumerable: true,\n configurable: true\n });\n CustomJSTransform.prototype.compute = function (x) {\n return this.scalar_transform.apply(this, this.values.concat([\n x,\n require,\n {}\n ]));\n };\n CustomJSTransform.prototype.v_compute = function (xs) {\n return this.vector_transform.apply(this, this.values.concat([\n xs,\n require,\n {}\n ]));\n };\n return CustomJSTransform;\n }(transform_1.Transform);\n exports.CustomJSTransform = CustomJSTransform;\n CustomJSTransform.initClass(); \n}","/*models/transforms/dodge*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var transform_1 = require(259 /* ./transform */);\n var factor_range_1 = require(165 /* ../ranges/factor_range */);\n var p = require(15 /* core/properties */);\n var types_1 = require(44 /* core/util/types */);\n var Dodge = function (_super) {\n tslib_1.__extends(Dodge, _super);\n function Dodge(attrs) {\n return _super.call(this, attrs) || this;\n }\n Dodge.initClass = function () {\n this.prototype.type = 'Dodge';\n this.define({\n value: [\n p.Number,\n 0\n ],\n range: [p.Instance]\n });\n };\n // XXX: this is repeated in ./jitter.ts\n Dodge.prototype.v_compute = function (xs0) {\n var xs;\n if (this.range instanceof factor_range_1.FactorRange)\n xs = this.range.v_synthetic(xs0);\n else if (types_1.isArrayableOf(xs0, types_1.isNumber))\n xs = xs0;\n else\n throw new Error('unexpected');\n var result = new Float64Array(xs.length);\n for (var i = 0; i < xs.length; i++) {\n var x = xs[i];\n result[i] = this._compute(x);\n }\n return result;\n };\n Dodge.prototype.compute = function (x) {\n if (this.range instanceof factor_range_1.FactorRange)\n return this._compute(this.range.synthetic(x));\n else if (types_1.isNumber(x))\n return this._compute(x);\n else\n throw new Error('unexpected');\n };\n Dodge.prototype._compute = function (x) {\n return x + this.value;\n };\n return Dodge;\n }(transform_1.Transform);\n exports.Dodge = Dodge;\n Dodge.initClass(); \n}","/*models/transforms/index*/\nfunction _(require, module, exports) {\n var customjs_transform_1 = require(252 /* ./customjs_transform */);\n exports.CustomJSTransform = customjs_transform_1.CustomJSTransform;\n var dodge_1 = require(253 /* ./dodge */);\n exports.Dodge = dodge_1.Dodge;\n var interpolator_1 = require(255 /* ./interpolator */);\n exports.Interpolator = interpolator_1.Interpolator;\n var jitter_1 = require(256 /* ./jitter */);\n exports.Jitter = jitter_1.Jitter;\n var linear_interpolator_1 = require(257 /* ./linear_interpolator */);\n exports.LinearInterpolator = linear_interpolator_1.LinearInterpolator;\n var step_interpolator_1 = require(258 /* ./step_interpolator */);\n exports.StepInterpolator = step_interpolator_1.StepInterpolator;\n var transform_1 = require(259 /* ./transform */);\n exports.Transform = transform_1.Transform; \n}","/*models/transforms/interpolator*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var transform_1 = require(259 /* ./transform */);\n var p = require(15 /* core/properties */);\n var array_1 = require(21 /* core/util/array */);\n var types_1 = require(44 /* core/util/types */);\n var Interpolator = function (_super) {\n tslib_1.__extends(Interpolator, _super);\n function Interpolator(attrs) {\n var _this = _super.call(this, attrs) || this;\n _this._sorted_dirty = true;\n return _this;\n }\n Interpolator.initClass = function () {\n this.prototype.type = 'Interpolator';\n this.define({\n x: [p.Any],\n y: [p.Any],\n data: [p.Any],\n clip: [\n p.Bool,\n true\n ]\n });\n };\n Interpolator.prototype.connect_signals = function () {\n var _this = this;\n _super.prototype.connect_signals.call(this);\n this.connect(this.change, function () {\n return _this._sorted_dirty = true;\n });\n };\n Interpolator.prototype.v_compute = function (xs) {\n var result = new Float64Array(xs.length);\n for (var i = 0; i < xs.length; i++) {\n var x = xs[i];\n result[i] = this.compute(x);\n }\n return result;\n };\n Interpolator.prototype.sort = function (descending) {\n if (descending === void 0) {\n descending = false;\n }\n if (!this._sorted_dirty)\n return;\n var tsx;\n var tsy;\n if (types_1.isString(this.x) && types_1.isString(this.y) && this.data != null) {\n var column_names = this.data.columns();\n if (!array_1.includes(column_names, this.x))\n throw new Error('The x parameter does not correspond to a valid column name defined in the data parameter');\n if (!array_1.includes(column_names, this.y))\n throw new Error('The y parameter does not correspond to a valid column name defined in the data parameter');\n tsx = this.data.get_column(this.x);\n tsy = this.data.get_column(this.y);\n } else if (types_1.isArray(this.x) && types_1.isArray(this.y)) {\n tsx = this.x;\n tsy = this.y;\n } else {\n throw new Error('parameters \\'x\\' and \\'y\\' must be both either string fields or arrays');\n }\n if (tsx.length !== tsy.length)\n throw new Error('The length for x and y do not match');\n if (tsx.length < 2)\n throw new Error('x and y must have at least two elements to support interpolation');\n // The following sorting code is referenced from:\n // http://stackoverflow.com/questions/11499268/sort-two-arrays-the-same-way\n var list = [];\n for (var j in tsx) {\n list.push({\n x: tsx[j],\n y: tsy[j]\n });\n }\n if (descending)\n list.sort(function (a, b) {\n return a.x > b.x ? -1 : a.x == b.x ? 0 : 1;\n });\n else\n list.sort(function (a, b) {\n return a.x < b.x ? -1 : a.x == b.x ? 0 : 1;\n });\n this._x_sorted = [];\n this._y_sorted = [];\n for (var _i = 0, list_1 = list; _i < list_1.length; _i++) {\n var _a = list_1[_i], x = _a.x, y = _a.y;\n this._x_sorted.push(x);\n this._y_sorted.push(y);\n }\n this._sorted_dirty = false;\n };\n return Interpolator;\n }(transform_1.Transform);\n exports.Interpolator = Interpolator;\n Interpolator.initClass(); \n}","/*models/transforms/jitter*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var transform_1 = require(259 /* ./transform */);\n var factor_range_1 = require(165 /* ../ranges/factor_range */);\n var types_1 = require(44 /* core/util/types */);\n var p = require(15 /* core/properties */);\n var bokeh_math = require(31 /* core/util/math */);\n var Jitter = function (_super) {\n tslib_1.__extends(Jitter, _super);\n function Jitter(attrs) {\n return _super.call(this, attrs) || this;\n }\n Jitter.initClass = function () {\n this.prototype.type = 'Jitter';\n this.define({\n mean: [\n p.Number,\n 0\n ],\n width: [\n p.Number,\n 1\n ],\n distribution: [\n p.Distribution,\n 'uniform'\n ],\n range: [p.Instance]\n });\n };\n Jitter.prototype.v_compute = function (xs0) {\n var xs;\n if (this.range instanceof factor_range_1.FactorRange)\n xs = this.range.v_synthetic(xs0);\n else if (types_1.isArrayableOf(xs0, types_1.isNumber))\n xs = xs0;\n else\n throw new Error('unexpected');\n var result = new Float64Array(xs.length);\n for (var i = 0; i < xs.length; i++) {\n var x = xs[i];\n result[i] = this._compute(x);\n }\n return result;\n };\n Jitter.prototype.compute = function (x) {\n if (this.range instanceof factor_range_1.FactorRange)\n return this._compute(this.range.synthetic(x));\n else if (types_1.isNumber(x))\n return this._compute(x);\n else\n throw new Error('unexpected');\n };\n Jitter.prototype._compute = function (x) {\n switch (this.distribution) {\n case 'uniform':\n return x + this.mean + (bokeh_math.random() - 0.5) * this.width;\n case 'normal':\n return x + bokeh_math.rnorm(this.mean, this.width);\n }\n };\n return Jitter;\n }(transform_1.Transform);\n exports.Jitter = Jitter;\n Jitter.initClass(); \n}","/*models/transforms/linear_interpolator*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var array_1 = require(21 /* core/util/array */);\n var interpolator_1 = require(255 /* ./interpolator */);\n var LinearInterpolator = function (_super) {\n tslib_1.__extends(LinearInterpolator, _super);\n function LinearInterpolator(attrs) {\n return _super.call(this, attrs) || this;\n }\n LinearInterpolator.initClass = function () {\n this.prototype.type = 'LinearInterpolator';\n };\n LinearInterpolator.prototype.compute = function (x) {\n this.sort(false);\n if (this.clip) {\n if (x < this._x_sorted[0] || x > this._x_sorted[this._x_sorted.length - 1])\n return NaN;\n } else {\n if (x < this._x_sorted[0])\n return this._y_sorted[0];\n if (x > this._x_sorted[this._x_sorted.length - 1])\n return this._y_sorted[this._y_sorted.length - 1];\n }\n if (x == this._x_sorted[0])\n return this._y_sorted[0];\n var ind = array_1.findLastIndex(this._x_sorted, function (num) {\n return num < x;\n });\n var x1 = this._x_sorted[ind];\n var x2 = this._x_sorted[ind + 1];\n var y1 = this._y_sorted[ind];\n var y2 = this._y_sorted[ind + 1];\n return y1 + (x - x1) / (x2 - x1) * (y2 - y1);\n };\n return LinearInterpolator;\n }(interpolator_1.Interpolator);\n exports.LinearInterpolator = LinearInterpolator;\n LinearInterpolator.initClass(); \n}","/*models/transforms/step_interpolator*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var interpolator_1 = require(255 /* ./interpolator */);\n var p = require(15 /* core/properties */);\n var array_1 = require(21 /* core/util/array */);\n var StepInterpolator = function (_super) {\n tslib_1.__extends(StepInterpolator, _super);\n function StepInterpolator(attrs) {\n return _super.call(this, attrs) || this;\n }\n StepInterpolator.initClass = function () {\n this.prototype.type = 'StepInterpolator';\n this.define({\n mode: [\n p.StepMode,\n 'after'\n ]\n });\n };\n StepInterpolator.prototype.compute = function (x) {\n this.sort(false);\n if (this.clip) {\n if (x < this._x_sorted[0] || x > this._x_sorted[this._x_sorted.length - 1])\n return NaN;\n } else {\n if (x < this._x_sorted[0])\n return this._y_sorted[0];\n if (x > this._x_sorted[this._x_sorted.length - 1])\n return this._y_sorted[this._y_sorted.length - 1];\n }\n var ind;\n switch (this.mode) {\n case 'after': {\n ind = array_1.findLastIndex(this._x_sorted, function (num) {\n return x >= num;\n });\n break;\n }\n case 'before': {\n ind = array_1.findIndex(this._x_sorted, function (num) {\n return x <= num;\n });\n break;\n }\n case 'center': {\n var diffs = this._x_sorted.map(function (tx) {\n return Math.abs(tx - x);\n });\n var mdiff_1 = array_1.min(diffs);\n ind = array_1.findIndex(diffs, function (num) {\n return mdiff_1 === num;\n });\n break;\n }\n default:\n throw new Error('unknown mode: ' + this.mode);\n }\n return ind != -1 ? this._y_sorted[ind] : NaN;\n };\n return StepInterpolator;\n }(interpolator_1.Interpolator);\n exports.StepInterpolator = StepInterpolator;\n StepInterpolator.initClass(); \n}","/*models/transforms/transform*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n var model_1 = require(53 /* ../../model */);\n var Transform = function (_super) {\n tslib_1.__extends(Transform, _super);\n function Transform(attrs) {\n return _super.call(this, attrs) || this;\n }\n Transform.initClass = function () {\n this.prototype.type = 'Transform';\n };\n return Transform;\n }(model_1.Model);\n exports.Transform = Transform;\n Transform.initClass(); \n}","/*polyfill*/\nfunction _(require, module, exports) {\n if (typeof WeakMap !== 'function') {\n require(330 /* es6-weak-map/implement */);\n }\n if (typeof Set !== 'function') {\n require(320 /* es6-set/implement */);\n }\n // ref: https://github.com/bokeh/bokeh/issues/7373\n if (!Number.isInteger) {\n Number.isInteger = function (value) {\n return typeof value === 'number' && isFinite(value) && Math.floor(value) === value;\n };\n }\n var String_proto = String.prototype;\n if (!String_proto.repeat) {\n String_proto.repeat = function (count) {\n if (this == null) {\n throw new TypeError('can\\'t convert ' + this + ' to object');\n }\n var str = '' + this;\n count = +count;\n if (count != count) {\n count = 0;\n }\n if (count < 0) {\n throw new RangeError('repeat count must be non-negative');\n }\n if (count == Infinity) {\n throw new RangeError('repeat count must be less than infinity');\n }\n count = Math.floor(count);\n if (str.length == 0 || count == 0) {\n return '';\n }\n // Ensuring count is a 31-bit integer allows us to heavily optimize the\n // main part. But anyway, most current (August 2014) browsers can't handle\n // strings 1 << 28 chars or longer, so:\n if (str.length * count >= 1 << 28) {\n throw new RangeError('repeat count must not overflow maximum string size');\n }\n var rpt = '';\n for (;;) {\n if ((count & 1) == 1) {\n rpt += str;\n }\n count >>>= 1;\n if (count == 0) {\n break;\n }\n str += str;\n }\n // Could we try:\n // return Array(count + 1).join(this);\n return rpt;\n };\n }\n // Production steps of ECMA-262, Edition 6, 22.1.2.1\n if (!Array.from) {\n Array.from = function () {\n var toStr = Object.prototype.toString;\n var isCallable = function (fn) {\n return typeof fn === 'function' || toStr.call(fn) === '[object Function]';\n };\n var toInteger = function (value) {\n var number = Number(value);\n if (isNaN(number)) {\n return 0;\n }\n if (number === 0 || !isFinite(number)) {\n return number;\n }\n return (number > 0 ? 1 : -1) * Math.floor(Math.abs(number));\n };\n var maxSafeInteger = Math.pow(2, 53) - 1;\n var toLength = function (value) {\n var len = toInteger(value);\n return Math.min(Math.max(len, 0), maxSafeInteger);\n };\n // The length property of the from method is 1.\n return function from(arrayLike) {\n // 1. Let C be the this value.\n var C = this;\n // 2. Let items be ToObject(arrayLike).\n var items = Object(arrayLike);\n // 3. ReturnIfAbrupt(items).\n if (arrayLike == null) {\n throw new TypeError('Array.from requires an array-like object - not null or undefined');\n }\n // 4. If mapfn is undefined, then let mapping be false.\n var mapFn = arguments.length > 1 ? arguments[1] : void undefined;\n var T;\n if (typeof mapFn !== 'undefined') {\n // 5. else\n // 5. a If IsCallable(mapfn) is false, throw a TypeError exception.\n if (!isCallable(mapFn)) {\n throw new TypeError('Array.from: when provided, the second argument must be a function');\n }\n // 5. b. If thisArg was supplied, let T be thisArg; else let T be undefined.\n if (arguments.length > 2) {\n T = arguments[2];\n }\n }\n // 10. Let lenValue be Get(items, \"length\").\n // 11. Let len be ToLength(lenValue).\n var len = toLength(items.length);\n // 13. If IsConstructor(C) is true, then\n // 13. a. Let A be the result of calling the [[Construct]] internal method\n // of C with an argument list containing the single item len.\n // 14. a. Else, Let A be ArrayCreate(len).\n var A = isCallable(C) ? Object(new C(len)) : new Array(len);\n // 16. Let k be 0.\n var k = 0;\n // 17. Repeat, while k < len… (also steps a - h)\n while (k < len) {\n var kValue = items[k];\n if (mapFn) {\n A[k] = typeof T === 'undefined' ? mapFn(kValue, k) : mapFn.call(T, kValue, k);\n } else {\n A[k] = kValue;\n }\n k += 1;\n }\n // 18. Let putStatus be Put(A, \"length\", len, true).\n A.length = len;\n // 20. Return A.\n return A;\n };\n }();\n } \n}","/*protocol/index*/\nfunction _(require, module, exports) {\n var tslib_1 = require(380 /* tslib */);\n tslib_1.__exportStar(require(262 /* ./message */), exports);\n tslib_1.__exportStar(require(263 /* ./receiver */), exports); \n}","/*protocol/message*/\nfunction _(require, module, exports) {\n var string_1 = require(38 /* core/util/string */);\n var Message = function () {\n function Message(header, metadata, content) {\n this.header = header;\n this.metadata = metadata;\n this.content = content;\n this.buffers = [];\n }\n Message.assemble = function (header_json, metadata_json, content_json) {\n var header = JSON.parse(header_json);\n var metadata = JSON.parse(metadata_json);\n var content = JSON.parse(content_json);\n return new Message(header, metadata, content);\n };\n Message.prototype.assemble_buffer = function (buf_header, buf_payload) {\n var nb = this.header.num_buffers != null ? this.header.num_buffers : 0;\n if (nb <= this.buffers.length)\n throw new Error('too many buffers received, expecting #{nb}');\n this.buffers.push([\n buf_header,\n buf_payload\n ]);\n };\n // not defined for BokehJS, only *receiving* buffers is supported\n // add_buffer: (buf_header, buf_payload) ->\n // write_buffers: (socket)\n Message.create = function (msgtype, metadata, content) {\n if (content === void 0) {\n content = {};\n }\n var header = Message.create_header(msgtype);\n return new Message(header, metadata, content);\n };\n Message.create_header = function (msgtype) {\n return {\n msgid: string_1.uniqueId(),\n msgtype: msgtype\n };\n };\n Message.prototype.complete = function () {\n if (this.header != null && this.metadata != null && this.content != null) {\n if ('num_buffers' in this.header)\n return this.buffers.length === this.header.num_buffers;\n else\n return true;\n } else\n return false;\n };\n Message.prototype.send = function (socket) {\n var nb = this.header.num_buffers != null ? this.header.num_buffers : 0;\n if (nb > 0)\n throw new Error('BokehJS only supports receiving buffers, not sending');\n var header_json = JSON.stringify(this.header);\n var metadata_json = JSON.stringify(this.metadata);\n var content_json = JSON.stringify(this.content);\n socket.send(header_json);\n socket.send(metadata_json);\n socket.send(content_json);\n };\n Message.prototype.msgid = function () {\n return this.header.msgid;\n };\n Message.prototype.msgtype = function () {\n return this.header.msgtype;\n };\n Message.prototype.reqid = function () {\n return this.header.reqid;\n };\n // return the reason we should close on bad protocol, if there is one\n Message.prototype.problem = function () {\n if (!('msgid' in this.header))\n return 'No msgid in header';\n else if (!('msgtype' in this.header))\n return 'No msgtype in header';\n else\n return null;\n };\n return Message;\n }();\n exports.Message = Message; \n}","/*protocol/receiver*/\nfunction _(require, module, exports) {\n var message_1 = require(262 /* protocol/message */);\n var Receiver = function () {\n function Receiver() {\n this.message = null;\n this._partial = null;\n this._fragments = [];\n this._buf_header = null;\n this._current_consumer = this._HEADER;\n }\n Receiver.prototype.consume = function (fragment) {\n this._current_consumer(fragment);\n };\n Receiver.prototype._HEADER = function (fragment) {\n this._assume_text(fragment);\n this.message = null;\n this._partial = null;\n this._fragments = [fragment];\n this._buf_header = null;\n this._current_consumer = this._METADATA;\n };\n Receiver.prototype._METADATA = function (fragment) {\n this._assume_text(fragment);\n this._fragments.push(fragment);\n this._current_consumer = this._CONTENT;\n };\n Receiver.prototype._CONTENT = function (fragment) {\n this._assume_text(fragment);\n this._fragments.push(fragment);\n var _a = this._fragments.slice(0, 3), header_json = _a[0], metadata_json = _a[1], content_json = _a[2];\n this._partial = message_1.Message.assemble(header_json, metadata_json, content_json);\n this._check_complete();\n };\n Receiver.prototype._BUFFER_HEADER = function (fragment) {\n this._assume_text(fragment);\n this._buf_header = fragment;\n // XXX: assume text but Header is expected\n this._current_consumer = this._BUFFER_PAYLOAD;\n };\n Receiver.prototype._BUFFER_PAYLOAD = function (fragment) {\n this._assume_binary(fragment);\n this._partial.assemble_buffer(this._buf_header, fragment);\n this._check_complete();\n };\n Receiver.prototype._assume_text = function (fragment) {\n if (fragment instanceof ArrayBuffer)\n throw new Error('Expected text fragment but received binary fragment');\n };\n Receiver.prototype._assume_binary = function (fragment) {\n if (!(fragment instanceof ArrayBuffer))\n throw new Error('Expected binary fragment but received text fragment');\n };\n Receiver.prototype._check_complete = function () {\n if (this._partial.complete()) {\n this.message = this._partial;\n this._current_consumer = this._HEADER;\n } else\n this._current_consumer = this._BUFFER_HEADER;\n };\n return Receiver;\n }();\n exports.Receiver = Receiver; \n}","/*safely*/\nfunction _(require, module, exports) {\n function _burst_into_flames(error) {\n // Make box\n var box = document.createElement('div');\n box.style.backgroundColor = '#f2dede';\n box.style.border = '1px solid #a94442';\n box.style.borderRadius = '4px';\n box.style.display = 'inline-block';\n box.style.fontFamily = 'sans-serif';\n box.style.marginTop = '5px';\n box.style.minWidth = '200px';\n box.style.padding = '5px 5px 5px 10px';\n box.classList.add('bokeh-error-box-into-flames');\n // Make button\n var button = document.createElement('span');\n button.style.backgroundColor = '#a94442';\n button.style.borderRadius = '0px 4px 0px 0px';\n button.style.color = 'white';\n button.style.cursor = 'pointer';\n button.style.cssFloat = 'right';\n button.style.fontSize = '0.8em';\n button.style.margin = '-6px -6px 0px 0px';\n button.style.padding = '2px 5px 4px 5px';\n button.title = 'close';\n button.setAttribute('aria-label', 'close');\n button.appendChild(document.createTextNode('x'));\n button.addEventListener('click', function () {\n return body.removeChild(box);\n });\n // Make title\n var title = document.createElement('h3');\n title.style.color = '#a94442';\n title.style.margin = '8px 0px 0px 0px';\n title.style.padding = '0px';\n title.appendChild(document.createTextNode('Bokeh Error'));\n // Make message\n var message = document.createElement('pre');\n message.style.whiteSpace = 'unset';\n message.style.overflowX = 'auto';\n message.appendChild(document.createTextNode(error.message || error));\n // Add pieces to box\n box.appendChild(button);\n box.appendChild(title);\n box.appendChild(message);\n // Put box in doc\n var body = document.getElementsByTagName('body')[0];\n body.insertBefore(box, body.firstChild);\n }\n function safely(fn, silent) {\n if (silent === void 0) {\n silent = false;\n }\n try {\n return fn();\n } catch (error) {\n _burst_into_flames(error);\n if (!silent)\n throw error;\n else\n return;\n }\n }\n exports.safely = safely; \n}","/*version*/\nfunction _(require, module, exports) {\n exports.version = '0.12.16'; \n}","/*!!\n * Canvas 2 Svg v1.0.21\n * A low level canvas to SVG converter. Uses a mock canvas context to build an SVG document.\n *\n * Licensed under the MIT license:\n * http://www.opensource.org/licenses/mit-license.php\n *\n * Author:\n * Kerry Liu\n *\n * Copyright (c) 2014 Gliffy Inc.\n */\n/*canvas2svg/canvas2svg*/\nfunction _(require, module, exports) {\n ;\n (function () {\n 'use strict';\n var STYLES, ctx, CanvasGradient, CanvasPattern, namedEntities;\n //helper function to format a string\n function format(str, args) {\n var keys = Object.keys(args), i;\n for (i = 0; i < keys.length; i++) {\n str = str.replace(new RegExp('\\\\{' + keys[i] + '\\\\}', 'gi'), args[keys[i]]);\n }\n return str;\n }\n //helper function that generates a random string\n function randomString(holder) {\n var chars, randomstring, i;\n if (!holder) {\n throw new Error('cannot create a random attribute name for an undefined object');\n }\n chars = 'ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz';\n randomstring = '';\n do {\n randomstring = '';\n for (i = 0; i < 12; i++) {\n randomstring += chars[Math.floor(Math.random() * chars.length)];\n }\n } while (holder[randomstring]);\n return randomstring;\n }\n //helper function to map named to numbered entities\n function createNamedToNumberedLookup(items, radix) {\n var i, entity, lookup = {}, base10, base16;\n items = items.split(',');\n radix = radix || 10;\n // Map from named to numbered entities.\n for (i = 0; i < items.length; i += 2) {\n entity = '&' + items[i + 1] + ';';\n base10 = parseInt(items[i], radix);\n lookup[entity] = '' + base10 + ';';\n }\n //FF and IE need to create a regex from hex values ie == \\xa0\n lookup['\\\\xa0'] = ' ';\n return lookup;\n }\n //helper function to map canvas-textAlign to svg-textAnchor\n function getTextAnchor(textAlign) {\n //TODO: support rtl languages\n var mapping = {\n 'left': 'start',\n 'right': 'end',\n 'center': 'middle',\n 'start': 'start',\n 'end': 'end'\n };\n return mapping[textAlign] || mapping.start;\n }\n //helper function to map canvas-textBaseline to svg-dominantBaseline\n function getDominantBaseline(textBaseline) {\n //INFO: not supported in all browsers\n var mapping = {\n 'alphabetic': 'alphabetic',\n 'hanging': 'hanging',\n 'top': 'text-before-edge',\n 'bottom': 'text-after-edge',\n 'middle': 'central'\n };\n return mapping[textBaseline] || mapping.alphabetic;\n }\n // Unpack entities lookup where the numbers are in radix 32 to reduce the size\n // entity mapping courtesy of tinymce\n namedEntities = createNamedToNumberedLookup('50,nbsp,51,iexcl,52,cent,53,pound,54,curren,55,yen,56,brvbar,57,sect,58,uml,59,copy,' + '5a,ordf,5b,laquo,5c,not,5d,shy,5e,reg,5f,macr,5g,deg,5h,plusmn,5i,sup2,5j,sup3,5k,acute,' + '5l,micro,5m,para,5n,middot,5o,cedil,5p,sup1,5q,ordm,5r,raquo,5s,frac14,5t,frac12,5u,frac34,' + '5v,iquest,60,Agrave,61,Aacute,62,Acirc,63,Atilde,64,Auml,65,Aring,66,AElig,67,Ccedil,' + '68,Egrave,69,Eacute,6a,Ecirc,6b,Euml,6c,Igrave,6d,Iacute,6e,Icirc,6f,Iuml,6g,ETH,6h,Ntilde,' + '6i,Ograve,6j,Oacute,6k,Ocirc,6l,Otilde,6m,Ouml,6n,times,6o,Oslash,6p,Ugrave,6q,Uacute,' + '6r,Ucirc,6s,Uuml,6t,Yacute,6u,THORN,6v,szlig,70,agrave,71,aacute,72,acirc,73,atilde,74,auml,' + '75,aring,76,aelig,77,ccedil,78,egrave,79,eacute,7a,ecirc,7b,euml,7c,igrave,7d,iacute,7e,icirc,' + '7f,iuml,7g,eth,7h,ntilde,7i,ograve,7j,oacute,7k,ocirc,7l,otilde,7m,ouml,7n,divide,7o,oslash,' + '7p,ugrave,7q,uacute,7r,ucirc,7s,uuml,7t,yacute,7u,thorn,7v,yuml,ci,fnof,sh,Alpha,si,Beta,' + 'sj,Gamma,sk,Delta,sl,Epsilon,sm,Zeta,sn,Eta,so,Theta,sp,Iota,sq,Kappa,sr,Lambda,ss,Mu,' + 'st,Nu,su,Xi,sv,Omicron,t0,Pi,t1,Rho,t3,Sigma,t4,Tau,t5,Upsilon,t6,Phi,t7,Chi,t8,Psi,' + 't9,Omega,th,alpha,ti,beta,tj,gamma,tk,delta,tl,epsilon,tm,zeta,tn,eta,to,theta,tp,iota,' + 'tq,kappa,tr,lambda,ts,mu,tt,nu,tu,xi,tv,omicron,u0,pi,u1,rho,u2,sigmaf,u3,sigma,u4,tau,' + 'u5,upsilon,u6,phi,u7,chi,u8,psi,u9,omega,uh,thetasym,ui,upsih,um,piv,812,bull,816,hellip,' + '81i,prime,81j,Prime,81u,oline,824,frasl,88o,weierp,88h,image,88s,real,892,trade,89l,alefsym,' + '8cg,larr,8ch,uarr,8ci,rarr,8cj,darr,8ck,harr,8dl,crarr,8eg,lArr,8eh,uArr,8ei,rArr,8ej,dArr,' + '8ek,hArr,8g0,forall,8g2,part,8g3,exist,8g5,empty,8g7,nabla,8g8,isin,8g9,notin,8gb,ni,8gf,prod,' + '8gh,sum,8gi,minus,8gn,lowast,8gq,radic,8gt,prop,8gu,infin,8h0,ang,8h7,and,8h8,or,8h9,cap,8ha,cup,' + '8hb,int,8hk,there4,8hs,sim,8i5,cong,8i8,asymp,8j0,ne,8j1,equiv,8j4,le,8j5,ge,8k2,sub,8k3,sup,8k4,' + 'nsub,8k6,sube,8k7,supe,8kl,oplus,8kn,otimes,8l5,perp,8m5,sdot,8o8,lceil,8o9,rceil,8oa,lfloor,8ob,' + 'rfloor,8p9,lang,8pa,rang,9ea,loz,9j0,spades,9j3,clubs,9j5,hearts,9j6,diams,ai,OElig,aj,oelig,b0,' + 'Scaron,b1,scaron,bo,Yuml,m6,circ,ms,tilde,802,ensp,803,emsp,809,thinsp,80c,zwnj,80d,zwj,80e,lrm,' + '80f,rlm,80j,ndash,80k,mdash,80o,lsquo,80p,rsquo,80q,sbquo,80s,ldquo,80t,rdquo,80u,bdquo,810,dagger,' + '811,Dagger,81g,permil,81p,lsaquo,81q,rsaquo,85c,euro', 32);\n //Some basic mappings for attributes and default values.\n STYLES = {\n 'strokeStyle': {\n svgAttr: 'stroke',\n //corresponding svg attribute\n canvas: '#000000',\n //canvas default\n svg: 'none',\n //svg default\n apply: 'stroke' //apply on stroke() or fill()\n },\n 'fillStyle': {\n svgAttr: 'fill',\n canvas: '#000000',\n svg: null,\n //svg default is black, but we need to special case this to handle canvas stroke without fill\n apply: 'fill'\n },\n 'lineCap': {\n svgAttr: 'stroke-linecap',\n canvas: 'butt',\n svg: 'butt',\n apply: 'stroke'\n },\n 'lineJoin': {\n svgAttr: 'stroke-linejoin',\n canvas: 'miter',\n svg: 'miter',\n apply: 'stroke'\n },\n 'miterLimit': {\n svgAttr: 'stroke-miterlimit',\n canvas: 10,\n svg: 4,\n apply: 'stroke'\n },\n 'lineWidth': {\n svgAttr: 'stroke-width',\n canvas: 1,\n svg: 1,\n apply: 'stroke'\n },\n 'globalAlpha': {\n svgAttr: 'opacity',\n canvas: 1,\n svg: 1,\n apply: 'fill stroke'\n },\n 'font': {\n //font converts to multiple svg attributes, there is custom logic for this\n canvas: '10px sans-serif'\n },\n 'shadowColor': { canvas: '#000000' },\n 'shadowOffsetX': { canvas: 0 },\n 'shadowOffsetY': { canvas: 0 },\n 'shadowBlur': { canvas: 0 },\n 'textAlign': { canvas: 'start' },\n 'textBaseline': { canvas: 'alphabetic' },\n 'lineDash': {\n svgAttr: 'stroke-dasharray',\n canvas: [],\n svg: null,\n apply: 'stroke'\n }\n };\n /**\n *\n * @param gradientNode - reference to the gradient\n * @constructor\n */\n CanvasGradient = function (gradientNode, ctx) {\n this.__root = gradientNode;\n this.__ctx = ctx;\n };\n /**\n * Adds a color stop to the gradient root\n */\n CanvasGradient.prototype.addColorStop = function (offset, color) {\n var stop = this.__ctx.__createElement('stop'), regex, matches;\n stop.setAttribute('offset', offset);\n if (color.indexOf('rgba') !== -1) {\n //separate alpha value, since webkit can't handle it\n regex = /rgba\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d?\\.?\\d*)\\s*\\)/gi;\n matches = regex.exec(color);\n stop.setAttribute('stop-color', format('rgb({r},{g},{b})', {\n r: matches[1],\n g: matches[2],\n b: matches[3]\n }));\n stop.setAttribute('stop-opacity', matches[4]);\n } else {\n stop.setAttribute('stop-color', color);\n }\n this.__root.appendChild(stop);\n };\n CanvasPattern = function (pattern, ctx) {\n this.__root = pattern;\n this.__ctx = ctx;\n };\n /**\n * The mock canvas context\n * @param o - options include:\n * ctx - existing Context2D to wrap around\n * width - width of your canvas (defaults to 500)\n * height - height of your canvas (defaults to 500)\n * enableMirroring - enables canvas mirroring (get image data) (defaults to false)\n * document - the document object (defaults to the current document)\n */\n ctx = function (o) {\n var defaultOptions = {\n width: 500,\n height: 500,\n enableMirroring: false\n }, options;\n //keep support for this way of calling C2S: new C2S(width,height)\n if (arguments.length > 1) {\n options = defaultOptions;\n options.width = arguments[0];\n options.height = arguments[1];\n } else if (!o) {\n options = defaultOptions;\n } else {\n options = o;\n }\n if (!(this instanceof ctx)) {\n //did someone call this without new?\n return new ctx(options);\n }\n //setup options\n this.width = options.width || defaultOptions.width;\n this.height = options.height || defaultOptions.height;\n this.enableMirroring = options.enableMirroring !== undefined ? options.enableMirroring : defaultOptions.enableMirroring;\n this.canvas = this;\n ///point back to this instance!\n this.__document = options.document || document;\n // allow passing in an existing context to wrap around\n // if a context is passed in, we know a canvas already exist\n if (options.ctx) {\n this.__ctx = options.ctx;\n } else {\n this.__canvas = this.__document.createElement('canvas');\n this.__ctx = this.__canvas.getContext('2d');\n }\n this.__setDefaultStyles();\n this.__stack = [this.__getStyleState()];\n this.__groupStack = [];\n //the root svg element\n this.__root = this.__document.createElementNS('http://www.w3.org/2000/svg', 'svg');\n this.__root.setAttribute('version', 1.1);\n this.__root.setAttribute('xmlns', 'http://www.w3.org/2000/svg');\n this.__root.setAttributeNS('http://www.w3.org/2000/xmlns/', 'xmlns:xlink', 'http://www.w3.org/1999/xlink');\n this.__root.setAttribute('width', this.width);\n this.__root.setAttribute('height', this.height);\n //make sure we don't generate the same ids in defs\n this.__ids = {};\n //defs tag\n this.__defs = this.__document.createElementNS('http://www.w3.org/2000/svg', 'defs');\n this.__root.appendChild(this.__defs);\n //also add a group child. the svg element can't use the transform attribute\n this.__currentElement = this.__document.createElementNS('http://www.w3.org/2000/svg', 'g');\n this.__root.appendChild(this.__currentElement);\n };\n /**\n * Creates the specified svg element\n * @private\n */\n ctx.prototype.__createElement = function (elementName, properties, resetFill) {\n if (typeof properties === 'undefined') {\n properties = {};\n }\n var element = this.__document.createElementNS('http://www.w3.org/2000/svg', elementName), keys = Object.keys(properties), i, key;\n if (resetFill) {\n //if fill or stroke is not specified, the svg element should not display. By default SVG's fill is black.\n element.setAttribute('fill', 'none');\n element.setAttribute('stroke', 'none');\n }\n for (i = 0; i < keys.length; i++) {\n key = keys[i];\n element.setAttribute(key, properties[key]);\n }\n return element;\n };\n /**\n * Applies default canvas styles to the context\n * @private\n */\n ctx.prototype.__setDefaultStyles = function () {\n //default 2d canvas context properties see:http://www.w3.org/TR/2dcontext/\n var keys = Object.keys(STYLES), i, key;\n for (i = 0; i < keys.length; i++) {\n key = keys[i];\n this[key] = STYLES[key].canvas;\n }\n };\n /**\n * Applies styles on restore\n * @param styleState\n * @private\n */\n ctx.prototype.__applyStyleState = function (styleState) {\n var keys = Object.keys(styleState), i, key;\n for (i = 0; i < keys.length; i++) {\n key = keys[i];\n this[key] = styleState[key];\n }\n };\n /**\n * Gets the current style state\n * @return {Object}\n * @private\n */\n ctx.prototype.__getStyleState = function () {\n var i, styleState = {}, keys = Object.keys(STYLES), key;\n for (i = 0; i < keys.length; i++) {\n key = keys[i];\n styleState[key] = this[key];\n }\n return styleState;\n };\n /**\n * Apples the current styles to the current SVG element. On \"ctx.fill\" or \"ctx.stroke\"\n * @param type\n * @private\n */\n ctx.prototype.__applyStyleToCurrentElement = function (type) {\n var currentElement = this.__currentElement;\n var currentStyleGroup = this.__currentElementsToStyle;\n if (currentStyleGroup) {\n currentElement.setAttribute(type, '');\n currentElement = currentStyleGroup.element;\n currentStyleGroup.children.forEach(function (node) {\n node.setAttribute(type, '');\n });\n }\n var keys = Object.keys(STYLES), i, style, value, id, regex, matches;\n for (i = 0; i < keys.length; i++) {\n style = STYLES[keys[i]];\n value = this[keys[i]];\n if (style.apply) {\n //is this a gradient or pattern?\n if (value instanceof CanvasPattern) {\n //pattern\n if (value.__ctx) {\n //copy over defs\n while (value.__ctx.__defs.childNodes.length) {\n id = value.__ctx.__defs.childNodes[0].getAttribute('id');\n this.__ids[id] = id;\n this.__defs.appendChild(value.__ctx.__defs.childNodes[0]);\n }\n }\n currentElement.setAttribute(style.apply, format('url(#{id})', { id: value.__root.getAttribute('id') }));\n } else if (value instanceof CanvasGradient) {\n //gradient\n currentElement.setAttribute(style.apply, format('url(#{id})', { id: value.__root.getAttribute('id') }));\n } else if (style.apply.indexOf(type) !== -1 && style.svg !== value) {\n if ((style.svgAttr === 'stroke' || style.svgAttr === 'fill') && value.indexOf('rgba') !== -1) {\n //separate alpha value, since illustrator can't handle it\n regex = /rgba\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d?\\.?\\d*)\\s*\\)/gi;\n matches = regex.exec(value);\n currentElement.setAttribute(style.svgAttr, format('rgb({r},{g},{b})', {\n r: matches[1],\n g: matches[2],\n b: matches[3]\n }));\n //should take globalAlpha here\n var opacity = matches[4];\n var globalAlpha = this.globalAlpha;\n if (globalAlpha != null) {\n opacity *= globalAlpha;\n }\n currentElement.setAttribute(style.svgAttr + '-opacity', opacity);\n } else {\n var attr = style.svgAttr;\n if (keys[i] === 'globalAlpha') {\n attr = type + '-' + style.svgAttr;\n if (currentElement.getAttribute(attr)) {\n //fill-opacity or stroke-opacity has already been set by stroke or fill.\n continue;\n }\n }\n //otherwise only update attribute if right type, and not svg default\n currentElement.setAttribute(attr, value);\n }\n }\n }\n }\n };\n /**\n * Will return the closest group or svg node. May return the current element.\n * @private\n */\n ctx.prototype.__closestGroupOrSvg = function (node) {\n node = node || this.__currentElement;\n if (node.nodeName === 'g' || node.nodeName === 'svg') {\n return node;\n } else {\n return this.__closestGroupOrSvg(node.parentNode);\n }\n };\n /**\n * Returns the serialized value of the svg so far\n * @param fixNamedEntities - Standalone SVG doesn't support named entities, which document.createTextNode encodes.\n * If true, we attempt to find all named entities and encode it as a numeric entity.\n * @return serialized svg\n */\n ctx.prototype.getSerializedSvg = function (fixNamedEntities) {\n var serialized = new XMLSerializer().serializeToString(this.__root), keys, i, key, value, regexp, xmlns;\n //IE search for a duplicate xmnls because they didn't implement setAttributeNS correctly\n xmlns = /xmlns=\"http:\\/\\/www\\.w3\\.org\\/2000\\/svg\".+xmlns=\"http:\\/\\/www\\.w3\\.org\\/2000\\/svg/gi;\n if (xmlns.test(serialized)) {\n serialized = serialized.replace('xmlns=\"http://www.w3.org/2000/svg', 'xmlns:xlink=\"http://www.w3.org/1999/xlink');\n }\n if (fixNamedEntities) {\n keys = Object.keys(namedEntities);\n //loop over each named entity and replace with the proper equivalent.\n for (i = 0; i < keys.length; i++) {\n key = keys[i];\n value = namedEntities[key];\n regexp = new RegExp(key, 'gi');\n if (regexp.test(serialized)) {\n serialized = serialized.replace(regexp, value);\n }\n }\n }\n return serialized;\n };\n /**\n * Returns the root svg\n * @return\n */\n ctx.prototype.getSvg = function () {\n return this.__root;\n };\n /**\n * Will generate a group tag.\n */\n ctx.prototype.save = function () {\n var group = this.__createElement('g');\n var parent = this.__closestGroupOrSvg();\n this.__groupStack.push(parent);\n parent.appendChild(group);\n this.__currentElement = group;\n this.__stack.push(this.__getStyleState());\n };\n /**\n * Sets current element to parent, or just root if already root\n */\n ctx.prototype.restore = function () {\n this.__currentElement = this.__groupStack.pop();\n this.__currentElementsToStyle = null;\n //Clearing canvas will make the poped group invalid, currentElement is set to the root group node.\n if (!this.__currentElement) {\n this.__currentElement = this.__root.childNodes[1];\n }\n var state = this.__stack.pop();\n this.__applyStyleState(state);\n };\n /**\n * Helper method to add transform\n * @private\n */\n ctx.prototype.__addTransform = function (t) {\n //if the current element has siblings, add another group\n var parent = this.__closestGroupOrSvg();\n if (parent.childNodes.length > 0) {\n if (this.__currentElement.nodeName === 'path') {\n if (!this.__currentElementsToStyle)\n this.__currentElementsToStyle = {\n element: parent,\n children: []\n };\n this.__currentElementsToStyle.children.push(this.__currentElement);\n this.__applyCurrentDefaultPath();\n }\n var group = this.__createElement('g');\n parent.appendChild(group);\n this.__currentElement = group;\n }\n var transform = this.__currentElement.getAttribute('transform');\n if (transform) {\n transform += ' ';\n } else {\n transform = '';\n }\n transform += t;\n this.__currentElement.setAttribute('transform', transform);\n };\n /**\n * scales the current element\n */\n ctx.prototype.scale = function (x, y) {\n if (y === undefined) {\n y = x;\n }\n this.__addTransform(format('scale({x},{y})', {\n x: x,\n y: y\n }));\n };\n /**\n * rotates the current element\n */\n ctx.prototype.rotate = function (angle) {\n var degrees = angle * 180 / Math.PI;\n this.__addTransform(format('rotate({angle},{cx},{cy})', {\n angle: degrees,\n cx: 0,\n cy: 0\n }));\n };\n /**\n * translates the current element\n */\n ctx.prototype.translate = function (x, y) {\n this.__addTransform(format('translate({x},{y})', {\n x: x,\n y: y\n }));\n };\n /**\n * applies a transform to the current element\n */\n ctx.prototype.transform = function (a, b, c, d, e, f) {\n this.__addTransform(format('matrix({a},{b},{c},{d},{e},{f})', {\n a: a,\n b: b,\n c: c,\n d: d,\n e: e,\n f: f\n }));\n };\n /**\n * Create a new Path Element\n */\n ctx.prototype.beginPath = function () {\n var path, parent;\n // Note that there is only one current default path, it is not part of the drawing state.\n // See also: https://html.spec.whatwg.org/multipage/scripting.html#current-default-path\n this.__currentDefaultPath = '';\n this.__currentPosition = {};\n path = this.__createElement('path', {}, true);\n parent = this.__closestGroupOrSvg();\n parent.appendChild(path);\n this.__currentElement = path;\n };\n /**\n * Helper function to apply currentDefaultPath to current path element\n * @private\n */\n ctx.prototype.__applyCurrentDefaultPath = function () {\n var currentElement = this.__currentElement;\n if (currentElement.nodeName === 'path') {\n currentElement.setAttribute('d', this.__currentDefaultPath);\n } else {\n console.error('Attempted to apply path command to node', currentElement.nodeName);\n }\n };\n /**\n * Helper function to add path command\n * @private\n */\n ctx.prototype.__addPathCommand = function (command) {\n this.__currentDefaultPath += ' ';\n this.__currentDefaultPath += command;\n };\n /**\n * Adds the move command to the current path element,\n * if the currentPathElement is not empty create a new path element\n */\n ctx.prototype.moveTo = function (x, y) {\n if (this.__currentElement.nodeName !== 'path') {\n this.beginPath();\n }\n // creates a new subpath with the given point\n this.__currentPosition = {\n x: x,\n y: y\n };\n this.__addPathCommand(format('M {x} {y}', {\n x: x,\n y: y\n }));\n };\n /**\n * Closes the current path\n */\n ctx.prototype.closePath = function () {\n if (this.__currentDefaultPath) {\n this.__addPathCommand('Z');\n }\n };\n /**\n * Adds a line to command\n */\n ctx.prototype.lineTo = function (x, y) {\n this.__currentPosition = {\n x: x,\n y: y\n };\n if (this.__currentDefaultPath.indexOf('M') > -1) {\n this.__addPathCommand(format('L {x} {y}', {\n x: x,\n y: y\n }));\n } else {\n this.__addPathCommand(format('M {x} {y}', {\n x: x,\n y: y\n }));\n }\n };\n /**\n * Add a bezier command\n */\n ctx.prototype.bezierCurveTo = function (cp1x, cp1y, cp2x, cp2y, x, y) {\n this.__currentPosition = {\n x: x,\n y: y\n };\n this.__addPathCommand(format('C {cp1x} {cp1y} {cp2x} {cp2y} {x} {y}', {\n cp1x: cp1x,\n cp1y: cp1y,\n cp2x: cp2x,\n cp2y: cp2y,\n x: x,\n y: y\n }));\n };\n /**\n * Adds a quadratic curve to command\n */\n ctx.prototype.quadraticCurveTo = function (cpx, cpy, x, y) {\n this.__currentPosition = {\n x: x,\n y: y\n };\n this.__addPathCommand(format('Q {cpx} {cpy} {x} {y}', {\n cpx: cpx,\n cpy: cpy,\n x: x,\n y: y\n }));\n };\n /**\n * Return a new normalized vector of given vector\n */\n var normalize = function (vector) {\n var len = Math.sqrt(vector[0] * vector[0] + vector[1] * vector[1]);\n return [\n vector[0] / len,\n vector[1] / len\n ];\n };\n /**\n * Adds the arcTo to the current path\n *\n * @see http://www.w3.org/TR/2015/WD-2dcontext-20150514/#dom-context-2d-arcto\n */\n ctx.prototype.arcTo = function (x1, y1, x2, y2, radius) {\n // Let the point (x0, y0) be the last point in the subpath.\n var x0 = this.__currentPosition && this.__currentPosition.x;\n var y0 = this.__currentPosition && this.__currentPosition.y;\n // First ensure there is a subpath for (x1, y1).\n if (typeof x0 == 'undefined' || typeof y0 == 'undefined') {\n return;\n }\n // Negative values for radius must cause the implementation to throw an IndexSizeError exception.\n if (radius < 0) {\n throw new Error('IndexSizeError: The radius provided (' + radius + ') is negative.');\n }\n // If the point (x0, y0) is equal to the point (x1, y1),\n // or if the point (x1, y1) is equal to the point (x2, y2),\n // or if the radius radius is zero,\n // then the method must add the point (x1, y1) to the subpath,\n // and connect that point to the previous point (x0, y0) by a straight line.\n if (x0 === x1 && y0 === y1 || x1 === x2 && y1 === y2 || radius === 0) {\n this.lineTo(x1, y1);\n return;\n }\n // Otherwise, if the points (x0, y0), (x1, y1), and (x2, y2) all lie on a single straight line,\n // then the method must add the point (x1, y1) to the subpath,\n // and connect that point to the previous point (x0, y0) by a straight line.\n var unit_vec_p1_p0 = normalize([\n x0 - x1,\n y0 - y1\n ]);\n var unit_vec_p1_p2 = normalize([\n x2 - x1,\n y2 - y1\n ]);\n if (unit_vec_p1_p0[0] * unit_vec_p1_p2[1] === unit_vec_p1_p0[1] * unit_vec_p1_p2[0]) {\n this.lineTo(x1, y1);\n return;\n }\n // Otherwise, let The Arc be the shortest arc given by circumference of the circle that has radius radius,\n // and that has one point tangent to the half-infinite line that crosses the point (x0, y0) and ends at the point (x1, y1),\n // and that has a different point tangent to the half-infinite line that ends at the point (x1, y1), and crosses the point (x2, y2).\n // The points at which this circle touches these two lines are called the start and end tangent points respectively.\n // note that both vectors are unit vectors, so the length is 1\n var cos = unit_vec_p1_p0[0] * unit_vec_p1_p2[0] + unit_vec_p1_p0[1] * unit_vec_p1_p2[1];\n var theta = Math.acos(Math.abs(cos));\n // Calculate origin\n var unit_vec_p1_origin = normalize([\n unit_vec_p1_p0[0] + unit_vec_p1_p2[0],\n unit_vec_p1_p0[1] + unit_vec_p1_p2[1]\n ]);\n var len_p1_origin = radius / Math.sin(theta / 2);\n var x = x1 + len_p1_origin * unit_vec_p1_origin[0];\n var y = y1 + len_p1_origin * unit_vec_p1_origin[1];\n // Calculate start angle and end angle\n // rotate 90deg clockwise (note that y axis points to its down)\n var unit_vec_origin_start_tangent = [\n -unit_vec_p1_p0[1],\n unit_vec_p1_p0[0]\n ];\n // rotate 90deg counter clockwise (note that y axis points to its down)\n var unit_vec_origin_end_tangent = [\n unit_vec_p1_p2[1],\n -unit_vec_p1_p2[0]\n ];\n var getAngle = function (vector) {\n // get angle (clockwise) between vector and (1, 0)\n var x = vector[0];\n var y = vector[1];\n if (y >= 0) {\n // note that y axis points to its down\n return Math.acos(x);\n } else {\n return -Math.acos(x);\n }\n };\n var startAngle = getAngle(unit_vec_origin_start_tangent);\n var endAngle = getAngle(unit_vec_origin_end_tangent);\n // Connect the point (x0, y0) to the start tangent point by a straight line\n this.lineTo(x + unit_vec_origin_start_tangent[0] * radius, y + unit_vec_origin_start_tangent[1] * radius);\n // Connect the start tangent point to the end tangent point by arc\n // and adding the end tangent point to the subpath.\n this.arc(x, y, radius, startAngle, endAngle);\n };\n /**\n * Sets the stroke property on the current element\n */\n ctx.prototype.stroke = function () {\n if (this.__currentElement.nodeName === 'path') {\n this.__currentElement.setAttribute('paint-order', 'fill stroke markers');\n }\n this.__applyCurrentDefaultPath();\n this.__applyStyleToCurrentElement('stroke');\n };\n /**\n * Sets fill properties on the current element\n */\n ctx.prototype.fill = function () {\n if (this.__currentElement.nodeName === 'path') {\n this.__currentElement.setAttribute('paint-order', 'stroke fill markers');\n }\n this.__applyCurrentDefaultPath();\n this.__applyStyleToCurrentElement('fill');\n };\n /**\n * Adds a rectangle to the path.\n */\n ctx.prototype.rect = function (x, y, width, height) {\n if (this.__currentElement.nodeName !== 'path') {\n this.beginPath();\n }\n this.moveTo(x, y);\n this.lineTo(x + width, y);\n this.lineTo(x + width, y + height);\n this.lineTo(x, y + height);\n this.lineTo(x, y);\n this.closePath();\n };\n /**\n * adds a rectangle element\n */\n ctx.prototype.fillRect = function (x, y, width, height) {\n var rect, parent;\n rect = this.__createElement('rect', {\n x: x,\n y: y,\n width: width,\n height: height\n }, true);\n parent = this.__closestGroupOrSvg();\n parent.appendChild(rect);\n this.__currentElement = rect;\n this.__applyStyleToCurrentElement('fill');\n };\n /**\n * Draws a rectangle with no fill\n * @param x\n * @param y\n * @param width\n * @param height\n */\n ctx.prototype.strokeRect = function (x, y, width, height) {\n var rect, parent;\n rect = this.__createElement('rect', {\n x: x,\n y: y,\n width: width,\n height: height\n }, true);\n parent = this.__closestGroupOrSvg();\n parent.appendChild(rect);\n this.__currentElement = rect;\n this.__applyStyleToCurrentElement('stroke');\n };\n /**\n * Clear entire canvas:\n * 1. save current transforms\n * 2. remove all the childNodes of the root g element\n */\n ctx.prototype.__clearCanvas = function () {\n var current = this.__closestGroupOrSvg(), transform = current.getAttribute('transform');\n var rootGroup = this.__root.childNodes[1];\n var childNodes = rootGroup.childNodes;\n for (var i = childNodes.length - 1; i >= 0; i--) {\n if (childNodes[i]) {\n rootGroup.removeChild(childNodes[i]);\n }\n }\n this.__currentElement = rootGroup;\n //reset __groupStack as all the child group nodes are all removed.\n this.__groupStack = [];\n if (transform) {\n this.__addTransform(transform);\n }\n };\n /**\n * \"Clears\" a canvas by just drawing a white rectangle in the current group.\n */\n ctx.prototype.clearRect = function (x, y, width, height) {\n //clear entire canvas\n if (x === 0 && y === 0 && width === this.width && height === this.height) {\n this.__clearCanvas();\n return;\n }\n var rect, parent = this.__closestGroupOrSvg();\n rect = this.__createElement('rect', {\n x: x,\n y: y,\n width: width,\n height: height,\n fill: '#FFFFFF'\n }, true);\n parent.appendChild(rect);\n };\n /**\n * Adds a linear gradient to a defs tag.\n * Returns a canvas gradient object that has a reference to it's parent def\n */\n ctx.prototype.createLinearGradient = function (x1, y1, x2, y2) {\n var grad = this.__createElement('linearGradient', {\n id: randomString(this.__ids),\n x1: x1 + 'px',\n x2: x2 + 'px',\n y1: y1 + 'px',\n y2: y2 + 'px',\n 'gradientUnits': 'userSpaceOnUse'\n }, false);\n this.__defs.appendChild(grad);\n return new CanvasGradient(grad, this);\n };\n /**\n * Adds a radial gradient to a defs tag.\n * Returns a canvas gradient object that has a reference to it's parent def\n */\n ctx.prototype.createRadialGradient = function (x0, y0, r0, x1, y1, r1) {\n var grad = this.__createElement('radialGradient', {\n id: randomString(this.__ids),\n cx: x1 + 'px',\n cy: y1 + 'px',\n r: r1 + 'px',\n fx: x0 + 'px',\n fy: y0 + 'px',\n 'gradientUnits': 'userSpaceOnUse'\n }, false);\n this.__defs.appendChild(grad);\n return new CanvasGradient(grad, this);\n };\n /**\n * Parses the font string and returns svg mapping\n * @private\n */\n ctx.prototype.__parseFont = function () {\n var regex = /^\\s*(?=(?:(?:[-a-z]+\\s*){0,2}(italic|oblique))?)(?=(?:(?:[-a-z]+\\s*){0,2}(small-caps))?)(?=(?:(?:[-a-z]+\\s*){0,2}(bold(?:er)?|lighter|[1-9]00))?)(?:(?:normal|\\1|\\2|\\3)\\s*){0,3}((?:xx?-)?(?:small|large)|medium|smaller|larger|[.\\d]+(?:\\%|in|[cem]m|ex|p[ctx]))(?:\\s*\\/\\s*(normal|[.\\d]+(?:\\%|in|[cem]m|ex|p[ctx])))?\\s*([-,\\'\\\"\\sa-z0-9]+?)\\s*$/i;\n var fontPart = regex.exec(this.font);\n var data = {\n style: fontPart[1] || 'normal',\n size: fontPart[4] || '10px',\n family: fontPart[6] || 'sans-serif',\n weight: fontPart[3] || 'normal',\n decoration: fontPart[2] || 'normal',\n href: null\n };\n //canvas doesn't support underline natively, but we can pass this attribute\n if (this.__fontUnderline === 'underline') {\n data.decoration = 'underline';\n }\n //canvas also doesn't support linking, but we can pass this as well\n if (this.__fontHref) {\n data.href = this.__fontHref;\n }\n return data;\n };\n /**\n * Helper to link text fragments\n * @param font\n * @param element\n * @return {*}\n * @private\n */\n ctx.prototype.__wrapTextLink = function (font, element) {\n if (font.href) {\n var a = this.__createElement('a');\n a.setAttributeNS('http://www.w3.org/1999/xlink', 'xlink:href', font.href);\n a.appendChild(element);\n return a;\n }\n return element;\n };\n /**\n * Fills or strokes text\n * @param text\n * @param x\n * @param y\n * @param action - stroke or fill\n * @private\n */\n ctx.prototype.__applyText = function (text, x, y, action) {\n var font = this.__parseFont(), parent = this.__closestGroupOrSvg(), textElement = this.__createElement('text', {\n 'font-family': font.family,\n 'font-size': font.size,\n 'font-style': font.style,\n 'font-weight': font.weight,\n 'text-decoration': font.decoration,\n 'x': x,\n 'y': y,\n 'text-anchor': getTextAnchor(this.textAlign),\n 'dominant-baseline': getDominantBaseline(this.textBaseline)\n }, true);\n textElement.appendChild(this.__document.createTextNode(text));\n this.__currentElement = textElement;\n this.__applyStyleToCurrentElement(action);\n parent.appendChild(this.__wrapTextLink(font, textElement));\n };\n /**\n * Creates a text element\n * @param text\n * @param x\n * @param y\n */\n ctx.prototype.fillText = function (text, x, y) {\n this.__applyText(text, x, y, 'fill');\n };\n /**\n * Strokes text\n * @param text\n * @param x\n * @param y\n */\n ctx.prototype.strokeText = function (text, x, y) {\n this.__applyText(text, x, y, 'stroke');\n };\n /**\n * No need to implement this for svg.\n * @param text\n * @return {TextMetrics}\n */\n ctx.prototype.measureText = function (text) {\n this.__ctx.font = this.font;\n return this.__ctx.measureText(text);\n };\n /**\n * Arc command!\n */\n ctx.prototype.arc = function (x, y, radius, startAngle, endAngle, counterClockwise) {\n // in canvas no circle is drawn if no angle is provided.\n if (startAngle === endAngle) {\n return;\n }\n startAngle = startAngle % (2 * Math.PI);\n endAngle = endAngle % (2 * Math.PI);\n if (startAngle === endAngle) {\n //circle time! subtract some of the angle so svg is happy (svg elliptical arc can't draw a full circle)\n endAngle = (endAngle + 2 * Math.PI - 0.001 * (counterClockwise ? -1 : 1)) % (2 * Math.PI);\n }\n var endX = x + radius * Math.cos(endAngle), endY = y + radius * Math.sin(endAngle), startX = x + radius * Math.cos(startAngle), startY = y + radius * Math.sin(startAngle), sweepFlag = counterClockwise ? 0 : 1, largeArcFlag = 0, diff = endAngle - startAngle;\n // https://github.com/gliffy/canvas2svg/issues/4\n if (diff < 0) {\n diff += 2 * Math.PI;\n }\n if (counterClockwise) {\n largeArcFlag = diff > Math.PI ? 0 : 1;\n } else {\n largeArcFlag = diff > Math.PI ? 1 : 0;\n }\n this.lineTo(startX, startY);\n this.__addPathCommand(format('A {rx} {ry} {xAxisRotation} {largeArcFlag} {sweepFlag} {endX} {endY}', {\n rx: radius,\n ry: radius,\n xAxisRotation: 0,\n largeArcFlag: largeArcFlag,\n sweepFlag: sweepFlag,\n endX: endX,\n endY: endY\n }));\n this.__currentPosition = {\n x: endX,\n y: endY\n };\n };\n /**\n * Generates a ClipPath from the clip command.\n */\n ctx.prototype.clip = function () {\n var group = this.__closestGroupOrSvg(), clipPath = this.__createElement('clipPath'), id = randomString(this.__ids), newGroup = this.__createElement('g');\n this.__applyCurrentDefaultPath();\n group.removeChild(this.__currentElement);\n clipPath.setAttribute('id', id);\n clipPath.appendChild(this.__currentElement);\n this.__defs.appendChild(clipPath);\n //set the clip path to this group\n group.setAttribute('clip-path', format('url(#{id})', { id: id }));\n //clip paths can be scaled and transformed, we need to add another wrapper group to avoid later transformations\n // to this path\n group.appendChild(newGroup);\n this.__currentElement = newGroup;\n };\n /**\n * Draws a canvas, image or mock context to this canvas.\n * Note that all svg dom manipulation uses node.childNodes rather than node.children for IE support.\n * http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#dom-context-2d-drawimage\n */\n ctx.prototype.drawImage = function () {\n //convert arguments to a real array\n var args = Array.prototype.slice.call(arguments), image = args[0], dx, dy, dw, dh, sx = 0, sy = 0, sw, sh, parent, svg, defs, group, currentElement, svgImage, canvas, context, id;\n if (args.length === 3) {\n dx = args[1];\n dy = args[2];\n sw = image.width;\n sh = image.height;\n dw = sw;\n dh = sh;\n } else if (args.length === 5) {\n dx = args[1];\n dy = args[2];\n dw = args[3];\n dh = args[4];\n sw = image.width;\n sh = image.height;\n } else if (args.length === 9) {\n sx = args[1];\n sy = args[2];\n sw = args[3];\n sh = args[4];\n dx = args[5];\n dy = args[6];\n dw = args[7];\n dh = args[8];\n } else {\n throw new Error('Inavlid number of arguments passed to drawImage: ' + arguments.length);\n }\n parent = this.__closestGroupOrSvg();\n currentElement = this.__currentElement;\n var translateDirective = 'translate(' + dx + ', ' + dy + ')';\n if (image instanceof ctx) {\n //canvas2svg mock canvas context. In the future we may want to clone nodes instead.\n //also I'm currently ignoring dw, dh, sw, sh, sx, sy for a mock context.\n svg = image.getSvg().cloneNode(true);\n if (svg.childNodes && svg.childNodes.length > 1) {\n defs = svg.childNodes[0];\n while (defs.childNodes.length) {\n id = defs.childNodes[0].getAttribute('id');\n this.__ids[id] = id;\n this.__defs.appendChild(defs.childNodes[0]);\n }\n group = svg.childNodes[1];\n if (group) {\n //save original transform\n var originTransform = group.getAttribute('transform');\n var transformDirective;\n if (originTransform) {\n transformDirective = originTransform + ' ' + translateDirective;\n } else {\n transformDirective = translateDirective;\n }\n group.setAttribute('transform', transformDirective);\n parent.appendChild(group);\n }\n }\n } else if (image.nodeName === 'IMG') {\n svgImage = this.__createElement('image');\n svgImage.setAttribute('width', dw);\n svgImage.setAttribute('height', dh);\n svgImage.setAttribute('preserveAspectRatio', 'none');\n if (sx || sy || sw !== image.width || sh !== image.height) {\n //crop the image using a temporary canvas\n canvas = this.__document.createElement('canvas');\n canvas.width = dw;\n canvas.height = dh;\n context = canvas.getContext('2d');\n context.drawImage(image, sx, sy, sw, sh, 0, 0, dw, dh);\n image = canvas;\n }\n svgImage.setAttribute('transform', translateDirective);\n svgImage.setAttributeNS('http://www.w3.org/1999/xlink', 'xlink:href', image.nodeName === 'CANVAS' ? image.toDataURL() : image.getAttribute('src'));\n parent.appendChild(svgImage);\n } else if (image.nodeName === 'CANVAS') {\n svgImage = this.__createElement('image');\n svgImage.setAttribute('width', dw);\n svgImage.setAttribute('height', dh);\n svgImage.setAttribute('preserveAspectRatio', 'none');\n // draw canvas onto temporary canvas so that smoothing can be handled\n canvas = this.__document.createElement('canvas');\n canvas.width = dw;\n canvas.height = dh;\n context = canvas.getContext('2d');\n context.imageSmoothingEnabled = false;\n context.mozImageSmoothingEnabled = false;\n context.oImageSmoothingEnabled = false;\n context.webkitImageSmoothingEnabled = false;\n context.drawImage(image, sx, sy, sw, sh, 0, 0, dw, dh);\n image = canvas;\n svgImage.setAttribute('transform', translateDirective);\n svgImage.setAttributeNS('http://www.w3.org/1999/xlink', 'xlink:href', image.toDataURL());\n parent.appendChild(svgImage);\n }\n };\n /**\n * Generates a pattern tag\n */\n ctx.prototype.createPattern = function (image, repetition) {\n var pattern = this.__document.createElementNS('http://www.w3.org/2000/svg', 'pattern'), id = randomString(this.__ids), img;\n pattern.setAttribute('id', id);\n pattern.setAttribute('width', image.width);\n pattern.setAttribute('height', image.height);\n if (image.nodeName === 'CANVAS' || image.nodeName === 'IMG') {\n img = this.__document.createElementNS('http://www.w3.org/2000/svg', 'image');\n img.setAttribute('width', image.width);\n img.setAttribute('height', image.height);\n img.setAttributeNS('http://www.w3.org/1999/xlink', 'xlink:href', image.nodeName === 'CANVAS' ? image.toDataURL() : image.getAttribute('src'));\n pattern.appendChild(img);\n this.__defs.appendChild(pattern);\n } else if (image instanceof ctx) {\n pattern.appendChild(image.__root.childNodes[1]);\n this.__defs.appendChild(pattern);\n }\n return new CanvasPattern(pattern, this);\n };\n ctx.prototype.setLineDash = function (dashArray) {\n if (dashArray && dashArray.length > 0) {\n this.lineDash = dashArray.join(',');\n } else {\n this.lineDash = null;\n }\n };\n /**\n * Not yet implemented\n */\n ctx.prototype.drawFocusRing = function () {\n };\n ctx.prototype.createImageData = function () {\n };\n ctx.prototype.getImageData = function () {\n };\n ctx.prototype.putImageData = function () {\n };\n ctx.prototype.globalCompositeOperation = function () {\n };\n ctx.prototype.setTransform = function () {\n };\n //add options for alternative namespace\n if (typeof window === 'object') {\n window.C2S = ctx;\n }\n // CommonJS/Browserify\n if (typeof module === 'object' && typeof module.exports === 'object') {\n module.exports = ctx;\n }\n }());\n}","/*d/auto-bind*/\nfunction _(require, module, exports) {\n var copy = require(290 /* es5-ext/object/copy */), normalizeOptions = require(300 /* es5-ext/object/normalize-options */), ensureCallable = require(304 /* es5-ext/object/valid-callable */), map = require(299 /* es5-ext/object/map */), callable = require(304 /* es5-ext/object/valid-callable */), validValue = require(306 /* es5-ext/object/valid-value */), bind = Function.prototype.bind, defineProperty = Object.defineProperty, hasOwnProperty = Object.prototype.hasOwnProperty, define;\n define = function (name, desc, options) {\n var value = validValue(desc) && callable(desc.value), dgs;\n dgs = copy(desc);\n delete dgs.writable;\n delete dgs.value;\n dgs.get = function () {\n if (!options.overwriteDefinition && hasOwnProperty.call(this, name))\n return value;\n desc.value = bind.call(value, options.resolveContext ? options.resolveContext(this) : this);\n defineProperty(this, name, desc);\n return this[name];\n };\n return dgs;\n };\n module.exports = function (props) {\n var options = normalizeOptions(arguments[1]);\n if (options.resolveContext != null)\n ensureCallable(options.resolveContext);\n return map(props, function (desc, name) {\n return define(name, desc, options);\n });\n };\n}","/*d/index*/\nfunction _(require, module, exports) {\n var assign = require(287 /* es5-ext/object/assign */), normalizeOpts = require(300 /* es5-ext/object/normalize-options */), isCallable = require(293 /* es5-ext/object/is-callable */), contains = require(307 /* es5-ext/string/#/contains */), d;\n d = module.exports = function (dscr, value) {\n var c, e, w, options, desc;\n if (arguments.length < 2 || typeof dscr !== 'string') {\n options = value;\n value = dscr;\n dscr = null;\n } else {\n options = arguments[2];\n }\n if (dscr == null) {\n c = w = true;\n e = false;\n } else {\n c = contains.call(dscr, 'c');\n e = contains.call(dscr, 'e');\n w = contains.call(dscr, 'w');\n }\n desc = {\n value: value,\n configurable: c,\n enumerable: e,\n writable: w\n };\n return !options ? desc : assign(normalizeOpts(options), desc);\n };\n d.gs = function (dscr, get, set) {\n var c, e, options, desc;\n if (typeof dscr !== 'string') {\n options = set;\n set = get;\n get = dscr;\n dscr = null;\n } else {\n options = arguments[3];\n }\n if (get == null) {\n get = undefined;\n } else if (!isCallable(get)) {\n options = get;\n get = set = undefined;\n } else if (set == null) {\n set = undefined;\n } else if (!isCallable(set)) {\n options = set;\n set = undefined;\n }\n if (dscr == null) {\n c = true;\n e = false;\n } else {\n c = contains.call(dscr, 'c');\n e = contains.call(dscr, 'e');\n }\n desc = {\n get: get,\n set: set,\n configurable: c,\n enumerable: e\n };\n return !options ? desc : assign(normalizeOpts(options), desc);\n };\n}","// Inspired by Google Closure:\n// http://closure-library.googlecode.com/svn/docs/\n// closure_goog_array_array.js.html#goog.array.clear\n/*es5-ext/array/#/clear*/\nfunction _(require, module, exports) {\n var value = require(306 /* ../../object/valid-value */);\n module.exports = function () {\n value(this).length = 0;\n return this;\n };\n}","/*es5-ext/array/#/e-index-of*/\nfunction _(require, module, exports) {\n var numberIsNaN = require(281 /* ../../number/is-nan */), toPosInt = require(285 /* ../../number/to-pos-integer */), value = require(306 /* ../../object/valid-value */), indexOf = Array.prototype.indexOf, objHasOwnProperty = Object.prototype.hasOwnProperty, abs = Math.abs, floor = Math.floor;\n module.exports = function (searchElement) {\n var i, length, fromIndex, val;\n if (!numberIsNaN(searchElement))\n return indexOf.apply(this, arguments);\n length = toPosInt(value(this).length);\n fromIndex = arguments[1];\n if (isNaN(fromIndex))\n fromIndex = 0;\n else if (fromIndex >= 0)\n fromIndex = floor(fromIndex);\n else\n fromIndex = toPosInt(this.length) - floor(abs(fromIndex));\n for (i = fromIndex; i < length; ++i) {\n if (objHasOwnProperty.call(this, i)) {\n val = this[i];\n if (numberIsNaN(val))\n return i; // Jslint: ignore\n }\n }\n return -1;\n };\n}","/*es5-ext/array/from/index*/\nfunction _(require, module, exports) {\n module.exports = require(272 /* ./is-implemented */)() ? Array.from : require(273 /* ./shim */);\n}","/*es5-ext/array/from/is-implemented*/\nfunction _(require, module, exports) {\n module.exports = function () {\n var from = Array.from, arr, result;\n if (typeof from !== 'function')\n return false;\n arr = [\n 'raz',\n 'dwa'\n ];\n result = from(arr);\n return Boolean(result && result !== arr && result[1] === 'dwa');\n };\n}","/*es5-ext/array/from/shim*/\nfunction _(require, module, exports) {\n var iteratorSymbol = require(325 /* es6-symbol */).iterator, isArguments = require(274 /* ../../function/is-arguments */), isFunction = require(275 /* ../../function/is-function */), toPosInt = require(285 /* ../../number/to-pos-integer */), callable = require(304 /* ../../object/valid-callable */), validValue = require(306 /* ../../object/valid-value */), isValue = require(295 /* ../../object/is-value */), isString = require(310 /* ../../string/is-string */), isArray = Array.isArray, call = Function.prototype.call, desc = {\n configurable: true,\n enumerable: true,\n writable: true,\n value: null\n }, defineProperty = Object.defineProperty;\n // eslint-disable-next-line complexity\n module.exports = function (arrayLike) {\n var mapFn = arguments[1], thisArg = arguments[2], Context, i, j, arr, length, code, iterator, result, getIterator, value;\n arrayLike = Object(validValue(arrayLike));\n if (isValue(mapFn))\n callable(mapFn);\n if (!this || this === Array || !isFunction(this)) {\n // Result: Plain array\n if (!mapFn) {\n if (isArguments(arrayLike)) {\n // Source: Arguments\n length = arrayLike.length;\n if (length !== 1)\n return Array.apply(null, arrayLike);\n arr = new Array(1);\n arr[0] = arrayLike[0];\n return arr;\n }\n if (isArray(arrayLike)) {\n // Source: Array\n arr = new Array(length = arrayLike.length);\n for (i = 0; i < length; ++i)\n arr[i] = arrayLike[i];\n return arr;\n }\n }\n arr = [];\n } else {\n // Result: Non plain array\n Context = this;\n }\n if (!isArray(arrayLike)) {\n if ((getIterator = arrayLike[iteratorSymbol]) !== undefined) {\n // Source: Iterator\n iterator = callable(getIterator).call(arrayLike);\n if (Context)\n arr = new Context();\n result = iterator.next();\n i = 0;\n while (!result.done) {\n value = mapFn ? call.call(mapFn, thisArg, result.value, i) : result.value;\n if (Context) {\n desc.value = value;\n defineProperty(arr, i, desc);\n } else {\n arr[i] = value;\n }\n result = iterator.next();\n ++i;\n }\n length = i;\n } else if (isString(arrayLike)) {\n // Source: String\n length = arrayLike.length;\n if (Context)\n arr = new Context();\n for (i = 0, j = 0; i < length; ++i) {\n value = arrayLike[i];\n if (i + 1 < length) {\n code = value.charCodeAt(0);\n // eslint-disable-next-line max-depth\n if (code >= 55296 && code <= 56319)\n value += arrayLike[++i];\n }\n value = mapFn ? call.call(mapFn, thisArg, value, j) : value;\n if (Context) {\n desc.value = value;\n defineProperty(arr, j, desc);\n } else {\n arr[j] = value;\n }\n ++j;\n }\n length = j;\n }\n }\n if (length === undefined) {\n // Source: array or array-like\n length = toPosInt(arrayLike.length);\n if (Context)\n arr = new Context(length);\n for (i = 0; i < length; ++i) {\n value = mapFn ? call.call(mapFn, thisArg, arrayLike[i], i) : arrayLike[i];\n if (Context) {\n desc.value = value;\n defineProperty(arr, i, desc);\n } else {\n arr[i] = value;\n }\n }\n }\n if (Context) {\n desc.value = null;\n arr.length = length;\n }\n return arr;\n };\n}","/*es5-ext/function/is-arguments*/\nfunction _(require, module, exports) {\n var objToString = Object.prototype.toString, id = objToString.call(function () {\n return arguments;\n }());\n module.exports = function (value) {\n return objToString.call(value) === id;\n };\n}","/*es5-ext/function/is-function*/\nfunction _(require, module, exports) {\n var objToString = Object.prototype.toString, id = objToString.call(require(276 /* ./noop */));\n module.exports = function (value) {\n return typeof value === 'function' && objToString.call(value) === id;\n };\n}","/*es5-ext/function/noop*/\nfunction _(require, module, exports) {\n // eslint-disable-next-line no-empty-function\n module.exports = function () {\n };\n}","/* eslint strict: \"off\" */\n/*es5-ext/global*/\nfunction _(require, module, exports) {\n module.exports = function () {\n return this;\n }();\n}","/*es5-ext/math/sign/index*/\nfunction _(require, module, exports) {\n module.exports = require(279 /* ./is-implemented */)() ? Math.sign : require(280 /* ./shim */);\n}","/*es5-ext/math/sign/is-implemented*/\nfunction _(require, module, exports) {\n module.exports = function () {\n var sign = Math.sign;\n if (typeof sign !== 'function')\n return false;\n return sign(10) === 1 && sign(-20) === -1;\n };\n}","/*es5-ext/math/sign/shim*/\nfunction _(require, module, exports) {\n module.exports = function (value) {\n value = Number(value);\n if (isNaN(value) || value === 0)\n return value;\n return value > 0 ? 1 : -1;\n };\n}","/*es5-ext/number/is-nan/index*/\nfunction _(require, module, exports) {\n module.exports = require(282 /* ./is-implemented */)() ? Number.isNaN : require(283 /* ./shim */);\n}","/*es5-ext/number/is-nan/is-implemented*/\nfunction _(require, module, exports) {\n module.exports = function () {\n var numberIsNaN = Number.isNaN;\n if (typeof numberIsNaN !== 'function')\n return false;\n return !numberIsNaN({}) && numberIsNaN(NaN) && !numberIsNaN(34);\n };\n}","/*es5-ext/number/is-nan/shim*/\nfunction _(require, module, exports) {\n module.exports = function (value) {\n // eslint-disable-next-line no-self-compare\n return value !== value;\n };\n}","/*es5-ext/number/to-integer*/\nfunction _(require, module, exports) {\n var sign = require(278 /* ../math/sign */), abs = Math.abs, floor = Math.floor;\n module.exports = function (value) {\n if (isNaN(value))\n return 0;\n value = Number(value);\n if (value === 0 || !isFinite(value))\n return value;\n return sign(value) * floor(abs(value));\n };\n}","/*es5-ext/number/to-pos-integer*/\nfunction _(require, module, exports) {\n var toInteger = require(284 /* ./to-integer */), max = Math.max;\n module.exports = function (value) {\n return max(0, toInteger(value));\n };\n}","// Internal method, used by iteration functions.\n// Calls a function for each key-value pair found in object\n// Optionally takes compareFn to iterate object in specific order\n/*es5-ext/object/_iterate*/\nfunction _(require, module, exports) {\n var callable = require(304 /* ./valid-callable */), value = require(306 /* ./valid-value */), bind = Function.prototype.bind, call = Function.prototype.call, keys = Object.keys, objPropertyIsEnumerable = Object.prototype.propertyIsEnumerable;\n module.exports = function (method, defVal) {\n return function (obj, cb) {\n var list, thisArg = arguments[2], compareFn = arguments[3];\n obj = Object(value(obj));\n callable(cb);\n list = keys(obj);\n if (compareFn) {\n list.sort(typeof compareFn === 'function' ? bind.call(compareFn, obj) : undefined);\n }\n if (typeof method !== 'function')\n method = list[method];\n return call.call(method, list, function (key, index) {\n if (!objPropertyIsEnumerable.call(obj, key))\n return defVal;\n return call.call(cb, thisArg, obj[key], key, obj, index);\n });\n };\n };\n}","/*es5-ext/object/assign/index*/\nfunction _(require, module, exports) {\n module.exports = require(288 /* ./is-implemented */)() ? Object.assign : require(289 /* ./shim */);\n}","/*es5-ext/object/assign/is-implemented*/\nfunction _(require, module, exports) {\n module.exports = function () {\n var assign = Object.assign, obj;\n if (typeof assign !== 'function')\n return false;\n obj = { foo: 'raz' };\n assign(obj, { bar: 'dwa' }, { trzy: 'trzy' });\n return obj.foo + obj.bar + obj.trzy === 'razdwatrzy';\n };\n}","/*es5-ext/object/assign/shim*/\nfunction _(require, module, exports) {\n var keys = require(296 /* ../keys */), value = require(306 /* ../valid-value */), max = Math.max;\n module.exports = function (dest, src) {\n var error, i, length = max(arguments.length, 2), assign;\n dest = Object(value(dest));\n assign = function (key) {\n try {\n dest[key] = src[key];\n } catch (e) {\n if (!error)\n error = e;\n }\n };\n for (i = 1; i < length; ++i) {\n src = arguments[i];\n keys(src).forEach(assign);\n }\n if (error !== undefined)\n throw error;\n return dest;\n };\n}","/*es5-ext/object/copy*/\nfunction _(require, module, exports) {\n var aFrom = require(271 /* ../array/from */), assign = require(287 /* ./assign */), value = require(306 /* ./valid-value */);\n module.exports = function (obj) {\n var copy = Object(value(obj)), propertyNames = arguments[1], options = Object(arguments[2]);\n if (copy !== obj && !propertyNames)\n return copy;\n var result = {};\n if (propertyNames) {\n aFrom(propertyNames, function (propertyName) {\n if (options.ensure || propertyName in obj)\n result[propertyName] = obj[propertyName];\n });\n } else {\n assign(result, obj);\n }\n return result;\n };\n}","// Workaround for http://code.google.com/p/v8/issues/detail?id=2804\n/*es5-ext/object/create*/\nfunction _(require, module, exports) {\n var create = Object.create, shim;\n if (!require(302 /* ./set-prototype-of/is-implemented */)()) {\n shim = require(303 /* ./set-prototype-of/shim */);\n }\n module.exports = function () {\n var nullObject, polyProps, desc;\n if (!shim)\n return create;\n if (shim.level !== 1)\n return create;\n nullObject = {};\n polyProps = {};\n desc = {\n configurable: false,\n enumerable: false,\n writable: true,\n value: undefined\n };\n Object.getOwnPropertyNames(Object.prototype).forEach(function (name) {\n if (name === '__proto__') {\n polyProps[name] = {\n configurable: true,\n enumerable: false,\n writable: true,\n value: undefined\n };\n return;\n }\n polyProps[name] = desc;\n });\n Object.defineProperties(nullObject, polyProps);\n Object.defineProperty(shim, 'nullPolyfill', {\n configurable: false,\n enumerable: false,\n writable: false,\n value: nullObject\n });\n return function (prototype, props) {\n return create(prototype === null ? nullObject : prototype, props);\n };\n }();\n}","/*es5-ext/object/for-each*/\nfunction _(require, module, exports) {\n module.exports = require(286 /* ./_iterate */)('forEach');\n}","// Deprecated\n/*es5-ext/object/is-callable*/\nfunction _(require, module, exports) {\n module.exports = function (obj) {\n return typeof obj === 'function';\n };\n}","/*es5-ext/object/is-object*/\nfunction _(require, module, exports) {\n var isValue = require(295 /* ./is-value */);\n var map = {\n function: true,\n object: true\n };\n module.exports = function (value) {\n return isValue(value) && map[typeof value] || false;\n };\n}","/*es5-ext/object/is-value*/\nfunction _(require, module, exports) {\n var _undefined = require(276 /* ../function/noop */)();\n // Support ES3 engines\n module.exports = function (val) {\n return val !== _undefined && val !== null;\n };\n}","/*es5-ext/object/keys/index*/\nfunction _(require, module, exports) {\n module.exports = require(297 /* ./is-implemented */)() ? Object.keys : require(298 /* ./shim */);\n}","/*es5-ext/object/keys/is-implemented*/\nfunction _(require, module, exports) {\n module.exports = function () {\n try {\n Object.keys('primitive');\n return true;\n } catch (e) {\n return false;\n }\n };\n}","/*es5-ext/object/keys/shim*/\nfunction _(require, module, exports) {\n var isValue = require(295 /* ../is-value */);\n var keys = Object.keys;\n module.exports = function (object) {\n return keys(isValue(object) ? Object(object) : object);\n };\n}","/*es5-ext/object/map*/\nfunction _(require, module, exports) {\n var callable = require(304 /* ./valid-callable */), forEach = require(292 /* ./for-each */), call = Function.prototype.call;\n module.exports = function (obj, cb) {\n var result = {}, thisArg = arguments[2];\n callable(cb);\n forEach(obj, function (value, key, targetObj, index) {\n result[key] = call.call(cb, thisArg, value, key, targetObj, index);\n });\n return result;\n };\n}","/*es5-ext/object/normalize-options*/\nfunction _(require, module, exports) {\n var isValue = require(295 /* ./is-value */);\n var forEach = Array.prototype.forEach, create = Object.create;\n var process = function (src, obj) {\n var key;\n for (key in src)\n obj[key] = src[key];\n };\n // eslint-disable-next-line no-unused-vars\n module.exports = function (opts1) {\n var result = create(null);\n forEach.call(arguments, function (options) {\n if (!isValue(options))\n return;\n process(Object(options), result);\n });\n return result;\n };\n}","/*es5-ext/object/set-prototype-of/index*/\nfunction _(require, module, exports) {\n module.exports = require(302 /* ./is-implemented */)() ? Object.setPrototypeOf : require(303 /* ./shim */);\n}","/*es5-ext/object/set-prototype-of/is-implemented*/\nfunction _(require, module, exports) {\n var create = Object.create, getPrototypeOf = Object.getPrototypeOf, plainObject = {};\n module.exports = function () {\n var setPrototypeOf = Object.setPrototypeOf, customCreate = arguments[0] || create;\n if (typeof setPrototypeOf !== 'function')\n return false;\n return getPrototypeOf(setPrototypeOf(customCreate(null), plainObject)) === plainObject;\n };\n}","/* eslint no-proto: \"off\" */\n// Big thanks to @WebReflection for sorting this out\n// https://gist.github.com/WebReflection/5593554\n/*es5-ext/object/set-prototype-of/shim*/\nfunction _(require, module, exports) {\n var isObject = require(294 /* ../is-object */), value = require(306 /* ../valid-value */), objIsPrototypeOf = Object.prototype.isPrototypeOf, defineProperty = Object.defineProperty, nullDesc = {\n configurable: true,\n enumerable: false,\n writable: true,\n value: undefined\n }, validate;\n validate = function (obj, prototype) {\n value(obj);\n if (prototype === null || isObject(prototype))\n return obj;\n throw new TypeError('Prototype must be null or an object');\n };\n module.exports = function (status) {\n var fn, set;\n if (!status)\n return null;\n if (status.level === 2) {\n if (status.set) {\n set = status.set;\n fn = function (obj, prototype) {\n set.call(validate(obj, prototype), prototype);\n return obj;\n };\n } else {\n fn = function (obj, prototype) {\n validate(obj, prototype).__proto__ = prototype;\n return obj;\n };\n }\n } else {\n fn = function self(obj, prototype) {\n var isNullBase;\n validate(obj, prototype);\n isNullBase = objIsPrototypeOf.call(self.nullPolyfill, obj);\n if (isNullBase)\n delete self.nullPolyfill.__proto__;\n if (prototype === null)\n prototype = self.nullPolyfill;\n obj.__proto__ = prototype;\n if (isNullBase)\n defineProperty(self.nullPolyfill, '__proto__', nullDesc);\n return obj;\n };\n }\n return Object.defineProperty(fn, 'level', {\n configurable: false,\n enumerable: false,\n writable: false,\n value: status.level\n });\n }(function () {\n var tmpObj1 = Object.create(null), tmpObj2 = {}, set, desc = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__');\n if (desc) {\n try {\n set = desc.set;\n // Opera crashes at this point\n set.call(tmpObj1, tmpObj2);\n } catch (ignore) {\n }\n if (Object.getPrototypeOf(tmpObj1) === tmpObj2)\n return {\n set: set,\n level: 2\n };\n }\n tmpObj1.__proto__ = tmpObj2;\n if (Object.getPrototypeOf(tmpObj1) === tmpObj2)\n return { level: 2 };\n tmpObj1 = {};\n tmpObj1.__proto__ = tmpObj2;\n if (Object.getPrototypeOf(tmpObj1) === tmpObj2)\n return { level: 1 };\n return false;\n }());\n require(291 /* ../create */);\n}","/*es5-ext/object/valid-callable*/\nfunction _(require, module, exports) {\n module.exports = function (fn) {\n if (typeof fn !== 'function')\n throw new TypeError(fn + ' is not a function');\n return fn;\n };\n}","/*es5-ext/object/valid-object*/\nfunction _(require, module, exports) {\n var isObject = require(294 /* ./is-object */);\n module.exports = function (value) {\n if (!isObject(value))\n throw new TypeError(value + ' is not an Object');\n return value;\n };\n}","/*es5-ext/object/valid-value*/\nfunction _(require, module, exports) {\n var isValue = require(295 /* ./is-value */);\n module.exports = function (value) {\n if (!isValue(value))\n throw new TypeError('Cannot use null or undefined');\n return value;\n };\n}","/*es5-ext/string/#/contains/index*/\nfunction _(require, module, exports) {\n module.exports = require(308 /* ./is-implemented */)() ? String.prototype.contains : require(309 /* ./shim */);\n}","/*es5-ext/string/#/contains/is-implemented*/\nfunction _(require, module, exports) {\n var str = 'razdwatrzy';\n module.exports = function () {\n if (typeof str.contains !== 'function')\n return false;\n return str.contains('dwa') === true && str.contains('foo') === false;\n };\n}","/*es5-ext/string/#/contains/shim*/\nfunction _(require, module, exports) {\n var indexOf = String.prototype.indexOf;\n module.exports = function (searchString) {\n return indexOf.call(this, searchString, arguments[1]) > -1;\n };\n}","/*es5-ext/string/is-string*/\nfunction _(require, module, exports) {\n var objToString = Object.prototype.toString, id = objToString.call('');\n module.exports = function (value) {\n return typeof value === 'string' || value && typeof value === 'object' && (value instanceof String || objToString.call(value) === id) || false;\n };\n}","/*es5-ext/string/random-uniq*/\nfunction _(require, module, exports) {\n var generated = Object.create(null), random = Math.random;\n module.exports = function () {\n var str;\n do {\n str = random().toString(36).slice(2);\n } while (generated[str]);\n return str;\n };\n}","/*es6-iterator/array*/\nfunction _(require, module, exports) {\n var setPrototypeOf = require(301 /* es5-ext/object/set-prototype-of */), contains = require(307 /* es5-ext/string/#/contains */), d = require(268 /* d */), Symbol = require(325 /* es6-symbol */), Iterator = require(315 /* ./ */);\n var defineProperty = Object.defineProperty, ArrayIterator;\n ArrayIterator = module.exports = function (arr, kind) {\n if (!(this instanceof ArrayIterator))\n throw new TypeError('Constructor requires \\'new\\'');\n Iterator.call(this, arr);\n if (!kind)\n kind = 'value';\n else if (contains.call(kind, 'key+value'))\n kind = 'key+value';\n else if (contains.call(kind, 'key'))\n kind = 'key';\n else\n kind = 'value';\n defineProperty(this, '__kind__', d('', kind));\n };\n if (setPrototypeOf)\n setPrototypeOf(ArrayIterator, Iterator);\n // Internal %ArrayIteratorPrototype% doesn't expose its constructor\n delete ArrayIterator.prototype.constructor;\n ArrayIterator.prototype = Object.create(Iterator.prototype, {\n _resolve: d(function (i) {\n if (this.__kind__ === 'value')\n return this.__list__[i];\n if (this.__kind__ === 'key+value')\n return [\n i,\n this.__list__[i]\n ];\n return i;\n })\n });\n defineProperty(ArrayIterator.prototype, Symbol.toStringTag, d('c', 'Array Iterator'));\n}","/*es6-iterator/for-of*/\nfunction _(require, module, exports) {\n var isArguments = require(274 /* es5-ext/function/is-arguments */), callable = require(304 /* es5-ext/object/valid-callable */), isString = require(310 /* es5-ext/string/is-string */), get = require(314 /* ./get */);\n var isArray = Array.isArray, call = Function.prototype.call, some = Array.prototype.some;\n module.exports = function (iterable, cb) {\n var mode, thisArg = arguments[2], result, doBreak, broken, i, length, char, code;\n if (isArray(iterable) || isArguments(iterable))\n mode = 'array';\n else if (isString(iterable))\n mode = 'string';\n else\n iterable = get(iterable);\n callable(cb);\n doBreak = function () {\n broken = true;\n };\n if (mode === 'array') {\n some.call(iterable, function (value) {\n call.call(cb, thisArg, value, doBreak);\n return broken;\n });\n return;\n }\n if (mode === 'string') {\n length = iterable.length;\n for (i = 0; i < length; ++i) {\n char = iterable[i];\n if (i + 1 < length) {\n code = char.charCodeAt(0);\n if (code >= 55296 && code <= 56319)\n char += iterable[++i];\n }\n call.call(cb, thisArg, char, doBreak);\n if (broken)\n break;\n }\n return;\n }\n result = iterable.next();\n while (!result.done) {\n call.call(cb, thisArg, result.value, doBreak);\n if (broken)\n return;\n result = iterable.next();\n }\n };\n}","/*es6-iterator/get*/\nfunction _(require, module, exports) {\n var isArguments = require(274 /* es5-ext/function/is-arguments */), isString = require(310 /* es5-ext/string/is-string */), ArrayIterator = require(312 /* ./array */), StringIterator = require(317 /* ./string */), iterable = require(318 /* ./valid-iterable */), iteratorSymbol = require(325 /* es6-symbol */).iterator;\n module.exports = function (obj) {\n if (typeof iterable(obj)[iteratorSymbol] === 'function')\n return obj[iteratorSymbol]();\n if (isArguments(obj))\n return new ArrayIterator(obj);\n if (isString(obj))\n return new StringIterator(obj);\n return new ArrayIterator(obj);\n };\n}","/*es6-iterator/index*/\nfunction _(require, module, exports) {\n var clear = require(269 /* es5-ext/array/#/clear */), assign = require(287 /* es5-ext/object/assign */), callable = require(304 /* es5-ext/object/valid-callable */), value = require(306 /* es5-ext/object/valid-value */), d = require(268 /* d */), autoBind = require(267 /* d/auto-bind */), Symbol = require(325 /* es6-symbol */);\n var defineProperty = Object.defineProperty, defineProperties = Object.defineProperties, Iterator;\n module.exports = Iterator = function (list, context) {\n if (!(this instanceof Iterator))\n throw new TypeError('Constructor requires \\'new\\'');\n defineProperties(this, {\n __list__: d('w', value(list)),\n __context__: d('w', context),\n __nextIndex__: d('w', 0)\n });\n if (!context)\n return;\n callable(context.on);\n context.on('_add', this._onAdd);\n context.on('_delete', this._onDelete);\n context.on('_clear', this._onClear);\n };\n // Internal %IteratorPrototype% doesn't expose its constructor\n delete Iterator.prototype.constructor;\n defineProperties(Iterator.prototype, assign({\n _next: d(function () {\n var i;\n if (!this.__list__)\n return undefined;\n if (this.__redo__) {\n i = this.__redo__.shift();\n if (i !== undefined)\n return i;\n }\n if (this.__nextIndex__ < this.__list__.length)\n return this.__nextIndex__++;\n this._unBind();\n return undefined;\n }),\n next: d(function () {\n return this._createResult(this._next());\n }),\n _createResult: d(function (i) {\n if (i === undefined)\n return {\n done: true,\n value: undefined\n };\n return {\n done: false,\n value: this._resolve(i)\n };\n }),\n _resolve: d(function (i) {\n return this.__list__[i];\n }),\n _unBind: d(function () {\n this.__list__ = null;\n delete this.__redo__;\n if (!this.__context__)\n return;\n this.__context__.off('_add', this._onAdd);\n this.__context__.off('_delete', this._onDelete);\n this.__context__.off('_clear', this._onClear);\n this.__context__ = null;\n }),\n toString: d(function () {\n return '[object ' + (this[Symbol.toStringTag] || 'Object') + ']';\n })\n }, autoBind({\n _onAdd: d(function (index) {\n if (index >= this.__nextIndex__)\n return;\n ++this.__nextIndex__;\n if (!this.__redo__) {\n defineProperty(this, '__redo__', d('c', [index]));\n return;\n }\n this.__redo__.forEach(function (redo, i) {\n if (redo >= index)\n this.__redo__[i] = ++redo;\n }, this);\n this.__redo__.push(index);\n }),\n _onDelete: d(function (index) {\n var i;\n if (index >= this.__nextIndex__)\n return;\n --this.__nextIndex__;\n if (!this.__redo__)\n return;\n i = this.__redo__.indexOf(index);\n if (i !== -1)\n this.__redo__.splice(i, 1);\n this.__redo__.forEach(function (redo, j) {\n if (redo > index)\n this.__redo__[j] = --redo;\n }, this);\n }),\n _onClear: d(function () {\n if (this.__redo__)\n clear.call(this.__redo__);\n this.__nextIndex__ = 0;\n })\n })));\n defineProperty(Iterator.prototype, Symbol.iterator, d(function () {\n return this;\n }));\n}","/*es6-iterator/is-iterable*/\nfunction _(require, module, exports) {\n var isArguments = require(274 /* es5-ext/function/is-arguments */), isValue = require(295 /* es5-ext/object/is-value */), isString = require(310 /* es5-ext/string/is-string */);\n var iteratorSymbol = require(325 /* es6-symbol */).iterator, isArray = Array.isArray;\n module.exports = function (value) {\n if (!isValue(value))\n return false;\n if (isArray(value))\n return true;\n if (isString(value))\n return true;\n if (isArguments(value))\n return true;\n return typeof value[iteratorSymbol] === 'function';\n };\n}","// Thanks @mathiasbynens\n// http://mathiasbynens.be/notes/javascript-unicode#iterating-over-symbols\n/*es6-iterator/string*/\nfunction _(require, module, exports) {\n var setPrototypeOf = require(301 /* es5-ext/object/set-prototype-of */), d = require(268 /* d */), Symbol = require(325 /* es6-symbol */), Iterator = require(315 /* ./ */);\n var defineProperty = Object.defineProperty, StringIterator;\n StringIterator = module.exports = function (str) {\n if (!(this instanceof StringIterator))\n throw new TypeError('Constructor requires \\'new\\'');\n str = String(str);\n Iterator.call(this, str);\n defineProperty(this, '__length__', d('', str.length));\n };\n if (setPrototypeOf)\n setPrototypeOf(StringIterator, Iterator);\n // Internal %ArrayIteratorPrototype% doesn't expose its constructor\n delete StringIterator.prototype.constructor;\n StringIterator.prototype = Object.create(Iterator.prototype, {\n _next: d(function () {\n if (!this.__list__)\n return undefined;\n if (this.__nextIndex__ < this.__length__)\n return this.__nextIndex__++;\n this._unBind();\n return undefined;\n }),\n _resolve: d(function (i) {\n var char = this.__list__[i], code;\n if (this.__nextIndex__ === this.__length__)\n return char;\n code = char.charCodeAt(0);\n if (code >= 55296 && code <= 56319)\n return char + this.__list__[this.__nextIndex__++];\n return char;\n })\n });\n defineProperty(StringIterator.prototype, Symbol.toStringTag, d('c', 'String Iterator'));\n}","/*es6-iterator/valid-iterable*/\nfunction _(require, module, exports) {\n var isIterable = require(316 /* ./is-iterable */);\n module.exports = function (value) {\n if (!isIterable(value))\n throw new TypeError(value + ' is not iterable');\n return value;\n };\n}","/*!\n * @overview es6-promise - a tiny implementation of Promises/A+.\n * @copyright Copyright (c) 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors (Conversion to ES6 API by Jake Archibald)\n * @license Licensed under MIT license\n * See https://raw.githubusercontent.com/jakearchibald/es6-promise/master/LICENSE\n * @version 3.0.2\n */\n/*es6-promise/dist/es6-promise*/\nfunction _(require, module, exports) {\n (function () {\n 'use strict';\n function lib$es6$promise$utils$$objectOrFunction(x) {\n return typeof x === 'function' || typeof x === 'object' && x !== null;\n }\n function lib$es6$promise$utils$$isFunction(x) {\n return typeof x === 'function';\n }\n function lib$es6$promise$utils$$isMaybeThenable(x) {\n return typeof x === 'object' && x !== null;\n }\n var lib$es6$promise$utils$$_isArray;\n if (!Array.isArray) {\n lib$es6$promise$utils$$_isArray = function (x) {\n return Object.prototype.toString.call(x) === '[object Array]';\n };\n } else {\n lib$es6$promise$utils$$_isArray = Array.isArray;\n }\n var lib$es6$promise$utils$$isArray = lib$es6$promise$utils$$_isArray;\n var lib$es6$promise$asap$$len = 0;\n var lib$es6$promise$asap$$toString = {}.toString;\n var lib$es6$promise$asap$$vertxNext;\n var lib$es6$promise$asap$$customSchedulerFn;\n var lib$es6$promise$asap$$asap = function asap(callback, arg) {\n lib$es6$promise$asap$$queue[lib$es6$promise$asap$$len] = callback;\n lib$es6$promise$asap$$queue[lib$es6$promise$asap$$len + 1] = arg;\n lib$es6$promise$asap$$len += 2;\n if (lib$es6$promise$asap$$len === 2) {\n // If len is 2, that means that we need to schedule an async flush.\n // If additional callbacks are queued before the queue is flushed, they\n // will be processed by this flush that we are scheduling.\n if (lib$es6$promise$asap$$customSchedulerFn) {\n lib$es6$promise$asap$$customSchedulerFn(lib$es6$promise$asap$$flush);\n } else {\n lib$es6$promise$asap$$scheduleFlush();\n }\n }\n };\n function lib$es6$promise$asap$$setScheduler(scheduleFn) {\n lib$es6$promise$asap$$customSchedulerFn = scheduleFn;\n }\n function lib$es6$promise$asap$$setAsap(asapFn) {\n lib$es6$promise$asap$$asap = asapFn;\n }\n var lib$es6$promise$asap$$browserWindow = typeof window !== 'undefined' ? window : undefined;\n var lib$es6$promise$asap$$browserGlobal = lib$es6$promise$asap$$browserWindow || {};\n var lib$es6$promise$asap$$BrowserMutationObserver = lib$es6$promise$asap$$browserGlobal.MutationObserver || lib$es6$promise$asap$$browserGlobal.WebKitMutationObserver;\n var lib$es6$promise$asap$$isNode = typeof process !== 'undefined' && {}.toString.call(process) === '[object process]';\n // test for web worker but not in IE10\n var lib$es6$promise$asap$$isWorker = typeof Uint8ClampedArray !== 'undefined' && typeof importScripts !== 'undefined' && typeof MessageChannel !== 'undefined';\n // node\n function lib$es6$promise$asap$$useNextTick() {\n // node version 0.10.x displays a deprecation warning when nextTick is used recursively\n // see https://github.com/cujojs/when/issues/410 for details\n return function () {\n process.nextTick(lib$es6$promise$asap$$flush);\n };\n }\n // vertx\n function lib$es6$promise$asap$$useVertxTimer() {\n return function () {\n lib$es6$promise$asap$$vertxNext(lib$es6$promise$asap$$flush);\n };\n }\n function lib$es6$promise$asap$$useMutationObserver() {\n var iterations = 0;\n var observer = new lib$es6$promise$asap$$BrowserMutationObserver(lib$es6$promise$asap$$flush);\n var node = document.createTextNode('');\n observer.observe(node, { characterData: true });\n return function () {\n node.data = iterations = ++iterations % 2;\n };\n }\n // web worker\n function lib$es6$promise$asap$$useMessageChannel() {\n var channel = new MessageChannel();\n channel.port1.onmessage = lib$es6$promise$asap$$flush;\n return function () {\n channel.port2.postMessage(0);\n };\n }\n function lib$es6$promise$asap$$useSetTimeout() {\n return function () {\n setTimeout(lib$es6$promise$asap$$flush, 1);\n };\n }\n var lib$es6$promise$asap$$queue = new Array(1000);\n function lib$es6$promise$asap$$flush() {\n for (var i = 0; i < lib$es6$promise$asap$$len; i += 2) {\n var callback = lib$es6$promise$asap$$queue[i];\n var arg = lib$es6$promise$asap$$queue[i + 1];\n callback(arg);\n lib$es6$promise$asap$$queue[i] = undefined;\n lib$es6$promise$asap$$queue[i + 1] = undefined;\n }\n lib$es6$promise$asap$$len = 0;\n }\n function lib$es6$promise$asap$$attemptVertx() {\n try {\n var r = require;\n var vertx = r('vertx');\n lib$es6$promise$asap$$vertxNext = vertx.runOnLoop || vertx.runOnContext;\n return lib$es6$promise$asap$$useVertxTimer();\n } catch (e) {\n return lib$es6$promise$asap$$useSetTimeout();\n }\n }\n var lib$es6$promise$asap$$scheduleFlush;\n // Decide what async method to use to triggering processing of queued callbacks:\n if (lib$es6$promise$asap$$isNode) {\n lib$es6$promise$asap$$scheduleFlush = lib$es6$promise$asap$$useNextTick();\n } else if (lib$es6$promise$asap$$BrowserMutationObserver) {\n lib$es6$promise$asap$$scheduleFlush = lib$es6$promise$asap$$useMutationObserver();\n } else if (lib$es6$promise$asap$$isWorker) {\n lib$es6$promise$asap$$scheduleFlush = lib$es6$promise$asap$$useMessageChannel();\n } else if (lib$es6$promise$asap$$browserWindow === undefined && typeof require === 'function') {\n lib$es6$promise$asap$$scheduleFlush = lib$es6$promise$asap$$attemptVertx();\n } else {\n lib$es6$promise$asap$$scheduleFlush = lib$es6$promise$asap$$useSetTimeout();\n }\n function lib$es6$promise$$internal$$noop() {\n }\n var lib$es6$promise$$internal$$PENDING = void 0;\n var lib$es6$promise$$internal$$FULFILLED = 1;\n var lib$es6$promise$$internal$$REJECTED = 2;\n var lib$es6$promise$$internal$$GET_THEN_ERROR = new lib$es6$promise$$internal$$ErrorObject();\n function lib$es6$promise$$internal$$selfFulfillment() {\n return new TypeError('You cannot resolve a promise with itself');\n }\n function lib$es6$promise$$internal$$cannotReturnOwn() {\n return new TypeError('A promises callback cannot return that same promise.');\n }\n function lib$es6$promise$$internal$$getThen(promise) {\n try {\n return promise.then;\n } catch (error) {\n lib$es6$promise$$internal$$GET_THEN_ERROR.error = error;\n return lib$es6$promise$$internal$$GET_THEN_ERROR;\n }\n }\n function lib$es6$promise$$internal$$tryThen(then, value, fulfillmentHandler, rejectionHandler) {\n try {\n then.call(value, fulfillmentHandler, rejectionHandler);\n } catch (e) {\n return e;\n }\n }\n function lib$es6$promise$$internal$$handleForeignThenable(promise, thenable, then) {\n lib$es6$promise$asap$$asap(function (promise) {\n var sealed = false;\n var error = lib$es6$promise$$internal$$tryThen(then, thenable, function (value) {\n if (sealed) {\n return;\n }\n sealed = true;\n if (thenable !== value) {\n lib$es6$promise$$internal$$resolve(promise, value);\n } else {\n lib$es6$promise$$internal$$fulfill(promise, value);\n }\n }, function (reason) {\n if (sealed) {\n return;\n }\n sealed = true;\n lib$es6$promise$$internal$$reject(promise, reason);\n }, 'Settle: ' + (promise._label || ' unknown promise'));\n if (!sealed && error) {\n sealed = true;\n lib$es6$promise$$internal$$reject(promise, error);\n }\n }, promise);\n }\n function lib$es6$promise$$internal$$handleOwnThenable(promise, thenable) {\n if (thenable._state === lib$es6$promise$$internal$$FULFILLED) {\n lib$es6$promise$$internal$$fulfill(promise, thenable._result);\n } else if (thenable._state === lib$es6$promise$$internal$$REJECTED) {\n lib$es6$promise$$internal$$reject(promise, thenable._result);\n } else {\n lib$es6$promise$$internal$$subscribe(thenable, undefined, function (value) {\n lib$es6$promise$$internal$$resolve(promise, value);\n }, function (reason) {\n lib$es6$promise$$internal$$reject(promise, reason);\n });\n }\n }\n function lib$es6$promise$$internal$$handleMaybeThenable(promise, maybeThenable) {\n if (maybeThenable.constructor === promise.constructor) {\n lib$es6$promise$$internal$$handleOwnThenable(promise, maybeThenable);\n } else {\n var then = lib$es6$promise$$internal$$getThen(maybeThenable);\n if (then === lib$es6$promise$$internal$$GET_THEN_ERROR) {\n lib$es6$promise$$internal$$reject(promise, lib$es6$promise$$internal$$GET_THEN_ERROR.error);\n } else if (then === undefined) {\n lib$es6$promise$$internal$$fulfill(promise, maybeThenable);\n } else if (lib$es6$promise$utils$$isFunction(then)) {\n lib$es6$promise$$internal$$handleForeignThenable(promise, maybeThenable, then);\n } else {\n lib$es6$promise$$internal$$fulfill(promise, maybeThenable);\n }\n }\n }\n function lib$es6$promise$$internal$$resolve(promise, value) {\n if (promise === value) {\n lib$es6$promise$$internal$$reject(promise, lib$es6$promise$$internal$$selfFulfillment());\n } else if (lib$es6$promise$utils$$objectOrFunction(value)) {\n lib$es6$promise$$internal$$handleMaybeThenable(promise, value);\n } else {\n lib$es6$promise$$internal$$fulfill(promise, value);\n }\n }\n function lib$es6$promise$$internal$$publishRejection(promise) {\n if (promise._onerror) {\n promise._onerror(promise._result);\n }\n lib$es6$promise$$internal$$publish(promise);\n }\n function lib$es6$promise$$internal$$fulfill(promise, value) {\n if (promise._state !== lib$es6$promise$$internal$$PENDING) {\n return;\n }\n promise._result = value;\n promise._state = lib$es6$promise$$internal$$FULFILLED;\n if (promise._subscribers.length !== 0) {\n lib$es6$promise$asap$$asap(lib$es6$promise$$internal$$publish, promise);\n }\n }\n function lib$es6$promise$$internal$$reject(promise, reason) {\n if (promise._state !== lib$es6$promise$$internal$$PENDING) {\n return;\n }\n promise._state = lib$es6$promise$$internal$$REJECTED;\n promise._result = reason;\n lib$es6$promise$asap$$asap(lib$es6$promise$$internal$$publishRejection, promise);\n }\n function lib$es6$promise$$internal$$subscribe(parent, child, onFulfillment, onRejection) {\n var subscribers = parent._subscribers;\n var length = subscribers.length;\n parent._onerror = null;\n subscribers[length] = child;\n subscribers[length + lib$es6$promise$$internal$$FULFILLED] = onFulfillment;\n subscribers[length + lib$es6$promise$$internal$$REJECTED] = onRejection;\n if (length === 0 && parent._state) {\n lib$es6$promise$asap$$asap(lib$es6$promise$$internal$$publish, parent);\n }\n }\n function lib$es6$promise$$internal$$publish(promise) {\n var subscribers = promise._subscribers;\n var settled = promise._state;\n if (subscribers.length === 0) {\n return;\n }\n var child, callback, detail = promise._result;\n for (var i = 0; i < subscribers.length; i += 3) {\n child = subscribers[i];\n callback = subscribers[i + settled];\n if (child) {\n lib$es6$promise$$internal$$invokeCallback(settled, child, callback, detail);\n } else {\n callback(detail);\n }\n }\n promise._subscribers.length = 0;\n }\n function lib$es6$promise$$internal$$ErrorObject() {\n this.error = null;\n }\n var lib$es6$promise$$internal$$TRY_CATCH_ERROR = new lib$es6$promise$$internal$$ErrorObject();\n function lib$es6$promise$$internal$$tryCatch(callback, detail) {\n try {\n return callback(detail);\n } catch (e) {\n lib$es6$promise$$internal$$TRY_CATCH_ERROR.error = e;\n return lib$es6$promise$$internal$$TRY_CATCH_ERROR;\n }\n }\n function lib$es6$promise$$internal$$invokeCallback(settled, promise, callback, detail) {\n var hasCallback = lib$es6$promise$utils$$isFunction(callback), value, error, succeeded, failed;\n if (hasCallback) {\n value = lib$es6$promise$$internal$$tryCatch(callback, detail);\n if (value === lib$es6$promise$$internal$$TRY_CATCH_ERROR) {\n failed = true;\n error = value.error;\n value = null;\n } else {\n succeeded = true;\n }\n if (promise === value) {\n lib$es6$promise$$internal$$reject(promise, lib$es6$promise$$internal$$cannotReturnOwn());\n return;\n }\n } else {\n value = detail;\n succeeded = true;\n }\n if (promise._state !== lib$es6$promise$$internal$$PENDING) {\n } else if (hasCallback && succeeded) {\n lib$es6$promise$$internal$$resolve(promise, value);\n } else if (failed) {\n lib$es6$promise$$internal$$reject(promise, error);\n } else if (settled === lib$es6$promise$$internal$$FULFILLED) {\n lib$es6$promise$$internal$$fulfill(promise, value);\n } else if (settled === lib$es6$promise$$internal$$REJECTED) {\n lib$es6$promise$$internal$$reject(promise, value);\n }\n }\n function lib$es6$promise$$internal$$initializePromise(promise, resolver) {\n try {\n resolver(function resolvePromise(value) {\n lib$es6$promise$$internal$$resolve(promise, value);\n }, function rejectPromise(reason) {\n lib$es6$promise$$internal$$reject(promise, reason);\n });\n } catch (e) {\n lib$es6$promise$$internal$$reject(promise, e);\n }\n }\n function lib$es6$promise$enumerator$$Enumerator(Constructor, input) {\n var enumerator = this;\n enumerator._instanceConstructor = Constructor;\n enumerator.promise = new Constructor(lib$es6$promise$$internal$$noop);\n if (enumerator._validateInput(input)) {\n enumerator._input = input;\n enumerator.length = input.length;\n enumerator._remaining = input.length;\n enumerator._init();\n if (enumerator.length === 0) {\n lib$es6$promise$$internal$$fulfill(enumerator.promise, enumerator._result);\n } else {\n enumerator.length = enumerator.length || 0;\n enumerator._enumerate();\n if (enumerator._remaining === 0) {\n lib$es6$promise$$internal$$fulfill(enumerator.promise, enumerator._result);\n }\n }\n } else {\n lib$es6$promise$$internal$$reject(enumerator.promise, enumerator._validationError());\n }\n }\n lib$es6$promise$enumerator$$Enumerator.prototype._validateInput = function (input) {\n return lib$es6$promise$utils$$isArray(input);\n };\n lib$es6$promise$enumerator$$Enumerator.prototype._validationError = function () {\n return new Error('Array Methods must be provided an Array');\n };\n lib$es6$promise$enumerator$$Enumerator.prototype._init = function () {\n this._result = new Array(this.length);\n };\n var lib$es6$promise$enumerator$$default = lib$es6$promise$enumerator$$Enumerator;\n lib$es6$promise$enumerator$$Enumerator.prototype._enumerate = function () {\n var enumerator = this;\n var length = enumerator.length;\n var promise = enumerator.promise;\n var input = enumerator._input;\n for (var i = 0; promise._state === lib$es6$promise$$internal$$PENDING && i < length; i++) {\n enumerator._eachEntry(input[i], i);\n }\n };\n lib$es6$promise$enumerator$$Enumerator.prototype._eachEntry = function (entry, i) {\n var enumerator = this;\n var c = enumerator._instanceConstructor;\n if (lib$es6$promise$utils$$isMaybeThenable(entry)) {\n if (entry.constructor === c && entry._state !== lib$es6$promise$$internal$$PENDING) {\n entry._onerror = null;\n enumerator._settledAt(entry._state, i, entry._result);\n } else {\n enumerator._willSettleAt(c.resolve(entry), i);\n }\n } else {\n enumerator._remaining--;\n enumerator._result[i] = entry;\n }\n };\n lib$es6$promise$enumerator$$Enumerator.prototype._settledAt = function (state, i, value) {\n var enumerator = this;\n var promise = enumerator.promise;\n if (promise._state === lib$es6$promise$$internal$$PENDING) {\n enumerator._remaining--;\n if (state === lib$es6$promise$$internal$$REJECTED) {\n lib$es6$promise$$internal$$reject(promise, value);\n } else {\n enumerator._result[i] = value;\n }\n }\n if (enumerator._remaining === 0) {\n lib$es6$promise$$internal$$fulfill(promise, enumerator._result);\n }\n };\n lib$es6$promise$enumerator$$Enumerator.prototype._willSettleAt = function (promise, i) {\n var enumerator = this;\n lib$es6$promise$$internal$$subscribe(promise, undefined, function (value) {\n enumerator._settledAt(lib$es6$promise$$internal$$FULFILLED, i, value);\n }, function (reason) {\n enumerator._settledAt(lib$es6$promise$$internal$$REJECTED, i, reason);\n });\n };\n function lib$es6$promise$promise$all$$all(entries) {\n return new lib$es6$promise$enumerator$$default(this, entries).promise;\n }\n var lib$es6$promise$promise$all$$default = lib$es6$promise$promise$all$$all;\n function lib$es6$promise$promise$race$$race(entries) {\n /*jshint validthis:true */\n var Constructor = this;\n var promise = new Constructor(lib$es6$promise$$internal$$noop);\n if (!lib$es6$promise$utils$$isArray(entries)) {\n lib$es6$promise$$internal$$reject(promise, new TypeError('You must pass an array to race.'));\n return promise;\n }\n var length = entries.length;\n function onFulfillment(value) {\n lib$es6$promise$$internal$$resolve(promise, value);\n }\n function onRejection(reason) {\n lib$es6$promise$$internal$$reject(promise, reason);\n }\n for (var i = 0; promise._state === lib$es6$promise$$internal$$PENDING && i < length; i++) {\n lib$es6$promise$$internal$$subscribe(Constructor.resolve(entries[i]), undefined, onFulfillment, onRejection);\n }\n return promise;\n }\n var lib$es6$promise$promise$race$$default = lib$es6$promise$promise$race$$race;\n function lib$es6$promise$promise$resolve$$resolve(object) {\n /*jshint validthis:true */\n var Constructor = this;\n if (object && typeof object === 'object' && object.constructor === Constructor) {\n return object;\n }\n var promise = new Constructor(lib$es6$promise$$internal$$noop);\n lib$es6$promise$$internal$$resolve(promise, object);\n return promise;\n }\n var lib$es6$promise$promise$resolve$$default = lib$es6$promise$promise$resolve$$resolve;\n function lib$es6$promise$promise$reject$$reject(reason) {\n /*jshint validthis:true */\n var Constructor = this;\n var promise = new Constructor(lib$es6$promise$$internal$$noop);\n lib$es6$promise$$internal$$reject(promise, reason);\n return promise;\n }\n var lib$es6$promise$promise$reject$$default = lib$es6$promise$promise$reject$$reject;\n var lib$es6$promise$promise$$counter = 0;\n function lib$es6$promise$promise$$needsResolver() {\n throw new TypeError('You must pass a resolver function as the first argument to the promise constructor');\n }\n function lib$es6$promise$promise$$needsNew() {\n throw new TypeError('Failed to construct \\'Promise\\': Please use the \\'new\\' operator, this object constructor cannot be called as a function.');\n }\n var lib$es6$promise$promise$$default = lib$es6$promise$promise$$Promise;\n /**\n Promise objects represent the eventual result of an asynchronous operation. The\n primary way of interacting with a promise is through its `then` method, which\n registers callbacks to receive either a promise's eventual value or the reason\n why the promise cannot be fulfilled.\n\n Terminology\n -----------\n\n - `promise` is an object or function with a `then` method whose behavior conforms to this specification.\n - `thenable` is an object or function that defines a `then` method.\n - `value` is any legal JavaScript value (including undefined, a thenable, or a promise).\n - `exception` is a value that is thrown using the throw statement.\n - `reason` is a value that indicates why a promise was rejected.\n - `settled` the final resting state of a promise, fulfilled or rejected.\n\n A promise can be in one of three states: pending, fulfilled, or rejected.\n\n Promises that are fulfilled have a fulfillment value and are in the fulfilled\n state. Promises that are rejected have a rejection reason and are in the\n rejected state. A fulfillment value is never a thenable.\n\n Promises can also be said to *resolve* a value. If this value is also a\n promise, then the original promise's settled state will match the value's\n settled state. So a promise that *resolves* a promise that rejects will\n itself reject, and a promise that *resolves* a promise that fulfills will\n itself fulfill.\n\n\n Basic Usage:\n ------------\n\n ```js\n var promise = new Promise(function(resolve, reject) {\n // on success\n resolve(value);\n\n // on failure\n reject(reason);\n });\n\n promise.then(function(value) {\n // on fulfillment\n }, function(reason) {\n // on rejection\n });\n ```\n\n Advanced Usage:\n ---------------\n\n Promises shine when abstracting away asynchronous interactions such as\n `XMLHttpRequest`s.\n\n ```js\n function getJSON(url) {\n return new Promise(function(resolve, reject){\n var xhr = new XMLHttpRequest();\n\n xhr.open('GET', url);\n xhr.onreadystatechange = handler;\n xhr.responseType = 'json';\n xhr.setRequestHeader('Accept', 'application/json');\n xhr.send();\n\n function handler() {\n if (this.readyState === this.DONE) {\n if (this.status === 200) {\n resolve(this.response);\n } else {\n reject(new Error('getJSON: `' + url + '` failed with status: [' + this.status + ']'));\n }\n }\n };\n });\n }\n\n getJSON('/posts.json').then(function(json) {\n // on fulfillment\n }, function(reason) {\n // on rejection\n });\n ```\n\n Unlike callbacks, promises are great composable primitives.\n\n ```js\n Promise.all([\n getJSON('/posts'),\n getJSON('/comments')\n ]).then(function(values){\n values[0] // => postsJSON\n values[1] // => commentsJSON\n\n return values;\n });\n ```\n\n @class Promise\n @param {function} resolver\n Useful for tooling.\n @constructor\n */\n function lib$es6$promise$promise$$Promise(resolver) {\n this._id = lib$es6$promise$promise$$counter++;\n this._state = undefined;\n this._result = undefined;\n this._subscribers = [];\n if (lib$es6$promise$$internal$$noop !== resolver) {\n if (!lib$es6$promise$utils$$isFunction(resolver)) {\n lib$es6$promise$promise$$needsResolver();\n }\n if (!(this instanceof lib$es6$promise$promise$$Promise)) {\n lib$es6$promise$promise$$needsNew();\n }\n lib$es6$promise$$internal$$initializePromise(this, resolver);\n }\n }\n lib$es6$promise$promise$$Promise.all = lib$es6$promise$promise$all$$default;\n lib$es6$promise$promise$$Promise.race = lib$es6$promise$promise$race$$default;\n lib$es6$promise$promise$$Promise.resolve = lib$es6$promise$promise$resolve$$default;\n lib$es6$promise$promise$$Promise.reject = lib$es6$promise$promise$reject$$default;\n lib$es6$promise$promise$$Promise._setScheduler = lib$es6$promise$asap$$setScheduler;\n lib$es6$promise$promise$$Promise._setAsap = lib$es6$promise$asap$$setAsap;\n lib$es6$promise$promise$$Promise._asap = lib$es6$promise$asap$$asap;\n lib$es6$promise$promise$$Promise.prototype = {\n constructor: lib$es6$promise$promise$$Promise,\n /**\n The primary way of interacting with a promise is through its `then` method,\n which registers callbacks to receive either a promise's eventual value or the\n reason why the promise cannot be fulfilled.\n\n ```js\n findUser().then(function(user){\n // user is available\n }, function(reason){\n // user is unavailable, and you are given the reason why\n });\n ```\n\n Chaining\n --------\n\n The return value of `then` is itself a promise. This second, 'downstream'\n promise is resolved with the return value of the first promise's fulfillment\n or rejection handler, or rejected if the handler throws an exception.\n\n ```js\n findUser().then(function (user) {\n return user.name;\n }, function (reason) {\n return 'default name';\n }).then(function (userName) {\n // If `findUser` fulfilled, `userName` will be the user's name, otherwise it\n // will be `'default name'`\n });\n\n findUser().then(function (user) {\n throw new Error('Found user, but still unhappy');\n }, function (reason) {\n throw new Error('`findUser` rejected and we're unhappy');\n }).then(function (value) {\n // never reached\n }, function (reason) {\n // if `findUser` fulfilled, `reason` will be 'Found user, but still unhappy'.\n // If `findUser` rejected, `reason` will be '`findUser` rejected and we're unhappy'.\n });\n ```\n If the downstream promise does not specify a rejection handler, rejection reasons will be propagated further downstream.\n\n ```js\n findUser().then(function (user) {\n throw new PedagogicalException('Upstream error');\n }).then(function (value) {\n // never reached\n }).then(function (value) {\n // never reached\n }, function (reason) {\n // The `PedgagocialException` is propagated all the way down to here\n });\n ```\n\n Assimilation\n ------------\n\n Sometimes the value you want to propagate to a downstream promise can only be\n retrieved asynchronously. This can be achieved by returning a promise in the\n fulfillment or rejection handler. The downstream promise will then be pending\n until the returned promise is settled. This is called *assimilation*.\n\n ```js\n findUser().then(function (user) {\n return findCommentsByAuthor(user);\n }).then(function (comments) {\n // The user's comments are now available\n });\n ```\n\n If the assimliated promise rejects, then the downstream promise will also reject.\n\n ```js\n findUser().then(function (user) {\n return findCommentsByAuthor(user);\n }).then(function (comments) {\n // If `findCommentsByAuthor` fulfills, we'll have the value here\n }, function (reason) {\n // If `findCommentsByAuthor` rejects, we'll have the reason here\n });\n ```\n\n Simple Example\n --------------\n\n Synchronous Example\n\n ```javascript\n var result;\n\n try {\n result = findResult();\n // success\n } catch(reason) {\n // failure\n }\n ```\n\n Errback Example\n\n ```js\n findResult(function(result, err){\n if (err) {\n // failure\n } else {\n // success\n }\n });\n ```\n\n Promise Example;\n\n ```javascript\n findResult().then(function(result){\n // success\n }, function(reason){\n // failure\n });\n ```\n\n Advanced Example\n --------------\n\n Synchronous Example\n\n ```javascript\n var author, books;\n\n try {\n author = findAuthor();\n books = findBooksByAuthor(author);\n // success\n } catch(reason) {\n // failure\n }\n ```\n\n Errback Example\n\n ```js\n\n function foundBooks(books) {\n\n }\n\n function failure(reason) {\n\n }\n\n findAuthor(function(author, err){\n if (err) {\n failure(err);\n // failure\n } else {\n try {\n findBoooksByAuthor(author, function(books, err) {\n if (err) {\n failure(err);\n } else {\n try {\n foundBooks(books);\n } catch(reason) {\n failure(reason);\n }\n }\n });\n } catch(error) {\n failure(err);\n }\n // success\n }\n });\n ```\n\n Promise Example;\n\n ```javascript\n findAuthor().\n then(findBooksByAuthor).\n then(function(books){\n // found books\n }).catch(function(reason){\n // something went wrong\n });\n ```\n\n @method then\n @param {Function} onFulfilled\n @param {Function} onRejected\n Useful for tooling.\n @return {Promise}\n */\n then: function (onFulfillment, onRejection) {\n var parent = this;\n var state = parent._state;\n if (state === lib$es6$promise$$internal$$FULFILLED && !onFulfillment || state === lib$es6$promise$$internal$$REJECTED && !onRejection) {\n return this;\n }\n var child = new this.constructor(lib$es6$promise$$internal$$noop);\n var result = parent._result;\n if (state) {\n var callback = arguments[state - 1];\n lib$es6$promise$asap$$asap(function () {\n lib$es6$promise$$internal$$invokeCallback(state, child, callback, result);\n });\n } else {\n lib$es6$promise$$internal$$subscribe(parent, child, onFulfillment, onRejection);\n }\n return child;\n },\n /**\n `catch` is simply sugar for `then(undefined, onRejection)` which makes it the same\n as the catch block of a try/catch statement.\n\n ```js\n function findAuthor(){\n throw new Error('couldn't find that author');\n }\n\n // synchronous\n try {\n findAuthor();\n } catch(reason) {\n // something went wrong\n }\n\n // async with promises\n findAuthor().catch(function(reason){\n // something went wrong\n });\n ```\n\n @method catch\n @param {Function} onRejection\n Useful for tooling.\n @return {Promise}\n */\n 'catch': function (onRejection) {\n return this.then(null, onRejection);\n }\n };\n function lib$es6$promise$polyfill$$polyfill() {\n var local;\n if (typeof global !== 'undefined') {\n local = global;\n } else if (typeof self !== 'undefined') {\n local = self;\n } else {\n try {\n local = Function('return this')();\n } catch (e) {\n throw new Error('polyfill failed because global object is unavailable in this environment');\n }\n }\n var P = local.Promise;\n if (P && Object.prototype.toString.call(P.resolve()) === '[object Promise]' && !P.cast) {\n return;\n }\n local.Promise = lib$es6$promise$promise$$default;\n }\n var lib$es6$promise$polyfill$$default = lib$es6$promise$polyfill$$polyfill;\n var lib$es6$promise$umd$$ES6Promise = {\n 'Promise': lib$es6$promise$promise$$default,\n 'polyfill': lib$es6$promise$polyfill$$default\n };\n /* global define:true module:true window: true */\n if (typeof define === 'function' && define['amd']) {\n define(function () {\n return lib$es6$promise$umd$$ES6Promise;\n });\n } else if (typeof module !== 'undefined' && module['exports']) {\n module['exports'] = lib$es6$promise$umd$$ES6Promise;\n } else if (typeof this !== 'undefined') {\n this['ES6Promise'] = lib$es6$promise$umd$$ES6Promise;\n }\n lib$es6$promise$polyfill$$default();\n }.call(this));\n}","/*es6-set/implement*/\nfunction _(require, module, exports) {\n if (!require(321 /* ./is-implemented */)()) {\n Object.defineProperty(require(277 /* es5-ext/global */), 'Set', {\n value: require(324 /* ./polyfill */),\n configurable: true,\n enumerable: false,\n writable: true\n });\n }\n}","/*es6-set/is-implemented*/\nfunction _(require, module, exports) {\n module.exports = function () {\n var set, iterator, result;\n if (typeof Set !== 'function')\n return false;\n set = new Set([\n 'raz',\n 'dwa',\n 'trzy'\n ]);\n if (String(set) !== '[object Set]')\n return false;\n if (set.size !== 3)\n return false;\n if (typeof set.add !== 'function')\n return false;\n if (typeof set.clear !== 'function')\n return false;\n if (typeof set.delete !== 'function')\n return false;\n if (typeof set.entries !== 'function')\n return false;\n if (typeof set.forEach !== 'function')\n return false;\n if (typeof set.has !== 'function')\n return false;\n if (typeof set.keys !== 'function')\n return false;\n if (typeof set.values !== 'function')\n return false;\n iterator = set.values();\n result = iterator.next();\n if (result.done !== false)\n return false;\n if (result.value !== 'raz')\n return false;\n return true;\n };\n}","// Exports true if environment provides native `Set` implementation,\n// whatever that is.\n/*es6-set/is-native-implemented*/\nfunction _(require, module, exports) {\n module.exports = function () {\n if (typeof Set === 'undefined')\n return false;\n return Object.prototype.toString.call(Set.prototype) === '[object Set]';\n }();\n}","/*es6-set/lib/iterator*/\nfunction _(require, module, exports) {\n var setPrototypeOf = require(301 /* es5-ext/object/set-prototype-of */), contains = require(307 /* es5-ext/string/#/contains */), d = require(268 /* d */), Iterator = require(315 /* es6-iterator */), toStringTagSymbol = require(325 /* es6-symbol */).toStringTag, defineProperty = Object.defineProperty, SetIterator;\n SetIterator = module.exports = function (set, kind) {\n if (!(this instanceof SetIterator))\n return new SetIterator(set, kind);\n Iterator.call(this, set.__setData__, set);\n if (!kind)\n kind = 'value';\n else if (contains.call(kind, 'key+value'))\n kind = 'key+value';\n else\n kind = 'value';\n defineProperty(this, '__kind__', d('', kind));\n };\n if (setPrototypeOf)\n setPrototypeOf(SetIterator, Iterator);\n SetIterator.prototype = Object.create(Iterator.prototype, {\n constructor: d(SetIterator),\n _resolve: d(function (i) {\n if (this.__kind__ === 'value')\n return this.__list__[i];\n return [\n this.__list__[i],\n this.__list__[i]\n ];\n }),\n toString: d(function () {\n return '[object Set Iterator]';\n })\n });\n defineProperty(SetIterator.prototype, toStringTagSymbol, d('c', 'Set Iterator'));\n}","/*es6-set/polyfill*/\nfunction _(require, module, exports) {\n var clear = require(269 /* es5-ext/array/#/clear */), eIndexOf = require(270 /* es5-ext/array/#/e-index-of */), setPrototypeOf = require(301 /* es5-ext/object/set-prototype-of */), callable = require(304 /* es5-ext/object/valid-callable */), d = require(268 /* d */), ee = require(334 /* event-emitter */), Symbol = require(325 /* es6-symbol */), iterator = require(318 /* es6-iterator/valid-iterable */), forOf = require(313 /* es6-iterator/for-of */), Iterator = require(323 /* ./lib/iterator */), isNative = require(322 /* ./is-native-implemented */), call = Function.prototype.call, defineProperty = Object.defineProperty, getPrototypeOf = Object.getPrototypeOf, SetPoly, getValues, NativeSet;\n if (isNative)\n NativeSet = Set;\n module.exports = SetPoly = function Set() {\n var iterable = arguments[0], self;\n if (!(this instanceof SetPoly))\n throw new TypeError('Constructor requires \\'new\\'');\n if (isNative && setPrototypeOf)\n self = setPrototypeOf(new NativeSet(), getPrototypeOf(this));\n else\n self = this;\n if (iterable != null)\n iterator(iterable);\n defineProperty(self, '__setData__', d('c', []));\n if (!iterable)\n return self;\n forOf(iterable, function (value) {\n if (eIndexOf.call(this, value) !== -1)\n return;\n this.push(value);\n }, self.__setData__);\n return self;\n };\n if (isNative) {\n if (setPrototypeOf)\n setPrototypeOf(SetPoly, NativeSet);\n SetPoly.prototype = Object.create(NativeSet.prototype, { constructor: d(SetPoly) });\n }\n ee(Object.defineProperties(SetPoly.prototype, {\n add: d(function (value) {\n if (this.has(value))\n return this;\n this.emit('_add', this.__setData__.push(value) - 1, value);\n return this;\n }),\n clear: d(function () {\n if (!this.__setData__.length)\n return;\n clear.call(this.__setData__);\n this.emit('_clear');\n }),\n delete: d(function (value) {\n var index = eIndexOf.call(this.__setData__, value);\n if (index === -1)\n return false;\n this.__setData__.splice(index, 1);\n this.emit('_delete', index, value);\n return true;\n }),\n entries: d(function () {\n return new Iterator(this, 'key+value');\n }),\n forEach: d(function (cb) {\n var thisArg = arguments[1], iterator, result, value;\n callable(cb);\n iterator = this.values();\n result = iterator._next();\n while (result !== undefined) {\n value = iterator._resolve(result);\n call.call(cb, thisArg, value, value, this);\n result = iterator._next();\n }\n }),\n has: d(function (value) {\n return eIndexOf.call(this.__setData__, value) !== -1;\n }),\n keys: d(getValues = function () {\n return this.values();\n }),\n size: d.gs(function () {\n return this.__setData__.length;\n }),\n values: d(function () {\n return new Iterator(this);\n }),\n toString: d(function () {\n return '[object Set]';\n })\n }));\n defineProperty(SetPoly.prototype, Symbol.iterator, d(getValues));\n defineProperty(SetPoly.prototype, Symbol.toStringTag, d('c', 'Set'));\n}","/*es6-symbol/index*/\nfunction _(require, module, exports) {\n module.exports = require(326 /* ./is-implemented */)() ? Symbol : require(328 /* ./polyfill */);\n}","/*es6-symbol/is-implemented*/\nfunction _(require, module, exports) {\n var validTypes = {\n object: true,\n symbol: true\n };\n module.exports = function () {\n var symbol;\n if (typeof Symbol !== 'function')\n return false;\n symbol = Symbol('test symbol');\n try {\n String(symbol);\n } catch (e) {\n return false;\n }\n // Return 'true' also for polyfills\n if (!validTypes[typeof Symbol.iterator])\n return false;\n if (!validTypes[typeof Symbol.toPrimitive])\n return false;\n if (!validTypes[typeof Symbol.toStringTag])\n return false;\n return true;\n };\n}","/*es6-symbol/is-symbol*/\nfunction _(require, module, exports) {\n module.exports = function (x) {\n if (!x)\n return false;\n if (typeof x === 'symbol')\n return true;\n if (!x.constructor)\n return false;\n if (x.constructor.name !== 'Symbol')\n return false;\n return x[x.constructor.toStringTag] === 'Symbol';\n };\n}","// ES2015 Symbol polyfill for environments that do not (or partially) support it\n/*es6-symbol/polyfill*/\nfunction _(require, module, exports) {\n var d = require(268 /* d */), validateSymbol = require(329 /* ./validate-symbol */), create = Object.create, defineProperties = Object.defineProperties, defineProperty = Object.defineProperty, objPrototype = Object.prototype, NativeSymbol, SymbolPolyfill, HiddenSymbol, globalSymbols = create(null), isNativeSafe;\n if (typeof Symbol === 'function') {\n NativeSymbol = Symbol;\n try {\n String(NativeSymbol());\n isNativeSafe = true;\n } catch (ignore) {\n }\n }\n var generateName = function () {\n var created = create(null);\n return function (desc) {\n var postfix = 0, name, ie11BugWorkaround;\n while (created[desc + (postfix || '')])\n ++postfix;\n desc += postfix || '';\n created[desc] = true;\n name = '@@' + desc;\n defineProperty(objPrototype, name, d.gs(null, function (value) {\n // For IE11 issue see:\n // https://connect.microsoft.com/IE/feedbackdetail/view/1928508/\n // ie11-broken-getters-on-dom-objects\n // https://github.com/medikoo/es6-symbol/issues/12\n if (ie11BugWorkaround)\n return;\n ie11BugWorkaround = true;\n defineProperty(this, name, d(value));\n ie11BugWorkaround = false;\n }));\n return name;\n };\n }();\n // Internal constructor (not one exposed) for creating Symbol instances.\n // This one is used to ensure that `someSymbol instanceof Symbol` always return false\n HiddenSymbol = function Symbol(description) {\n if (this instanceof HiddenSymbol)\n throw new TypeError('Symbol is not a constructor');\n return SymbolPolyfill(description);\n };\n // Exposed `Symbol` constructor\n // (returns instances of HiddenSymbol)\n module.exports = SymbolPolyfill = function Symbol(description) {\n var symbol;\n if (this instanceof Symbol)\n throw new TypeError('Symbol is not a constructor');\n if (isNativeSafe)\n return NativeSymbol(description);\n symbol = create(HiddenSymbol.prototype);\n description = description === undefined ? '' : String(description);\n return defineProperties(symbol, {\n __description__: d('', description),\n __name__: d('', generateName(description))\n });\n };\n defineProperties(SymbolPolyfill, {\n for: d(function (key) {\n if (globalSymbols[key])\n return globalSymbols[key];\n return globalSymbols[key] = SymbolPolyfill(String(key));\n }),\n keyFor: d(function (s) {\n var key;\n validateSymbol(s);\n for (key in globalSymbols)\n if (globalSymbols[key] === s)\n return key;\n }),\n // To ensure proper interoperability with other native functions (e.g. Array.from)\n // fallback to eventual native implementation of given symbol\n hasInstance: d('', NativeSymbol && NativeSymbol.hasInstance || SymbolPolyfill('hasInstance')),\n isConcatSpreadable: d('', NativeSymbol && NativeSymbol.isConcatSpreadable || SymbolPolyfill('isConcatSpreadable')),\n iterator: d('', NativeSymbol && NativeSymbol.iterator || SymbolPolyfill('iterator')),\n match: d('', NativeSymbol && NativeSymbol.match || SymbolPolyfill('match')),\n replace: d('', NativeSymbol && NativeSymbol.replace || SymbolPolyfill('replace')),\n search: d('', NativeSymbol && NativeSymbol.search || SymbolPolyfill('search')),\n species: d('', NativeSymbol && NativeSymbol.species || SymbolPolyfill('species')),\n split: d('', NativeSymbol && NativeSymbol.split || SymbolPolyfill('split')),\n toPrimitive: d('', NativeSymbol && NativeSymbol.toPrimitive || SymbolPolyfill('toPrimitive')),\n toStringTag: d('', NativeSymbol && NativeSymbol.toStringTag || SymbolPolyfill('toStringTag')),\n unscopables: d('', NativeSymbol && NativeSymbol.unscopables || SymbolPolyfill('unscopables'))\n });\n // Internal tweaks for real symbol producer\n defineProperties(HiddenSymbol.prototype, {\n constructor: d(SymbolPolyfill),\n toString: d('', function () {\n return this.__name__;\n })\n });\n // Proper implementation of methods exposed on Symbol.prototype\n // They won't be accessible on produced symbol instances as they derive from HiddenSymbol.prototype\n defineProperties(SymbolPolyfill.prototype, {\n toString: d(function () {\n return 'Symbol (' + validateSymbol(this).__description__ + ')';\n }),\n valueOf: d(function () {\n return validateSymbol(this);\n })\n });\n defineProperty(SymbolPolyfill.prototype, SymbolPolyfill.toPrimitive, d('', function () {\n var symbol = validateSymbol(this);\n if (typeof symbol === 'symbol')\n return symbol;\n return symbol.toString();\n }));\n defineProperty(SymbolPolyfill.prototype, SymbolPolyfill.toStringTag, d('c', 'Symbol'));\n // Proper implementaton of toPrimitive and toStringTag for returned symbol instances\n defineProperty(HiddenSymbol.prototype, SymbolPolyfill.toStringTag, d('c', SymbolPolyfill.prototype[SymbolPolyfill.toStringTag]));\n // Note: It's important to define `toPrimitive` as last one, as some implementations\n // implement `toPrimitive` natively without implementing `toStringTag` (or other specified symbols)\n // And that may invoke error in definition flow:\n // See: https://github.com/medikoo/es6-symbol/issues/13#issuecomment-164146149\n defineProperty(HiddenSymbol.prototype, SymbolPolyfill.toPrimitive, d('c', SymbolPolyfill.prototype[SymbolPolyfill.toPrimitive]));\n}","/*es6-symbol/validate-symbol*/\nfunction _(require, module, exports) {\n var isSymbol = require(327 /* ./is-symbol */);\n module.exports = function (value) {\n if (!isSymbol(value))\n throw new TypeError(value + ' is not a symbol');\n return value;\n };\n}","/*es6-weak-map/implement*/\nfunction _(require, module, exports) {\n if (!require(331 /* ./is-implemented */)()) {\n Object.defineProperty(require(277 /* es5-ext/global */), 'WeakMap', {\n value: require(333 /* ./polyfill */),\n configurable: true,\n enumerable: false,\n writable: true\n });\n }\n}","/*es6-weak-map/is-implemented*/\nfunction _(require, module, exports) {\n module.exports = function () {\n var weakMap, x;\n if (typeof WeakMap !== 'function')\n return false;\n try {\n // WebKit doesn't support arguments and crashes\n weakMap = new WeakMap([\n [\n x = {},\n 'one'\n ],\n [\n {},\n 'two'\n ],\n [\n {},\n 'three'\n ]\n ]);\n } catch (e) {\n return false;\n }\n if (String(weakMap) !== '[object WeakMap]')\n return false;\n if (typeof weakMap.set !== 'function')\n return false;\n if (weakMap.set({}, 1) !== weakMap)\n return false;\n if (typeof weakMap.delete !== 'function')\n return false;\n if (typeof weakMap.has !== 'function')\n return false;\n if (weakMap.get(x) !== 'one')\n return false;\n return true;\n };\n}","// Exports true if environment provides native `WeakMap` implementation, whatever that is.\n/*es6-weak-map/is-native-implemented*/\nfunction _(require, module, exports) {\n module.exports = function () {\n if (typeof WeakMap !== 'function')\n return false;\n return Object.prototype.toString.call(new WeakMap()) === '[object WeakMap]';\n }();\n}","/*es6-weak-map/polyfill*/\nfunction _(require, module, exports) {\n var setPrototypeOf = require(301 /* es5-ext/object/set-prototype-of */), object = require(305 /* es5-ext/object/valid-object */), value = require(306 /* es5-ext/object/valid-value */), randomUniq = require(311 /* es5-ext/string/random-uniq */), d = require(268 /* d */), getIterator = require(314 /* es6-iterator/get */), forOf = require(313 /* es6-iterator/for-of */), toStringTagSymbol = require(325 /* es6-symbol */).toStringTag, isNative = require(332 /* ./is-native-implemented */), isArray = Array.isArray, defineProperty = Object.defineProperty, hasOwnProperty = Object.prototype.hasOwnProperty, getPrototypeOf = Object.getPrototypeOf, WeakMapPoly;\n module.exports = WeakMapPoly = function () {\n var iterable = arguments[0], self;\n if (!(this instanceof WeakMapPoly))\n throw new TypeError('Constructor requires \\'new\\'');\n if (isNative && setPrototypeOf && WeakMap !== WeakMapPoly) {\n self = setPrototypeOf(new WeakMap(), getPrototypeOf(this));\n } else {\n self = this;\n }\n if (iterable != null) {\n if (!isArray(iterable))\n iterable = getIterator(iterable);\n }\n defineProperty(self, '__weakMapData__', d('c', '$weakMap$' + randomUniq()));\n if (!iterable)\n return self;\n forOf(iterable, function (val) {\n value(val);\n self.set(val[0], val[1]);\n });\n return self;\n };\n if (isNative) {\n if (setPrototypeOf)\n setPrototypeOf(WeakMapPoly, WeakMap);\n WeakMapPoly.prototype = Object.create(WeakMap.prototype, { constructor: d(WeakMapPoly) });\n }\n Object.defineProperties(WeakMapPoly.prototype, {\n delete: d(function (key) {\n if (hasOwnProperty.call(object(key), this.__weakMapData__)) {\n delete key[this.__weakMapData__];\n return true;\n }\n return false;\n }),\n get: d(function (key) {\n if (hasOwnProperty.call(object(key), this.__weakMapData__)) {\n return key[this.__weakMapData__];\n }\n }),\n has: d(function (key) {\n return hasOwnProperty.call(object(key), this.__weakMapData__);\n }),\n set: d(function (key, value) {\n defineProperty(object(key), this.__weakMapData__, d('c', value));\n return this;\n }),\n toString: d(function () {\n return '[object WeakMap]';\n })\n });\n defineProperty(WeakMapPoly.prototype, toStringTagSymbol, d('c', 'WeakMap'));\n}","/*event-emitter/index*/\nfunction _(require, module, exports) {\n var d = require(268 /* d */), callable = require(304 /* es5-ext/object/valid-callable */), apply = Function.prototype.apply, call = Function.prototype.call, create = Object.create, defineProperty = Object.defineProperty, defineProperties = Object.defineProperties, hasOwnProperty = Object.prototype.hasOwnProperty, descriptor = {\n configurable: true,\n enumerable: false,\n writable: true\n }, on, once, off, emit, methods, descriptors, base;\n on = function (type, listener) {\n var data;\n callable(listener);\n if (!hasOwnProperty.call(this, '__ee__')) {\n data = descriptor.value = create(null);\n defineProperty(this, '__ee__', descriptor);\n descriptor.value = null;\n } else {\n data = this.__ee__;\n }\n if (!data[type])\n data[type] = listener;\n else if (typeof data[type] === 'object')\n data[type].push(listener);\n else\n data[type] = [\n data[type],\n listener\n ];\n return this;\n };\n once = function (type, listener) {\n var once, self;\n callable(listener);\n self = this;\n on.call(this, type, once = function () {\n off.call(self, type, once);\n apply.call(listener, this, arguments);\n });\n once.__eeOnceListener__ = listener;\n return this;\n };\n off = function (type, listener) {\n var data, listeners, candidate, i;\n callable(listener);\n if (!hasOwnProperty.call(this, '__ee__'))\n return this;\n data = this.__ee__;\n if (!data[type])\n return this;\n listeners = data[type];\n if (typeof listeners === 'object') {\n for (i = 0; candidate = listeners[i]; ++i) {\n if (candidate === listener || candidate.__eeOnceListener__ === listener) {\n if (listeners.length === 2)\n data[type] = listeners[i ? 0 : 1];\n else\n listeners.splice(i, 1);\n }\n }\n } else {\n if (listeners === listener || listeners.__eeOnceListener__ === listener) {\n delete data[type];\n }\n }\n return this;\n };\n emit = function (type) {\n var i, l, listener, listeners, args;\n if (!hasOwnProperty.call(this, '__ee__'))\n return;\n listeners = this.__ee__[type];\n if (!listeners)\n return;\n if (typeof listeners === 'object') {\n l = arguments.length;\n args = new Array(l - 1);\n for (i = 1; i < l; ++i)\n args[i - 1] = arguments[i];\n listeners = listeners.slice();\n for (i = 0; listener = listeners[i]; ++i) {\n apply.call(listener, this, args);\n }\n } else {\n switch (arguments.length) {\n case 1:\n call.call(listeners, this);\n break;\n case 2:\n call.call(listeners, this, arguments[1]);\n break;\n case 3:\n call.call(listeners, this, arguments[1], arguments[2]);\n break;\n default:\n l = arguments.length;\n args = new Array(l - 1);\n for (i = 1; i < l; ++i) {\n args[i - 1] = arguments[i];\n }\n apply.call(listeners, this, args);\n }\n }\n };\n methods = {\n on: on,\n once: once,\n off: off,\n emit: emit\n };\n descriptors = {\n on: d(on),\n once: d(once),\n off: d(off),\n emit: d(emit)\n };\n base = defineProperties({}, descriptors);\n module.exports = exports = function (o) {\n return o == null ? create(base) : defineProperties(Object(o), descriptors);\n };\n exports.methods = methods;\n}","/*flatbush/flatbush*/\nfunction _(require, module, exports) {\n (function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : typeof define === 'function' && define.amd ? define(factory) : global.Flatbush = factory();\n }(this, function () {\n 'use strict';\n var Flatbush = function Flatbush(numItems, nodeSize, ArrayType, data) {\n var this$1 = this;\n if (numItems === undefined) {\n throw new Error('Missing required argument: numItems.');\n }\n if (isNaN(numItems) || numItems <= 0) {\n throw new Error('Unpexpected numItems value: ' + numItems);\n }\n this.numItems = +numItems;\n this.nodeSize = Math.max(+nodeSize || 16, 2);\n this.ArrayType = ArrayType || Float64Array;\n // calculate the total number of nodes in the R-tree to allocate space for\n // and the index of each tree level (used in search later)\n var n = numItems;\n var numNodes = n;\n this._levelBounds = [n * 5];\n do {\n n = Math.ceil(n / this$1.nodeSize);\n numNodes += n;\n this$1._levelBounds.push(numNodes * 5);\n } while (n !== 1);\n if (data) {\n if (data instanceof ArrayBuffer) {\n this.data = new this.ArrayType(data);\n } else if (data instanceof ArrayType) {\n this.data = data;\n } else {\n throw new Error('Data must be an instance of ' + ArrayType.name + ' or ArrayBuffer.');\n }\n this._numAdded = numItems;\n this._pos = numNodes * 5;\n this.minX = this.data[this._pos - 4];\n this.minY = this.data[this._pos - 3];\n this.maxX = this.data[this._pos - 2];\n this.maxY = this.data[this._pos - 1];\n } else {\n this.data = new this.ArrayType(numNodes * 5);\n this._numAdded = 0;\n this._pos = 0;\n this.minX = Infinity;\n this.minY = Infinity;\n this.maxX = -Infinity;\n this.maxY = -Infinity;\n }\n };\n Flatbush.prototype.add = function add(minX, minY, maxX, maxY) {\n this.data[this._pos++] = this._numAdded++;\n this.data[this._pos++] = minX;\n this.data[this._pos++] = minY;\n this.data[this._pos++] = maxX;\n this.data[this._pos++] = maxY;\n if (minX < this.minX) {\n this.minX = minX;\n }\n if (minY < this.minY) {\n this.minY = minY;\n }\n if (maxX > this.maxX) {\n this.maxX = maxX;\n }\n if (maxY > this.maxY) {\n this.maxY = maxY;\n }\n };\n Flatbush.prototype.finish = function finish() {\n var this$1 = this;\n if (this._numAdded !== this.numItems) {\n throw new Error('Added ' + this._numAdded + ' items when expected ' + this.numItems);\n }\n var width = this.maxX - this.minX;\n var height = this.maxY - this.minY;\n var hilbertValues = new Uint32Array(this.numItems);\n var hilbertMax = (1 << 16) - 1;\n // map item centers into Hilbert coordinate space and calculate Hilbert values\n for (var i = 0; i < this.numItems; i++) {\n var pos = 5 * i + 1;\n var minX = this$1.data[pos++];\n var minY = this$1.data[pos++];\n var maxX = this$1.data[pos++];\n var maxY = this$1.data[pos++];\n var x = Math.floor(hilbertMax * ((minX + maxX) / 2 - this$1.minX) / width);\n var y = Math.floor(hilbertMax * ((minY + maxY) / 2 - this$1.minY) / height);\n hilbertValues[i] = hilbert(x, y);\n }\n // sort items by their Hilbert value (for packing later)\n sort(hilbertValues, this.data, 0, this.numItems - 1);\n // generate nodes at each tree level, bottom-up\n for (var i$1 = 0, pos$1 = 0; i$1 < this._levelBounds.length - 1; i$1++) {\n var end = this$1._levelBounds[i$1];\n // generate a parent node for each block of consecutive