@perspective-dev/viewer 4.2.0 → 4.4.0

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.
Files changed (240) hide show
  1. package/dist/cdn/perspective-viewer.js +2 -2
  2. package/dist/cdn/perspective-viewer.js.map +4 -4
  3. package/dist/css/botanical.css +1 -0
  4. package/dist/css/dracula.css +1 -1
  5. package/dist/css/gruvbox-dark.css +1 -1
  6. package/dist/css/gruvbox.css +1 -1
  7. package/dist/css/icons.css +1 -1
  8. package/dist/css/intl/de.css +1 -1
  9. package/dist/css/intl/es.css +1 -1
  10. package/dist/css/intl/fr.css +1 -1
  11. package/dist/css/intl/ja.css +1 -1
  12. package/dist/css/intl/pt.css +1 -1
  13. package/dist/css/intl/zh.css +1 -1
  14. package/dist/css/intl.css +1 -1
  15. package/dist/css/monokai.css +1 -1
  16. package/dist/css/pro-dark.css +1 -1
  17. package/dist/css/pro.css +1 -1
  18. package/dist/css/solarized-dark.css +1 -1
  19. package/dist/css/solarized.css +1 -1
  20. package/dist/css/themes.css +1 -1
  21. package/dist/css/vaporwave.css +1 -1
  22. package/dist/esm/extensions.d.ts +32 -1
  23. package/dist/esm/perspective-viewer.d.ts +1 -0
  24. package/dist/esm/perspective-viewer.inline.js +2 -2
  25. package/dist/esm/perspective-viewer.inline.js.map +4 -4
  26. package/dist/esm/perspective-viewer.js +2 -2
  27. package/dist/esm/perspective-viewer.js.map +4 -4
  28. package/dist/esm/ts-rs/GroupRollupMode.d.ts +1 -0
  29. package/dist/esm/ts-rs/ViewerConfigUpdate.d.ts +2 -0
  30. package/dist/wasm/perspective-viewer.d.ts +57 -53
  31. package/dist/wasm/perspective-viewer.js +197 -164
  32. package/dist/wasm/perspective-viewer.wasm +0 -0
  33. package/dist/wasm/perspective-viewer.wasm.d.ts +17 -18
  34. package/package.json +9 -6
  35. package/src/{less/aggregate-selector.less → css/aggregate-selector.css} +23 -20
  36. package/src/css/column-dropdown.css +109 -0
  37. package/src/{less/column-selector.less → css/column-selector.css} +161 -159
  38. package/src/{less/column-settings-panel.less → css/column-settings-panel.css} +69 -59
  39. package/src/{less/column-style.less → css/column-style.css} +52 -66
  40. package/src/{less/column-symbol-attributes.less → css/column-symbol-attributes.css} +15 -14
  41. package/src/css/config-selector.css +441 -0
  42. package/src/{less/containers/dropdown-menu.less → css/containers/dropdown-menu.css} +20 -19
  43. package/src/{less/containers/pairs-list.less → css/containers/pairs-list.css} +13 -12
  44. package/src/{themes/variables.less → css/containers/scroll-panel.css} +25 -22
  45. package/src/{less/containers/split-panel.less → css/containers/split-panel.css} +15 -14
  46. package/src/{less/containers/tabs.less → css/containers/tabs.css} +17 -19
  47. package/src/css/dom/checkbox.css +102 -0
  48. package/src/css/dom/scrollbar.css +35 -0
  49. package/src/{less/dom/select.less → css/dom/select.css} +17 -18
  50. package/src/{less/empty-column.less → css/empty-column.css} +19 -18
  51. package/src/{less/expression-editor.less → css/expression-editor.css} +19 -18
  52. package/src/{less/filter-dropdown.less → css/filter-dropdown.css} +12 -11
  53. package/src/{less/filter-item.less → css/filter-item.css} +16 -15
  54. package/src/{less/form/code-editor.less → css/form/code-editor.css} +26 -30
  55. package/src/{less/form/debug.less → css/form/debug.css} +19 -18
  56. package/src/{less/function-dropdown.less → css/function-dropdown.css} +12 -11
  57. package/src/css/plugin-selector.css +261 -0
  58. package/src/{less/render-warning.less → css/render-warning.css} +18 -17
  59. package/src/{less/status-bar.less → css/status-bar.css} +156 -144
  60. package/src/css/type-icon.css +116 -0
  61. package/src/{less/viewer.less → css/viewer.css} +112 -146
  62. package/src/rust/components/column_dropdown.rs +229 -119
  63. package/src/rust/components/column_selector/active_column.rs +81 -62
  64. package/src/rust/components/column_selector/add_expression_button.rs +1 -0
  65. package/src/rust/components/column_selector/aggregate_selector.rs +25 -15
  66. package/src/rust/components/column_selector/config_selector.rs +374 -185
  67. package/src/rust/components/column_selector/empty_column.rs +2 -2
  68. package/src/rust/components/column_selector/expr_edit_button.rs +8 -2
  69. package/src/rust/components/column_selector/filter_column.rs +37 -26
  70. package/src/rust/components/column_selector/inactive_column.rs +41 -29
  71. package/src/rust/components/column_selector/invalid_column.rs +7 -18
  72. package/src/rust/components/column_selector/pivot_column.rs +21 -10
  73. package/src/rust/components/column_selector/sort_column.rs +23 -13
  74. package/src/rust/components/column_selector.rs +189 -100
  75. package/src/rust/components/column_settings_sidebar/style_tab/symbol/row_selector.rs +1 -1
  76. package/src/rust/components/column_settings_sidebar/style_tab/symbol/symbol_pairs.rs +3 -2
  77. package/src/rust/components/column_settings_sidebar/style_tab/symbol/symbol_pairs_item.rs +3 -2
  78. package/src/rust/components/column_settings_sidebar/style_tab/symbol/symbol_selector.rs +2 -3
  79. package/src/rust/components/column_settings_sidebar/style_tab/symbol.rs +7 -1
  80. package/src/rust/components/column_settings_sidebar/style_tab.rs +153 -112
  81. package/src/rust/components/column_settings_sidebar.rs +91 -53
  82. package/src/rust/components/containers/dragdrop_list.rs +29 -7
  83. package/src/rust/components/containers/scroll_panel.rs +8 -1
  84. package/src/rust/components/containers/select.rs +3 -3
  85. package/src/rust/components/containers/sidebar_close_button.rs +1 -1
  86. package/src/rust/components/containers/split_panel.rs +3 -2
  87. package/src/rust/components/containers/tab_list.rs +1 -1
  88. package/src/rust/components/copy_dropdown.rs +7 -28
  89. package/src/rust/components/datetime_column_style/custom.rs +2 -2
  90. package/src/rust/components/datetime_column_style/simple.rs +2 -2
  91. package/src/rust/components/datetime_column_style.rs +4 -2
  92. package/src/rust/components/editable_header.rs +7 -4
  93. package/src/rust/components/empty_row.rs +1 -1
  94. package/src/rust/components/export_dropdown.rs +4 -30
  95. package/src/rust/components/expression_editor.rs +19 -10
  96. package/src/rust/components/filter_dropdown.rs +246 -102
  97. package/src/rust/components/font_loader.rs +11 -28
  98. package/src/rust/components/form/code_editor.rs +17 -2
  99. package/src/rust/components/form/color_range_selector.rs +19 -6
  100. package/src/rust/components/form/debug.rs +30 -13
  101. package/src/rust/components/function_dropdown.rs +186 -113
  102. package/src/rust/components/main_panel.rs +71 -89
  103. package/src/rust/components/mod.rs +1 -1
  104. package/src/rust/components/modal.rs +7 -1
  105. package/src/rust/components/number_column_style.rs +22 -7
  106. package/src/rust/components/plugin_selector.rs +34 -92
  107. package/src/rust/components/portal.rs +274 -0
  108. package/src/rust/components/render_warning.rs +72 -123
  109. package/src/rust/components/settings_panel.rs +115 -11
  110. package/src/rust/components/status_bar.rs +222 -98
  111. package/src/rust/components/status_bar_counter.rs +8 -20
  112. package/src/rust/components/status_indicator.rs +64 -111
  113. package/src/rust/components/string_column_style.rs +2 -2
  114. package/src/rust/components/style/style_cache.rs +5 -1
  115. package/src/rust/components/viewer.rs +391 -39
  116. package/src/rust/custom_elements/copy_dropdown.rs +102 -21
  117. package/src/rust/custom_elements/export_dropdown.rs +102 -20
  118. package/src/rust/custom_elements/mod.rs +0 -7
  119. package/src/rust/custom_elements/modal.rs +7 -103
  120. package/src/rust/custom_elements/viewer.rs +99 -35
  121. package/src/rust/custom_events.rs +23 -2
  122. package/src/rust/dragdrop.rs +149 -10
  123. package/src/{less/containers/scroll-panel.less → rust/engines.rs} +15 -13
  124. package/src/rust/js/plugin.rs +20 -1
  125. package/src/rust/lib.rs +5 -4
  126. package/src/rust/presentation/props.rs +39 -0
  127. package/src/rust/presentation/sheets.rs +3 -3
  128. package/src/rust/presentation.rs +44 -8
  129. package/src/rust/renderer/limits.rs +32 -3
  130. package/src/{less/dom/scrollbar.less → rust/renderer/props.rs} +18 -19
  131. package/src/rust/renderer/registry.rs +8 -1
  132. package/src/rust/renderer.rs +83 -9
  133. package/src/rust/session/column_defaults_update.rs +18 -0
  134. package/src/rust/session/metadata.rs +23 -2
  135. package/src/rust/session/props.rs +178 -0
  136. package/src/rust/session/replace_expression_update.rs +1 -0
  137. package/src/rust/session.rs +124 -117
  138. package/src/rust/tasks/column_locator.rs +133 -0
  139. package/src/rust/{model → tasks}/columns_iter_set.rs +14 -23
  140. package/src/rust/{model → tasks}/edit_expression.rs +34 -10
  141. package/src/rust/{model → tasks}/eject.rs +2 -2
  142. package/src/rust/{model → tasks}/get_viewer_config.rs +0 -11
  143. package/src/rust/{model → tasks}/intersection_observer.rs +22 -4
  144. package/src/{less/containers/radio-list.less → rust/tasks/is_invalid_drop.rs} +21 -14
  145. package/src/rust/tasks/mod.rs +52 -0
  146. package/src/rust/{model → tasks}/plugin_column_styles.rs +69 -46
  147. package/src/rust/{model → tasks}/resize_observer.rs +39 -6
  148. package/src/rust/{model → tasks}/send_plugin_config.rs +1 -1
  149. package/src/rust/tasks/structural.rs +53 -0
  150. package/src/rust/utils/mod.rs +4 -0
  151. package/src/rust/utils/modal_position.rs +110 -0
  152. package/src/rust/utils/ptr_eq_rc.rs +74 -0
  153. package/src/rust/utils/pubsub.rs +11 -1
  154. package/src/svg/bg-pattern.png +0 -0
  155. package/src/svg/close-icon.svg +1 -1
  156. package/src/svg/expression.svg +1 -1
  157. package/src/svg/mega-menu-icons-candlestick.svg +1 -1
  158. package/src/svg/mega-menu-icons-datagrid.svg +1 -2
  159. package/src/svg/mega-menu-icons-heatmap.svg +1 -1
  160. package/src/svg/mega-menu-icons-map-scatter.svg +1 -1
  161. package/src/svg/mega-menu-icons-ohlc.svg +1 -1
  162. package/src/svg/mega-menu-icons-sunburst.svg +1 -1
  163. package/src/svg/mega-menu-icons-treemap.svg +1 -1
  164. package/src/svg/mega-menu-icons-x-bar.svg +1 -1
  165. package/src/svg/mega-menu-icons-x-y-line.svg +1 -1
  166. package/src/svg/mega-menu-icons-x-y-scatter.svg +1 -1
  167. package/src/svg/mega-menu-icons-y-area.svg +1 -1
  168. package/src/svg/mega-menu-icons-y-bar.svg +1 -1
  169. package/src/svg/mega-menu-icons-y-line.svg +1 -1
  170. package/src/svg/mega-menu-icons-y-scatter.svg +1 -1
  171. package/src/svg/radio-hover.svg +1 -1
  172. package/src/svg/radio-off.svg +1 -1
  173. package/src/svg/radio-on.svg +1 -1
  174. package/src/themes/botanical.css +157 -0
  175. package/src/themes/defaults.css +139 -0
  176. package/src/themes/dracula.css +233 -0
  177. package/src/themes/gruvbox-dark.css +255 -0
  178. package/src/themes/gruvbox.css +134 -0
  179. package/src/themes/icons.css +124 -0
  180. package/src/themes/intl/de.css +102 -0
  181. package/src/themes/intl/es.css +102 -0
  182. package/src/themes/intl/fr.css +102 -0
  183. package/src/themes/intl/ja.css +102 -0
  184. package/src/themes/intl/pt.css +102 -0
  185. package/src/themes/intl/zh.css +102 -0
  186. package/src/themes/intl.css +102 -0
  187. package/src/themes/monokai.css +233 -0
  188. package/src/themes/pro-dark.css +158 -0
  189. package/src/themes/{themes.less → pro.css} +17 -20
  190. package/src/themes/solarized-dark.css +135 -0
  191. package/src/themes/solarized.css +95 -0
  192. package/src/themes/themes.css +22 -0
  193. package/src/themes/vaporwave.css +256 -0
  194. package/src/ts/extensions.ts +73 -2
  195. package/src/ts/perspective-viewer.ts +1 -0
  196. package/src/ts/ts-rs/GroupRollupMode.ts +3 -0
  197. package/src/ts/ts-rs/ViewerConfigUpdate.ts +2 -1
  198. package/tsconfig.json +1 -0
  199. package/dist/css/variables.css +0 -0
  200. package/src/less/column-dropdown.less +0 -95
  201. package/src/less/config-selector.less +0 -363
  202. package/src/less/dom/checkbox.less +0 -100
  203. package/src/less/plugin-selector.less +0 -183
  204. package/src/less/type-icon.less +0 -68
  205. package/src/rust/components/error_message.rs +0 -56
  206. package/src/rust/custom_elements/column_dropdown.rs +0 -123
  207. package/src/rust/custom_elements/filter_dropdown.rs +0 -179
  208. package/src/rust/custom_elements/function_dropdown.rs +0 -115
  209. package/src/rust/model/column_locator.rs +0 -82
  210. package/src/rust/model/is_invalid_drop.rs +0 -36
  211. package/src/rust/model/mod.rs +0 -100
  212. package/src/rust/model/reset_all.rs +0 -38
  213. package/src/rust/model/structural.rs +0 -244
  214. package/src/themes/dracula.less +0 -101
  215. package/src/themes/gruvbox-dark.less +0 -116
  216. package/src/themes/gruvbox.less +0 -152
  217. package/src/themes/icons.less +0 -130
  218. package/src/themes/intl/de.less +0 -102
  219. package/src/themes/intl/es.less +0 -102
  220. package/src/themes/intl/fr.less +0 -102
  221. package/src/themes/intl/ja.less +0 -102
  222. package/src/themes/intl/pt.less +0 -102
  223. package/src/themes/intl/zh.less +0 -102
  224. package/src/themes/intl.less +0 -102
  225. package/src/themes/monokai.less +0 -107
  226. package/src/themes/pro-dark.less +0 -147
  227. package/src/themes/pro.less +0 -186
  228. package/src/themes/solarized-dark.less +0 -78
  229. package/src/themes/solarized.less +0 -102
  230. package/src/themes/vaporwave.less +0 -145
  231. /package/dist/wasm/snippets/{perspective-viewer-1586156e058be573 → perspective-viewer-68fef752754ffbc6}/inline0.js +0 -0
  232. /package/dist/wasm/snippets/{perspective-viewer-1586156e058be573 → perspective-viewer-68fef752754ffbc6}/inline1.js +0 -0
  233. /package/dist/wasm/snippets/{perspective-viewer-1586156e058be573 → perspective-viewer-68fef752754ffbc6}/inline2.js +0 -0
  234. /package/dist/wasm/snippets/{perspective-viewer-1586156e058be573 → perspective-viewer-68fef752754ffbc6}/inline3.js +0 -0
  235. /package/dist/wasm/snippets/{perspective-viewer-1586156e058be573 → perspective-viewer-68fef752754ffbc6}/inline4.js +0 -0
  236. /package/src/rust/{model → tasks}/copy_export.rs +0 -0
  237. /package/src/rust/{model → tasks}/export_app.rs +0 -0
  238. /package/src/rust/{model → tasks}/export_method.rs +0 -0
  239. /package/src/rust/{model → tasks}/restore_and_render.rs +0 -0
  240. /package/src/rust/{model → tasks}/update_and_render.rs +0 -0
@@ -0,0 +1,157 @@
1
+ /* ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
2
+ * ┃ ██████ ██████ ██████ █ █ █ █ █ █▄ ▀███ █ ┃
3
+ * ┃ ▄▄▄▄▄█ █▄▄▄▄▄ ▄▄▄▄▄█ ▀▀▀▀▀█▀▀▀▀▀ █ ▀▀▀▀▀█ ████████▌▐███ ███▄ ▀█ █ ▀▀▀▀▀ ┃
4
+ * ┃ █▀▀▀▀▀ █▀▀▀▀▀ █▀██▀▀ ▄▄▄▄▄ █ ▄▄▄▄▄█ ▄▄▄▄▄█ ████████▌▐███ █████▄ █ ▄▄▄▄▄ ┃
5
+ * ┃ █ ██████ █ ▀█▄ █ ██████ █ ███▌▐███ ███████▄ █ ┃
6
+ * ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫
7
+ * ┃ Copyright (c) 2017, the Perspective Authors. ┃
8
+ * ┃ ╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ ┃
9
+ * ┃ This file is part of the Perspective library, distributed under the terms ┃
10
+ * ┃ of the [Apache License 2.0](https://www.apache.org/licenses/LICENSE-2.0). ┃
11
+ * ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ */
12
+
13
+ @import "./defaults.css";
14
+
15
+ /* Register theme for auto-detection */
16
+ perspective-viewer,
17
+ perspective-viewer[theme="Botanical"] {
18
+ --psp-theme-name: "Botanical";
19
+ }
20
+
21
+ perspective-viewer[theme="Botanical"] {
22
+ /* perspective-viewer-botanical--colors */
23
+ background-color: #1a2e1a;
24
+ color: #e0ead8;
25
+ --psp--color: #e0ead8;
26
+ --psp-active--color: #5a9e4b;
27
+ --psp-error--color: #e8836a;
28
+ --psp-inactive--color: #526b4a;
29
+ --psp-inactive--border-color: #3d5c3d;
30
+ --psp--background-color: #1a2e1a;
31
+ --psp-active--background: rgba(90, 158, 75, 0.5);
32
+ --psp-expression--operator--color: #b8c9ad;
33
+ --psp-expression--function--color: #7bc96f;
34
+ --psp-expression--psp-error--color: rgb(232, 131, 106);
35
+ --psp-calendar--filter: invert(1);
36
+ --psp-warning--color: #1a2e1a;
37
+ --psp-warning--background: var(--psp--color);
38
+
39
+ --psp-icon--select-arrow--mask-image: var(
40
+ --psp-icon--select-arrow-light--mask-image
41
+ );
42
+
43
+ --psp-icon--select-arrow-hover--mask-image: var(
44
+ --psp-icon--select-arrow-dark--mask-image
45
+ );
46
+
47
+ /* Syntax */
48
+ --psp-code-editor--symbol--color: #e0ead8;
49
+ --psp-code-editor--literal--color: #a8d8a0;
50
+ --psp-code-editor--operator--color: rgb(206, 176, 104);
51
+ --psp-code-editor--comment--color: rgb(120, 160, 100);
52
+ --psp-code-editor--column--color: #c9a0d8;
53
+
54
+ /* perspective-viewer-botanical--datagrid */
55
+ --psp-datagrid--pos-cell--color: #7bc96f;
56
+ --psp-datagrid--neg-cell--color: #ebac21;
57
+
58
+ /* perspective-viewer-botanical--d3fc */
59
+ --psp-d3fc--legend--color: #b8c9ad;
60
+ --psp-d3fc--treemap--labels: #e0ead8;
61
+ --psp-d3fc--treemap--hover-highlight: #e0ead8;
62
+ --psp-d3fc--tooltip--color: #e0ead8;
63
+ --psp-d3fc--axis-ticks--color: #b8c9ad;
64
+ --psp-d3fc--axis-lines--color: #526b4a;
65
+ --psp-d3fc--gridline--color: #2a4228;
66
+ --psp-d3fc--tooltip--background: rgba(30, 52, 32, 1);
67
+ --psp-d3fc--tooltip--border-color: #1a2e1a;
68
+ --psp-d3fc--legend--background: var(--psp--background-color);
69
+
70
+ --psp-d3fc--series--color: rgb(90, 158, 75);
71
+ --psp-d3fc--series-1--color: rgb(90, 158, 75);
72
+ --psp-d3fc--series-2--color: rgb(206, 176, 104);
73
+ --psp-d3fc--series-3--color: rgb(160, 110, 180);
74
+ --psp-d3fc--series-4--color: rgb(80, 170, 150);
75
+ --psp-d3fc--series-5--color: rgb(140, 170, 90);
76
+ --psp-d3fc--series-6--color: rgb(200, 120, 140);
77
+ --psp-d3fc--series-7--color: rgb(100, 150, 190);
78
+ --psp-d3fc--series-8--color: rgb(210, 140, 80);
79
+ --psp-d3fc--series-9--color: rgb(130, 120, 190);
80
+ --psp-d3fc--series-10--color: rgb(170, 200, 110);
81
+
82
+ --psp-d3fc--full-gradient--background: linear-gradient(
83
+ #e8836a 0%,
84
+ #1a2e1a 50%,
85
+ #5a9e4b 100%
86
+ );
87
+
88
+ --psp-d3fc--pos-gradient--background: linear-gradient(
89
+ #1a2e1a 0%,
90
+ #5a9e4b 100%
91
+ );
92
+ --psp-d3fc--neg-gradient--background: linear-gradient(
93
+ #e8836a 0%,
94
+ #1a2e1a 100%
95
+ );
96
+
97
+ /* perspective-viewer-botanical--openlayers */
98
+ --psp-openlayers--tile-url: "http://{a-c}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}.png";
99
+ --psp-openlayers--attribution--filter: invert(1) hue-rotate(180deg);
100
+ --psp-openlayers--element--background: #1e3420;
101
+ --psp-openlayers--category-1--color: rgb(90, 158, 75);
102
+ --psp-openlayers--category-2--color: rgb(206, 176, 104);
103
+ --psp-openlayers--category-3--color: rgb(160, 110, 180);
104
+ --psp-openlayers--category-4--color: rgb(80, 170, 150);
105
+ --psp-openlayers--category-5--color: rgb(140, 170, 90);
106
+ --psp-openlayers--category-6--color: rgb(200, 120, 140);
107
+ --psp-openlayers--category-7--color: rgb(100, 150, 190);
108
+ --psp-openlayers--category-8--color: rgb(210, 140, 80);
109
+ --psp-openlayers--category-9--color: rgb(130, 120, 190);
110
+ --psp-openlayers--category-10--color: rgb(170, 200, 110);
111
+ --psp-openlayers--gradient--background: linear-gradient(
112
+ #e8836a 0%,
113
+ #1a2e1a 50%,
114
+ #5a9e4b 100%
115
+ );
116
+ }
117
+
118
+ perspective-copy-menu[theme="Botanical"],
119
+ perspective-export-menu[theme="Botanical"],
120
+ perspective-dropdown[theme="Botanical"],
121
+ perspective-date-column-style[theme="Botanical"],
122
+ perspective-datetime-column-style[theme="Botanical"],
123
+ perspective-number-column-style[theme="Botanical"],
124
+ perspective-string-column-style[theme="Botanical"] {
125
+ /* perspective-viewer-botanical--colors */
126
+ background-color: #1a2e1a;
127
+ color: #e0ead8;
128
+ --psp--color: #e0ead8;
129
+ --psp-active--color: #5a9e4b;
130
+ --psp-error--color: #e8836a;
131
+ --psp-inactive--color: #526b4a;
132
+ --psp-inactive--border-color: #3d5c3d;
133
+ --psp--background-color: #1a2e1a;
134
+ --psp-active--background: rgba(90, 158, 75, 0.5);
135
+ --psp-expression--operator--color: #b8c9ad;
136
+ --psp-expression--function--color: #7bc96f;
137
+ --psp-expression--psp-error--color: rgb(232, 131, 106);
138
+ --psp-calendar--filter: invert(1);
139
+ --psp-warning--color: #1a2e1a;
140
+ --psp-warning--background: var(--psp--color);
141
+
142
+ --psp-icon--select-arrow--mask-image: var(
143
+ --psp-icon--select-arrow-light--mask-image
144
+ );
145
+
146
+ --psp-icon--select-arrow-hover--mask-image: var(
147
+ --psp-icon--select-arrow-dark--mask-image
148
+ );
149
+
150
+ --psp-code-editor--symbol--color: #e0ead8;
151
+ --psp-code-editor--literal--color: #a8d8a0;
152
+ --psp-code-editor--operator--color: rgb(206, 176, 104);
153
+ --psp-code-editor--comment--color: rgb(120, 160, 100);
154
+ --psp-code-editor--column--color: #c9a0d8;
155
+
156
+ border: 1px solid #3d5c3d;
157
+ }
@@ -0,0 +1,139 @@
1
+ /* ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
2
+ * ┃ ██████ ██████ ██████ █ █ █ █ █ █▄ ▀███ █ ┃
3
+ * ┃ ▄▄▄▄▄█ █▄▄▄▄▄ ▄▄▄▄▄█ ▀▀▀▀▀█▀▀▀▀▀ █ ▀▀▀▀▀█ ████████▌▐███ ███▄ ▀█ █ ▀▀▀▀▀ ┃
4
+ * ┃ █▀▀▀▀▀ █▀▀▀▀▀ █▀██▀▀ ▄▄▄▄▄ █ ▄▄▄▄▄█ ▄▄▄▄▄█ ████████▌▐███ █████▄ █ ▄▄▄▄▄ ┃
5
+ * ┃ █ ██████ █ ▀█▄ █ ██████ █ ███▌▐███ ███████▄ █ ┃
6
+ * ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫
7
+ * ┃ Copyright (c) 2017, the Perspective Authors. ┃
8
+ * ┃ ╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ ┃
9
+ * ┃ This file is part of the Perspective library, distributed under the terms ┃
10
+ * ┃ of the [Apache License 2.0](https://www.apache.org/licenses/LICENSE-2.0). ┃
11
+ * ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ */
12
+
13
+ @import "./icons.css";
14
+ @import "./intl.css";
15
+
16
+ perspective-viewer,
17
+ perspective-workspace,
18
+ perspective-copy-menu,
19
+ perspective-export-menu,
20
+ perspective-dropdown,
21
+ perspective-date-column-style,
22
+ perspective-datetime-column-style,
23
+ perspective-number-column-style,
24
+ perspective-string-column-style {
25
+ /* Colors */
26
+ --psp-placeholder--background: #8b868045;
27
+
28
+ /* Dimensions */
29
+ --psp-button--font-size: 16px;
30
+ --psp-config-button--padding: 15px 8px 6px 8px;
31
+ --psp-column-selector--font-size: 16px;
32
+ --psp-column-type--width: 25px;
33
+ --psp-select--padding: 0px;
34
+ --psp-top-panel-row--display: inline-flex;
35
+ --psp-button--min-width: 33px;
36
+
37
+ /* Fonts */
38
+ font-family:
39
+ "ui-monospace", "SFMono-Regular", "SF Mono", "Menlo", "Consolas",
40
+ "Liberation Mono", monospace;
41
+ --psp-interface-monospace--font-family:
42
+ "ui-monospace", "SFMono-Regular", "SF Mono", "Menlo", "Consolas",
43
+ "Liberation Mono", monospace;
44
+
45
+ /* Colors (select arrow defaults) */
46
+ --psp-icon--select-arrow--mask-image: var(
47
+ --psp-icon--select-arrow-dark--mask-image
48
+ );
49
+ --psp-icon--select-arrow-hover--mask-image: var(
50
+ --psp-icon--select-arrow-light--mask-image
51
+ );
52
+
53
+ /* D3FC */
54
+ --psp-label--d3fc-y1--content: "arrow_upward";
55
+ --psp-label--d3fc-y2--content: "arrow_downward";
56
+ --psp-d3fc--treemap-axis--lines: none;
57
+ --psp-d3fc--tooltip--background-color: rgba(155, 155, 155, 0.8);
58
+ --psp-d3fc--tooltip--color: #161616;
59
+ --psp-d3fc--tooltip--border-color: #fff;
60
+ --psp-d3fc--tooltip--box-shadow: 0 2px 4px 0 rgb(0 0 0 / 10%);
61
+ --psp-d3fc--gridline--color: #eaedef;
62
+ --psp-d3fc--axis-ticks--color: #161616;
63
+ --psp-d3fc--axis-lines--color: #c5c9d0;
64
+ --psp-d3fc--legend--background: var(--psp--background-color);
65
+ --psp-d3fc--series--color: rgba(31, 119, 180, 0.8);
66
+ --psp-d3fc--series-1--color: #0366d6;
67
+ --psp-d3fc--series-2--color: #ff7f0e;
68
+ --psp-d3fc--series-3--color: #2ca02c;
69
+ --psp-d3fc--series-4--color: #d62728;
70
+ --psp-d3fc--series-5--color: #9467bd;
71
+ --psp-d3fc--series-6--color: #8c564b;
72
+ --psp-d3fc--series-7--color: #e377c2;
73
+ --psp-d3fc--series-8--color: #7f7f7f;
74
+ --psp-d3fc--series-9--color: #bcbd22;
75
+ --psp-d3fc--series-10--color: #17becf;
76
+ --psp-d3fc--full-gradient--background: linear-gradient(
77
+ #4d342f 0%,
78
+ #e4521b 22.5%,
79
+ #feeb65 42.5%,
80
+ #f0f0f0 50%,
81
+ #dcedc8 57.5%,
82
+ #42b3d5 67.5%,
83
+ #1a237e 100%
84
+ );
85
+ --psp-d3fc--pos-gradient--background: linear-gradient(
86
+ #f0f0f0 0%,
87
+ #dcedc8 10%,
88
+ #42b3d5 50%,
89
+ #1a237e 100%
90
+ );
91
+ --psp-d3fc--neg-gradient--background: linear-gradient(
92
+ #4d342f 0%,
93
+ #e4521b 50%,
94
+ #feeb65 90%,
95
+ #f0f0f0 100%
96
+ );
97
+
98
+ /* Datagrid */
99
+ --psp-datagrid--pos-cell--color: #338dcd;
100
+ --psp-datagrid--neg-cell--color: #ff471e;
101
+
102
+ /* OpenLayers */
103
+ --psp-openlayers--tile-url: "http://{a-c}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}.png";
104
+ --psp-openlayers--element--background: #fff;
105
+ --psp-openlayers--category-1--color: #0366d6;
106
+ --psp-openlayers--category-2--color: #ff7f0e;
107
+ --psp-openlayers--category-3--color: #2ca02c;
108
+ --psp-openlayers--category-4--color: #d62728;
109
+ --psp-openlayers--category-5--color: #9467bd;
110
+ --psp-openlayers--category-6--color: #8c564b;
111
+ --psp-openlayers--category-7--color: #e377c2;
112
+ --psp-openlayers--category-8--color: #7f7f7f;
113
+ --psp-openlayers--category-9--color: #bcbd22;
114
+ --psp-openlayers--category-10--color: #17becf;
115
+ --psp-openlayers--gradient--background: linear-gradient(
116
+ #4d342f 0%,
117
+ #e4521b 22.5%,
118
+ #feeb65 42.5%,
119
+ #f0f0f0 50%,
120
+ #dcedc8 57.5%,
121
+ #42b3d5 67.5%,
122
+ #1a237e 100%
123
+ );
124
+ }
125
+
126
+ /* Modal defaults */
127
+ perspective-copy-menu,
128
+ perspective-export-menu,
129
+ perspective-dropdown,
130
+ perspective-date-column-style,
131
+ perspective-datetime-column-style,
132
+ perspective-number-column-style,
133
+ perspective-string-column-style {
134
+ background-color: white;
135
+ border: 1px solid var(--psp-inactive--color);
136
+ border-radius: 0 0 2px 2px;
137
+ --psp-label--column-style-pos-color--content: "+";
138
+ --psp-label--column-style-neg-color--content: "-";
139
+ }
@@ -0,0 +1,233 @@
1
+ /* ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
2
+ * ┃ ██████ ██████ ██████ █ █ █ █ █ █▄ ▀███ █ ┃
3
+ * ┃ ▄▄▄▄▄█ █▄▄▄▄▄ ▄▄▄▄▄█ ▀▀▀▀▀█▀▀▀▀▀ █ ▀▀▀▀▀█ ████████▌▐███ ███▄ ▀█ █ ▀▀▀▀▀ ┃
4
+ * ┃ █▀▀▀▀▀ █▀▀▀▀▀ █▀██▀▀ ▄▄▄▄▄ █ ▄▄▄▄▄█ ▄▄▄▄▄█ ████████▌▐███ █████▄ █ ▄▄▄▄▄ ┃
5
+ * ┃ █ ██████ █ ▀█▄ █ ██████ █ ███▌▐███ ███████▄ █ ┃
6
+ * ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫
7
+ * ┃ Copyright (c) 2017, the Perspective Authors. ┃
8
+ * ┃ ╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ ┃
9
+ * ┃ This file is part of the Perspective library, distributed under the terms ┃
10
+ * ┃ of the [Apache License 2.0](https://www.apache.org/licenses/LICENSE-2.0). ┃
11
+ * ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ */
12
+
13
+ @import "./defaults.css";
14
+
15
+ perspective-viewer,
16
+ perspective-viewer[theme="Dracula"] {
17
+ --psp-theme-name: "Dracula";
18
+ }
19
+
20
+ perspective-viewer[theme="Dracula"] {
21
+ /* perspective-viewer-pro-dark--colors (overrides) */
22
+ background-color: #242526;
23
+ color: white;
24
+ --psp--color: white;
25
+ --psp-active--color: #2770a9;
26
+ --psp-error--color: #ff9485;
27
+ --psp-inactive--color: #61656e;
28
+ --psp-inactive--border-color: #4c505b;
29
+ --psp--background-color: #242526;
30
+ --psp-active--background: rgba(39, 113, 170, 0.5);
31
+ --psp-expression--operator--color: #c5c9d0;
32
+ --psp-expression--function--color: #22a0ce;
33
+ --psp-expression--psp-error--color: rgb(255, 136, 136);
34
+ --psp-calendar--filter: invert(1);
35
+ --psp-warning--color: #242526;
36
+ --psp-warning--background: var(--psp--color);
37
+
38
+ --psp-icon--select-arrow--mask-image: var(
39
+ --psp-icon--select-arrow-light--mask-image
40
+ );
41
+
42
+ --psp-icon--select-arrow-hover--mask-image: var(
43
+ --psp-icon--select-arrow-dark--mask-image
44
+ );
45
+
46
+ --psp-code-editor--symbol--color: white;
47
+ --psp-code-editor--literal--color: #7dc3f0;
48
+ --psp-code-editor--operator--color: rgb(23, 166, 123);
49
+ --psp-code-editor--comment--color: rgb(204, 120, 48);
50
+ --psp-code-editor--column--color: #e18ee1;
51
+
52
+ /* perspective-viewer-pro-dark--datagrid */
53
+ --psp-datagrid--pos-cell--color: #7dc3f0;
54
+ --psp-datagrid--neg-cell--color: #ff9485;
55
+
56
+ /* perspective-viewer-pro-dark--d3fc (overrides) */
57
+ --psp-d3fc--legend--color: #c5c9d0;
58
+ --psp-d3fc--treemap--labels: white;
59
+ --psp-d3fc--treemap--hover-highlight: white;
60
+ --psp-d3fc--tooltip--color: white;
61
+ --psp-d3fc--axis-ticks--color: #c5c9d0;
62
+ --psp-d3fc--axis-lines--color: #61656e;
63
+ --psp-d3fc--gridline--color: #3b3f46;
64
+ --psp-d3fc--tooltip--background: rgba(42, 44, 47, 1);
65
+ --psp-d3fc--tooltip--border-color: #242526;
66
+ --psp-d3fc--legend--background: var(--psp--background-color);
67
+ --psp-d3fc--series--color: rgb(71, 120, 194);
68
+ --psp-d3fc--series-1--color: rgb(71, 120, 194);
69
+ --psp-d3fc--series-2--color: rgb(204, 120, 48);
70
+ --psp-d3fc--series-3--color: rgb(158, 84, 192);
71
+ --psp-d3fc--series-4--color: rgb(51, 150, 153);
72
+ --psp-d3fc--series-5--color: rgb(102, 114, 143);
73
+ --psp-d3fc--series-6--color: rgb(211, 103, 189);
74
+ --psp-d3fc--series-7--color: rgb(109, 124, 77);
75
+ --psp-d3fc--series-8--color: rgb(221, 99, 103);
76
+ --psp-d3fc--series-9--color: rgb(120, 104, 206);
77
+ --psp-d3fc--series-10--color: rgb(23, 166, 123);
78
+ --psp-d3fc--full-gradient--background: linear-gradient(
79
+ #dd6367 0%,
80
+ #242526 50%,
81
+ #3289c8 100%
82
+ );
83
+ --psp-d3fc--pos-gradient--background: linear-gradient(
84
+ #242526 0%,
85
+ #3289c8 100%
86
+ );
87
+ --psp-d3fc--neg-gradient--background: linear-gradient(
88
+ #dd6367 0%,
89
+ #242526 100%
90
+ );
91
+
92
+ /* perspective-viewer-pro-dark--openlayers (overrides) */
93
+ --psp-openlayers--tile-url: "http://{a-c}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}.png";
94
+ --psp-openlayers--attribution--filter: invert(1) hue-rotate(180deg);
95
+ --psp-openlayers--element--background: #212c2f;
96
+ --psp-openlayers--category-1--color: rgb(71, 120, 194);
97
+ --psp-openlayers--category-2--color: rgb(204, 120, 48);
98
+ --psp-openlayers--category-3--color: rgb(158, 84, 192);
99
+ --psp-openlayers--category-4--color: rgb(51, 150, 153);
100
+ --psp-openlayers--category-5--color: rgb(102, 114, 143);
101
+ --psp-openlayers--category-6--color: rgb(211, 103, 189);
102
+ --psp-openlayers--category-7--color: rgb(109, 124, 77);
103
+ --psp-openlayers--category-8--color: rgb(221, 99, 103);
104
+ --psp-openlayers--category-9--color: rgb(120, 104, 206);
105
+ --psp-openlayers--category-10--color: rgb(23, 166, 123);
106
+ --psp-openlayers--gradient--background: linear-gradient(
107
+ #dd6367 0%,
108
+ #242526 50%,
109
+ #3289c8 100%
110
+ );
111
+
112
+ /* perspective-viewer-dracula--colors */
113
+ --theme-bg0: #191a22;
114
+ --theme-bg1: #282a36;
115
+ --theme-bg2: #44475a;
116
+
117
+ --theme-gray: #928374;
118
+
119
+ --theme-fg0: #f8f8f2;
120
+ --theme-fg1: #6272a4;
121
+ --theme-fg2: #44475a;
122
+
123
+ --theme-red: #ff5555;
124
+ --theme-green: #50fa7b;
125
+ --theme-yellow: #f1fa8c;
126
+ --theme-blue: #8be9fd;
127
+ --theme-purple: #bd93f9;
128
+ --theme-orange: #ffb86c;
129
+ --theme-pink: #ff79c6;
130
+
131
+ color: var(--theme-fg0);
132
+ background-color: var(--theme-bg0);
133
+ --psp--color: var(--theme-fg1);
134
+ --psp-inactive--color: var(--theme-fg2);
135
+ --psp-inactive--border-color: var(--theme-bg2);
136
+ --psp--background-color: var(--theme-bg1);
137
+ --psp-status-icon--connected--color: var(--theme-green);
138
+ --psp-status-icon--initializing--color: var(--theme-yellow);
139
+ --psp-status-icon--psp-error--color: var(--theme-red);
140
+
141
+ /* perspective-viewer-dracula--datagrid */
142
+ --psp-datagrid--pos-cell--color: var(--theme-blue);
143
+ --psp-datagrid--neg-cell--color: var(--theme-red);
144
+
145
+ /* perspective-viewer-dracula--d3fc */
146
+ --psp-d3fc--axis-ticks--color: var(--theme-fg1);
147
+ --psp-d3fc--gridline--color: var(--theme-bg2);
148
+ --psp-d3fc--series--color: var(--theme-blue);
149
+ --psp-d3fc--series-1--color: var(--theme-blue);
150
+ --psp-d3fc--series-2--color: var(--theme-red);
151
+ --psp-d3fc--series-3--color: var(--theme-green);
152
+ --psp-d3fc--series-4--color: var(--theme-yellow);
153
+ --psp-d3fc--series-5--color: var(--theme-purple);
154
+ --psp-d3fc--series-6--color: var(--theme-pink);
155
+ --psp-d3fc--series-7--color: var(--theme-orange);
156
+
157
+ --psp-d3fc--neg-gradient--background: linear-gradient(
158
+ var(--theme-bg0),
159
+ var(--theme-red)
160
+ ) !important;
161
+
162
+ --psp-d3fc--pos-gradient--background: linear-gradient(
163
+ var(--theme-bg0),
164
+ var(--theme-blue)
165
+ ) !important;
166
+
167
+ --psp-d3fc--full-gradient--background: linear-gradient(
168
+ var(--theme-red),
169
+ var(--theme-bg0),
170
+ var(--theme-blue)
171
+ ) !important;
172
+ }
173
+
174
+ perspective-copy-menu[theme="Dracula"],
175
+ perspective-export-menu[theme="Dracula"],
176
+ perspective-dropdown[theme="Dracula"] {
177
+ /* perspective-viewer-pro-dark--colors (overrides) */
178
+ background-color: #242526;
179
+ color: white;
180
+ --psp--color: white;
181
+ --psp-active--color: #2770a9;
182
+ --psp-error--color: #ff9485;
183
+ --psp-inactive--color: #61656e;
184
+ --psp-inactive--border-color: #4c505b;
185
+ --psp--background-color: #242526;
186
+ --psp-active--background: rgba(39, 113, 170, 0.5);
187
+ --psp-expression--operator--color: #c5c9d0;
188
+ --psp-expression--function--color: #22a0ce;
189
+ --psp-expression--psp-error--color: rgb(255, 136, 136);
190
+ --psp-calendar--filter: invert(1);
191
+ --psp-warning--color: #242526;
192
+ --psp-warning--background: var(--psp--color);
193
+ --psp-icon--select-arrow--mask-image: var(
194
+ --psp-icon--select-arrow-light--mask-image
195
+ );
196
+ --psp-icon--select-arrow-hover--mask-image: var(
197
+ --psp-icon--select-arrow-dark--mask-image
198
+ );
199
+ --psp-code-editor--symbol--color: white;
200
+ --psp-code-editor--literal--color: #7dc3f0;
201
+ --psp-code-editor--operator--color: rgb(23, 166, 123);
202
+ --psp-code-editor--comment--color: rgb(204, 120, 48);
203
+ --psp-code-editor--column--color: #e18ee1;
204
+
205
+ border: 1px solid #4c505b;
206
+
207
+ /* perspective-viewer-dracula--colors */
208
+ --theme-bg0: #191a22;
209
+ --theme-bg1: #282a36;
210
+ --theme-bg2: #44475a;
211
+ --theme-gray: #928374;
212
+ --theme-fg0: #f8f8f2;
213
+ --theme-fg1: #6272a4;
214
+ --theme-fg2: #44475a;
215
+ --theme-red: #ff5555;
216
+ --theme-green: #50fa7b;
217
+ --theme-yellow: #f1fa8c;
218
+ --theme-blue: #8be9fd;
219
+ --theme-purple: #bd93f9;
220
+ --theme-orange: #ffb86c;
221
+ --theme-pink: #ff79c6;
222
+
223
+ color: var(--theme-fg0);
224
+ --psp--color: var(--theme-fg1);
225
+ --psp-inactive--color: var(--theme-fg2);
226
+ --psp-inactive--border-color: var(--theme-bg2);
227
+ --psp--background-color: var(--theme-bg1);
228
+ --psp-status-icon--connected--color: var(--theme-green);
229
+ --psp-status-icon--initializing--color: var(--theme-yellow);
230
+ --psp-status-icon--psp-error--color: var(--theme-red);
231
+
232
+ background-color: var(--theme-bg0);
233
+ }