@holoviz/panel 0.13.0-rc.1 → 0.13.0-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -9,44 +9,32 @@ export declare class PerspectiveView extends PanelHTMLBoxView {
9
9
  worker: any;
10
10
  _updating: boolean;
11
11
  _config_listener: any;
12
+ _current_config: any;
12
13
  _event_listener: any;
13
14
  _loaded: boolean;
14
15
  connect_signals(): void;
15
16
  disconnect_signals(): void;
16
- render(): void;
17
+ render(): Promise<void>;
17
18
  fix_layout(): void;
18
- sync_config(): void;
19
- update_config(): void;
19
+ sync_config(): boolean;
20
20
  on_event(event: any): void;
21
21
  get data(): any;
22
22
  stream(data: any, rollover: any): void;
23
23
  patch(_: any): void;
24
- private getInnerHTML;
25
24
  setData(): void;
26
- updateAttribute(attribute: string, value: any, stringify: boolean): void;
27
- updateTheme(): void;
28
- /** Helper function to generate the new class attribute string
29
- *
30
- * If old_class = 'perspective-viewer-material dragging' and theme = 'material-dark'
31
- * then 'perspective-viewer-material-dark dragging' is returned
32
- *
33
- * @param old_class For example 'perspective-viewer-material' or 'perspective-viewer-material dragging'
34
- * @param theme The name of the new theme. For example 'material-dark'
35
- */
36
- private toNewClassAttribute;
37
25
  }
38
26
  export declare namespace Perspective {
39
27
  type Attrs = p.AttrsOf<Props>;
40
28
  type Props = HTMLBox.Props & {
41
29
  aggregates: p.Property<any>;
42
- column_pivots: p.Property<any[] | null>;
30
+ split_by: p.Property<any[] | null>;
43
31
  columns: p.Property<any[]>;
44
- computed_columns: p.Property<any[] | null>;
32
+ expressions: p.Property<any[] | null>;
45
33
  editable: p.Property<boolean | null>;
46
34
  filters: p.Property<any[] | null>;
35
+ group_by: p.Property<any[] | null>;
47
36
  plugin: p.Property<any>;
48
37
  plugin_config: p.Property<any>;
49
- row_pivots: p.Property<any[] | null>;
50
38
  selectable: p.Property<boolean | null>;
51
39
  toggle_config: p.Property<boolean>;
52
40
  schema: p.Property<any>;
@@ -2,39 +2,46 @@ import { HTMLBox } from "@bokehjs/models/layouts/html_box";
2
2
  import { div } from "@bokehjs/core/dom";
3
3
  import { ColumnDataSource } from "@bokehjs/models/sources/column_data_source";
4
4
  import { PanelHTMLBoxView, set_size } from "./layout";
5
- const PERSPECTIVE_VIEWER_CLASSES = [
6
- "perspective-viewer-material",
7
- "perspective-viewer-material-dark",
8
- "perspective-viewer-material-dense",
9
- "perspective-viewer-material-dense-dark",
10
- "perspective-viewer-vaporwave",
11
- ];
12
- function is_not_perspective_class(item) {
13
- return !PERSPECTIVE_VIEWER_CLASSES.includes(item);
14
- }
15
- function theme_to_class(theme) {
16
- return "perspective-viewer-" + theme;
17
- }
18
- /** Helper function used to incrementally build a html element string
19
- *
20
- * For example toAttribute("columns", ['x','y']) returns ' columns="['x','y']"
21
- * For example toAttribute("columns", null) returns ""
22
- *
23
- * @param attribute
24
- * @param value
25
- */
26
- function toAttribute(attribute, value) {
27
- if (value == null)
28
- return "";
29
- else if (typeof value !== "string")
30
- value = JSON.stringify(value);
31
- return " " + attribute + "='" + value + "'";
5
+ const THEMES = {
6
+ 'material-dark': 'Material Dark',
7
+ 'material': 'Material Light',
8
+ 'material-dense': 'Material Light',
9
+ 'material-dense-dark': 'Material Dark',
10
+ 'vaporwave': 'Vaporwave',
11
+ 'solarized': 'Solarized',
12
+ 'solarized-dark': 'Solarized Dark',
13
+ 'monokai': 'Monokai'
14
+ };
15
+ const PLUGINS = {
16
+ 'datagrid': 'Datagrid',
17
+ 'd3_x_bar': 'X Bar',
18
+ 'd3_y_bar': 'Y Bar',
19
+ 'd3_xy_line': 'X/Y Line',
20
+ 'd3_y_line': 'Y Line',
21
+ 'd3_y_area': 'Y Area',
22
+ 'd3_y_scatter': 'Y Scatter',
23
+ 'd3_xy_scatter': 'X/Y Scatter',
24
+ 'd3_treemap': 'Treemap',
25
+ 'd3_candlestick': 'Candlestick',
26
+ 'd3_sunburst': 'Sunburst',
27
+ 'd3_heatmap': 'Heatmap',
28
+ 'd3_ohlc': 'OHLC'
29
+ };
30
+ function objectFlip(obj) {
31
+ const ret = {};
32
+ Object.keys(obj).forEach(key => {
33
+ ret[obj[key]] = key;
34
+ });
35
+ return ret;
32
36
  }
37
+ const PLUGINS_REVERSE = objectFlip(PLUGINS);
38
+ const THEMES_REVERSE = objectFlip(THEMES);
33
39
  export class PerspectiveView extends PanelHTMLBoxView {
34
40
  constructor() {
35
41
  super(...arguments);
36
42
  this._updating = false;
37
43
  this._config_listener = null;
44
+ this._current_config = null;
38
45
  this._event_listener = null;
39
46
  this._loaded = false;
40
47
  }
@@ -46,36 +53,38 @@ export class PerspectiveView extends PanelHTMLBoxView {
46
53
  this.fix_layout();
47
54
  });
48
55
  this.connect(this.model.properties.columns.change, () => {
49
- this.updateAttribute("columns", this.model.columns, true);
56
+ this.perspective_element.restore({ "columns": this.model.columns });
50
57
  });
51
- this.connect(this.model.properties.computed_columns.change, () => {
52
- this.updateAttribute("computed-columns", this.model.computed_columns, true);
58
+ this.connect(this.model.properties.expressions.change, () => {
59
+ this.perspective_element.restore({ "expressions": this.model.expressions });
53
60
  });
54
- this.connect(this.model.properties.column_pivots.change, () => {
55
- this.updateAttribute("column-pivots", this.model.column_pivots, true);
61
+ this.connect(this.model.properties.split_by.change, () => {
62
+ this.perspective_element.restore({ "split_by": this.model.split_by });
56
63
  });
57
- this.connect(this.model.properties.row_pivots.change, () => {
58
- this.updateAttribute("row-pivots", this.model.row_pivots, true);
64
+ this.connect(this.model.properties.group_by.change, () => {
65
+ this.perspective_element.restore({ "group_by": this.model.group_by });
59
66
  });
60
67
  this.connect(this.model.properties.aggregates.change, () => {
61
- this.updateAttribute("aggregates", this.model.aggregates, true);
68
+ this.perspective_element.restore({ "aggregates": this.model.aggregates });
62
69
  });
63
70
  this.connect(this.model.properties.filters.change, () => {
64
- this.updateAttribute("filters", this.model.filters, true);
71
+ this.perspective_element.restore({ "filter": this.model.filters });
65
72
  });
66
73
  this.connect(this.model.properties.sort.change, () => {
67
- this.updateAttribute("sort", this.model.sort, true);
74
+ this.perspective_element.restore({ "sort": this.model.sort });
68
75
  });
69
76
  this.connect(this.model.properties.plugin.change, () => {
70
- this.updateAttribute("plugin", this.model.plugin, false);
77
+ this.perspective_element.restore({ "plugin": PLUGINS[this.model.plugin] });
71
78
  });
72
79
  this.connect(this.model.properties.selectable.change, () => {
73
- this.updateAttribute("selectable", this.model.selectable, true);
80
+ this.perspective_element.restore({ "plugin_config": { ...this._current_config, selectable: this.model.selectable } });
74
81
  });
75
82
  this.connect(this.model.properties.editable.change, () => {
76
- this.updateAttribute("editable", this.model.editable, true);
83
+ this.perspective_element.restore({ "plugin_config": { ...this._current_config, editable: this.model.editable } });
84
+ });
85
+ this.connect(this.model.properties.theme.change, () => {
86
+ this.perspective_element.restore({ "theme": THEMES[this.model.theme] }).catch(() => { });
77
87
  });
78
- this.connect(this.model.properties.theme.change, () => this.updateTheme());
79
88
  if (this.model.document != null) {
80
89
  this._event_listener = (event) => this.on_event(event);
81
90
  this.model.document.on_change(this._event_listener);
@@ -90,10 +99,10 @@ export class PerspectiveView extends PanelHTMLBoxView {
90
99
  this._event_listener = null;
91
100
  super.disconnect_signals();
92
101
  }
93
- render() {
102
+ async render() {
94
103
  super.render();
95
104
  this.worker = window.perspective.worker();
96
- this.table = this.worker.table(this.model.schema);
105
+ this.table = await this.worker.table(this.model.schema);
97
106
  this.table.update(this.data);
98
107
  const container = div({
99
108
  class: "pnx-perspective-viewer",
@@ -102,18 +111,36 @@ export class PerspectiveView extends PanelHTMLBoxView {
102
111
  }
103
112
  });
104
113
  set_size(container, this.model);
105
- container.innerHTML = this.getInnerHTML();
114
+ container.innerHTML = "<perspective-viewer style='height:100%; width:100%;'></perspective-viewer>";
106
115
  this.perspective_element = container.children[0];
116
+ this.perspective_element.resetThemes([...Object.values(THEMES)]).catch(() => { });
107
117
  set_size(this.perspective_element, this.model);
108
118
  this.el.appendChild(container);
109
- this.perspective_element.load(this.table).then(() => {
110
- this.update_config();
111
- this._config_listener = () => this.sync_config();
112
- if (this.model.toggle_config)
113
- this.perspective_element.toggleConfig();
114
- this.perspective_element.addEventListener("perspective-config-update", this._config_listener);
115
- this._loaded = true;
116
- });
119
+ this.perspective_element.load(this.table);
120
+ const plugin_config = {
121
+ ...this.model.plugin_config,
122
+ editable: this.model.editable,
123
+ selectable: this.model.selectable
124
+ };
125
+ this.perspective_element.restore({
126
+ aggregates: this.model.aggregates,
127
+ columns: this.model.columns,
128
+ expressions: this.model.expressions,
129
+ filter: this.model.filters,
130
+ split_by: this.model.split_by,
131
+ group_by: this.model.group_by,
132
+ plugin: PLUGINS[this.model.plugin],
133
+ plugin_config: plugin_config,
134
+ sort: this.model.sort,
135
+ theme: THEMES[this.model.theme]
136
+ }).catch(() => { });
137
+ this._config_listener = () => this.sync_config();
138
+ this._current_config = await this.perspective_element.save();
139
+ if (this.model.toggle_config)
140
+ this.perspective_element.toggleConfig();
141
+ this.perspective_element.addEventListener("perspective-config-update", this._config_listener);
142
+ this._loaded = true;
143
+ this.fix_layout();
117
144
  }
118
145
  fix_layout() {
119
146
  this.update_layout();
@@ -122,35 +149,27 @@ export class PerspectiveView extends PanelHTMLBoxView {
122
149
  }
123
150
  sync_config() {
124
151
  if (this._updating)
125
- return;
126
- const config = this.perspective_element.save();
127
- const props = {};
128
- for (const option in config) {
129
- const prop = option.replace('-', '_');
130
- const value = config[option];
131
- if (value === undefined || (prop == 'plugin' && value === "debug"))
132
- continue;
133
- props[prop] = value;
134
- }
135
- this._updating = true;
136
- this.model.setv(props);
137
- this._updating = false;
138
- }
139
- update_config() {
140
- if (this._updating)
141
- return;
142
- const config = this.perspective_element.save();
143
- for (const option in config) {
144
- const prop = option.replace('-', '_');
145
- let value = this.model.property(prop).get_value();
146
- if (config[option] !== value) {
147
- this._updating = true;
148
- if (prop !== 'plugin')
149
- value = JSON.stringify(value);
150
- this.perspective_element.setAttribute(option, value);
151
- this._updating = false;
152
+ return true;
153
+ this.perspective_element.save().then((config) => {
154
+ this._current_config = config;
155
+ const props = {};
156
+ for (let option in config) {
157
+ let value = config[option];
158
+ if (value === undefined || (option == 'plugin' && value === "debug") || option === 'settings')
159
+ continue;
160
+ if (option === 'filter')
161
+ option = 'filters';
162
+ else if (option === 'plugin')
163
+ value = PLUGINS_REVERSE[value];
164
+ else if (option === 'theme')
165
+ value = THEMES_REVERSE[value];
166
+ props[option] = value;
152
167
  }
153
- }
168
+ this._updating = true;
169
+ this.model.setv(props);
170
+ this._updating = false;
171
+ });
172
+ return true;
154
173
  }
155
174
  on_event(event) {
156
175
  event = event.hint;
@@ -178,51 +197,10 @@ export class PerspectiveView extends PanelHTMLBoxView {
178
197
  patch(_) {
179
198
  this.table.replace(this.data);
180
199
  }
181
- getInnerHTML() {
182
- let innerHTML = "<perspective-viewer style='height:100%;width:100%;'";
183
- innerHTML += toAttribute("class", theme_to_class(this.model.theme));
184
- innerHTML += "></perspective-viewer>";
185
- return innerHTML;
186
- }
187
200
  setData() {
188
201
  if (this._loaded)
189
202
  this.table.load(this.data);
190
203
  }
191
- updateAttribute(attribute, value, stringify) {
192
- if (this._updating)
193
- return;
194
- const config = this.perspective_element.save();
195
- const old_value = config[attribute];
196
- if (value == old_value)
197
- return;
198
- if (stringify)
199
- value = JSON.stringify(value);
200
- this._updating = true;
201
- this.perspective_element.setAttribute(attribute, value);
202
- this._updating = false;
203
- }
204
- updateTheme() {
205
- // When you update the class attribute you have to be careful
206
- // For example when the user is dragging an element then 'dragging' is a part of the class attribute
207
- let old_class = this.perspective_element.getAttribute("class");
208
- let new_class = this.toNewClassAttribute(old_class, this.model.theme);
209
- this.perspective_element.setAttribute("class", new_class);
210
- }
211
- /** Helper function to generate the new class attribute string
212
- *
213
- * If old_class = 'perspective-viewer-material dragging' and theme = 'material-dark'
214
- * then 'perspective-viewer-material-dark dragging' is returned
215
- *
216
- * @param old_class For example 'perspective-viewer-material' or 'perspective-viewer-material dragging'
217
- * @param theme The name of the new theme. For example 'material-dark'
218
- */
219
- toNewClassAttribute(old_class, theme) {
220
- let new_classes = [];
221
- if (old_class != null)
222
- new_classes = old_class.split(" ").filter(is_not_perspective_class);
223
- new_classes.push(theme_to_class(theme));
224
- return new_classes.join(" ");
225
- }
226
204
  }
227
205
  PerspectiveView.__name__ = "PerspectiveView";
228
206
  export class Perspective extends HTMLBox {
@@ -233,14 +211,14 @@ export class Perspective extends HTMLBox {
233
211
  this.prototype.default_view = PerspectiveView;
234
212
  this.define(({ Any, Array, Boolean, Ref, Nullable, String }) => ({
235
213
  aggregates: [Any,],
236
- column_pivots: [Nullable(Array(String)),],
237
- columns: [Array(String),],
238
- computed_columns: [Nullable(Array(String)),],
214
+ columns: [Array(Nullable(String)),],
215
+ expressions: [Nullable(Array(String)),],
216
+ split_by: [Nullable(Array(String)),],
239
217
  editable: [Nullable(Boolean),],
240
218
  filters: [Nullable(Array(Any)),],
219
+ group_by: [Nullable(Array(String)),],
241
220
  plugin: [String,],
242
221
  plugin_config: [Any,],
243
- row_pivots: [Nullable(Array(String)),],
244
222
  selectable: [Nullable(Boolean),],
245
223
  schema: [Any, {}],
246
224
  toggle_config: [Boolean, true],
@@ -1 +1 @@
1
- {"version":3,"file":"perspective.js","sourceRoot":"","sources":["../../../models/perspective.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"perspective.js","sourceRoot":"","sources":["../../../models/perspective.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,10 @@ import * as p from "@bokehjs/core/properties";
2
2
  import { Tabs as BkTabs, TabsView as BkTabsView } from "@bokehjs/models/layouts/tabs";
3
3
  export declare class TabsView extends BkTabsView {
4
4
  model: Tabs;
5
+ connect_signals(): void;
6
+ get is_visible(): boolean;
5
7
  _update_layout(): void;
8
+ update_zindex(): void;
6
9
  update_position(): void;
7
10
  render(): void;
8
11
  on_active_change(): void;
@@ -7,6 +7,30 @@ import * as tabs from "@bokehjs/styles/tabs.css";
7
7
  import * as buttons from "@bokehjs/styles/buttons.css";
8
8
  import * as menus from "@bokehjs/styles/menus.css";
9
9
  export class TabsView extends BkTabsView {
10
+ connect_signals() {
11
+ super.connect_signals();
12
+ let view = this;
13
+ while (view != null) {
14
+ if (view.model.type.endsWith('Tabs')) {
15
+ view.connect(view.model.properties.active.change, () => this.update_zindex());
16
+ }
17
+ view = view.parent || view._parent; // Handle ReactiveHTML
18
+ }
19
+ }
20
+ get is_visible() {
21
+ let parent = this.parent;
22
+ let current_view = this;
23
+ while (parent != null) {
24
+ if (parent.model.type.endsWith('Tabs')) {
25
+ if (parent.child_views.indexOf(current_view) !== parent.model.active) {
26
+ return false;
27
+ }
28
+ }
29
+ current_view = parent;
30
+ parent = parent.parent || parent._parent; // Handle ReactiveHTML
31
+ }
32
+ return true;
33
+ }
10
34
  _update_layout() {
11
35
  const loc = this.model.tabs_location;
12
36
  const vertical = loc == "above" || loc == "below";
@@ -71,6 +95,14 @@ export class TabsView extends BkTabsView {
71
95
  this.layout = new Grid([header, ...panels]);
72
96
  this.layout.set_sizing(this.box_sizing());
73
97
  }
98
+ update_zindex() {
99
+ const { child_views } = this;
100
+ for (const child_view of child_views) {
101
+ child_view.el.style.zIndex = "";
102
+ }
103
+ if (this.is_visible)
104
+ child_views[this.model.active].el.style.zIndex = "1";
105
+ }
74
106
  update_position() {
75
107
  super.update_position();
76
108
  this.header_el.style.position = "absolute"; // XXX: do it in position()
@@ -109,10 +141,8 @@ export class TabsView extends BkTabsView {
109
141
  child_view.el.style.removeProperty('zIndex');
110
142
  }
111
143
  const tab = child_views[this.model.active];
112
- if (tab != null) {
144
+ if (tab != null)
113
145
  show(tab.el);
114
- tab.el.style.zIndex = '1';
115
- }
116
146
  }
117
147
  render() {
118
148
  LayoutDOMView.prototype.render.call(this);
@@ -152,6 +182,7 @@ export class TabsView extends BkTabsView {
152
182
  const loc = this.model.tabs_location;
153
183
  this.header_el = div({ class: [tabs.tabs_header, tabs[loc]] }, this.scroll_el, this.wrapper_el);
154
184
  this.el.appendChild(this.header_el);
185
+ this.update_zindex();
155
186
  if (active === -1 && this.model.tabs.length)
156
187
  this.model.active = 0;
157
188
  }
@@ -164,10 +195,8 @@ export class TabsView extends BkTabsView {
164
195
  const { child_views } = this;
165
196
  for (const child_view of child_views) {
166
197
  hide(child_view.el);
167
- child_view.el.style.removeProperty('zIndex');
168
198
  }
169
199
  show(child_views[i].el);
170
- child_views[i].el.style.zIndex = '1';
171
200
  }
172
201
  }
173
202
  TabsView.__name__ = "TabsView";
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../../models/tabs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../../models/tabs.ts"],"names":[],"mappings":"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"}