visualifyjs 2.5.3-2.dev

Sign up to get free protection for your applications and to get access to all the features.
Files changed (147) hide show
  1. package/.github/workflows/static.yml.bak +51 -0
  2. package/LICENSE +674 -0
  3. package/README.md +59 -0
  4. package/config-overrides.js +31 -0
  5. package/dist/visualify.js +188 -0
  6. package/docs/.nojekyll +0 -0
  7. package/docs/docs/CLI.md +34 -0
  8. package/docs/docs/README.md +65 -0
  9. package/docs/docs/Rechart/bar.md +190 -0
  10. package/docs/docs/Rechart/funnel.md +241 -0
  11. package/docs/docs/Rechart/geo.md +0 -0
  12. package/docs/docs/Rechart/line.md +355 -0
  13. package/docs/docs/Rechart/liquidfill.md +0 -0
  14. package/docs/docs/Rechart/pie.md +225 -0
  15. package/docs/docs/Rechart/polar.md +0 -0
  16. package/docs/docs/Rechart/radar.md +253 -0
  17. package/docs/docs/Rechart/sankey.md +0 -0
  18. package/docs/docs/Rechart/scatter.md +298 -0
  19. package/docs/docs/Rechart/sunburst.md +0 -0
  20. package/docs/docs/Rechart/tree.md +0 -0
  21. package/docs/docs/Rechart/wordcloud.md +0 -0
  22. package/docs/docs/_404.md +52 -0
  23. package/docs/docs/_coverpage.md +11 -0
  24. package/docs/docs/_sidebar.md +44 -0
  25. package/docs/docs/components/dotBio.md +34 -0
  26. package/docs/docs/components/echart.md +82 -0
  27. package/docs/docs/components/html.md +34 -0
  28. package/docs/docs/components/macaron.md +145 -0
  29. package/docs/docs/components/markdown.md +0 -0
  30. package/docs/docs/components/more.md +142 -0
  31. package/docs/docs/components/plotly.md +62 -0
  32. package/docs/docs/components/scatterL.md +70 -0
  33. package/docs/docs/components/visium.md +57 -0
  34. package/docs/docs/configuration.md +121 -0
  35. package/docs/docs/deploy.md +31 -0
  36. package/docs/docs/log.md +9 -0
  37. package/docs/docs/more-pages.md +23 -0
  38. package/docs/docs/quickstart.md +124 -0
  39. package/docs/docs/rechart-attributes.md +74 -0
  40. package/docs/docs/rechart-basic-usage.md +162 -0
  41. package/docs/docs/static/_images/deploy-github-pages.png +0 -0
  42. package/docs/docs/static/logo/favicon.ico +0 -0
  43. package/docs/docs/static/logo/logo_128x128.png +0 -0
  44. package/docs/docs/static/logo/logo_192x192.png +0 -0
  45. package/docs/docs/static/logo/logo_256x256.png +0 -0
  46. package/docs/docs/static/logo/logo_512x512.png +0 -0
  47. package/docs/docs/static/logo/logo_64x64.png +0 -0
  48. package/docs/docs/theme.md +5 -0
  49. package/docs/index.html +71 -0
  50. package/docs/manifest.json +24 -0
  51. package/docs/static/css/fluff-stuff.css +170 -0
  52. package/docs/static/css/font-awesome.min.css +4 -0
  53. package/docs/static/css/visualify.css +25 -0
  54. package/docs/static/fonts/fontawesome-webfont.woff2 +0 -0
  55. package/docs/static/images/star.png +0 -0
  56. package/docs/static/js/configuration.js +448 -0
  57. package/docs/static/js/fluff.js +1 -0
  58. package/docs/static/js/visualify.js +188 -0
  59. package/docs/static/logo/favicon.ico +0 -0
  60. package/docs/static/logo/logo_128x128.png +0 -0
  61. package/docs/static/logo/logo_192x192.png +0 -0
  62. package/docs/static/logo/logo_256x256.png +0 -0
  63. package/docs/static/logo/logo_512x512.png +0 -0
  64. package/docs/static/logo/logo_64x64.png +0 -0
  65. package/package.json +84 -0
  66. package/rollup.config.mjs +76 -0
  67. package/src/_css/404.css +116 -0
  68. package/src/_css/App.css +38 -0
  69. package/src/_css/autoSuggestion.css +27 -0
  70. package/src/_css/circular-progress.css +33 -0
  71. package/src/_css/index.css +37 -0
  72. package/src/_css/modern.css +25 -0
  73. package/src/_media/404.png +0 -0
  74. package/src/_media/corner.svg +8 -0
  75. package/src/_media/download.svg +3 -0
  76. package/src/_media/icon.svg +1 -0
  77. package/src/_media/logo.svg +14 -0
  78. package/src/_test/App.test.js +15 -0
  79. package/src/_utils/reportWebVitals.js +13 -0
  80. package/src/core/appContext.js +27 -0
  81. package/src/core/components/Scatter.js +188 -0
  82. package/src/core/components/ScatterBio.js +572 -0
  83. package/src/core/components/VisiumPlot.js +165 -0
  84. package/src/core/components/browser.js +42 -0
  85. package/src/core/components/dotplot.js +413 -0
  86. package/src/core/components/html.js +29 -0
  87. package/src/core/components/list.js +178 -0
  88. package/src/core/components/macaron.js +201 -0
  89. package/src/core/components/markdown.js +56 -0
  90. package/src/core/components/parser.scatterBio.js +587 -0
  91. package/src/core/components/ratio.js +80 -0
  92. package/src/core/components/scatterL.js +173 -0
  93. package/src/core/components/searchbar.js +131 -0
  94. package/src/core/components/selection.js +193 -0
  95. package/src/core/components/timeline.js +281 -0
  96. package/src/core/components/visium.js +97 -0
  97. package/src/core/fetch/condfetch.js +82 -0
  98. package/src/core/fetch/fetch.js +92 -0
  99. package/src/core/fetch/json.js +29 -0
  100. package/src/core/fetch/vfetch.js +42 -0
  101. package/src/core/liveEditor.js +44 -0
  102. package/src/core/modules/codeEditorWithPreview.js +104 -0
  103. package/src/core/modules/echarts/common.js +20 -0
  104. package/src/core/modules/echarts/presetHandler.js +41 -0
  105. package/src/core/modules/echarts/presets/esodev.chromium.js +172 -0
  106. package/src/core/modules/echarts/presets/esodev.codex.js +130 -0
  107. package/src/core/modules/echarts/presets/esodev.visium.js +123 -0
  108. package/src/core/modules/echarts/presets/mmtrbc.js +186 -0
  109. package/src/core/modules/echarts.js +71 -0
  110. package/src/core/modules/echartsUtils.js +43 -0
  111. package/src/core/modules/echartswitcher.js +152 -0
  112. package/src/core/modules/replotly/presetHandler.js +24 -0
  113. package/src/core/modules/replotly/presets/minimum.js +18 -0
  114. package/src/core/modules/replotly/presets/mmtrbc.dot.js +114 -0
  115. package/src/core/modules/replotly/presets/mmtrbc.violin.js +100 -0
  116. package/src/core/modules/replotly.js +71 -0
  117. package/src/core/pages/404.js +50 -0
  118. package/src/core/pages/error.js +27 -0
  119. package/src/core/pages/jsonPage.js +62 -0
  120. package/src/core/pages/loading.js +44 -0
  121. package/src/core/parser/echart.data.js +183 -0
  122. package/src/core/parser/echart.features.js +125 -0
  123. package/src/core/parser/echart.general.js +147 -0
  124. package/src/core/parser/echart.hilbert.js +57 -0
  125. package/src/core/parser/echart.parser.js +210 -0
  126. package/src/core/parser/echart.series.js +67 -0
  127. package/src/core/parser/echart.types.js +76 -0
  128. package/src/core/parser/plotly.config.js +10 -0
  129. package/src/core/parser/plotly.data.js +132 -0
  130. package/src/core/parser/plotly.layout.js +10 -0
  131. package/src/core/parser/plotly.violin.js +18 -0
  132. package/src/core/recharts.js +62 -0
  133. package/src/core/router/alias.js +49 -0
  134. package/src/core/router/jsonRouter.js +31 -0
  135. package/src/core/themes/modern.js +32 -0
  136. package/src/core/themes/themeSelector.js +33 -0
  137. package/src/core/visualify.js +47 -0
  138. package/src/core/widgets/circularProgress.js +24 -0
  139. package/src/core/widgets/controller.js +83 -0
  140. package/src/core/widgets/errorBoundary.js +36 -0
  141. package/src/core/widgets/footer.js +177 -0
  142. package/src/core/widgets/header.js +234 -0
  143. package/src/core/widgets/layout/Grid.js +31 -0
  144. package/src/core/widgets/layout.js +36 -0
  145. package/src/core/widgets/mapping.js +42 -0
  146. package/src/index.js +62 -0
  147. package/src/setupTests.js +5 -0
@@ -0,0 +1,31 @@
1
+ /*
2
+ * @Author : Lihao leolihao@arizona.edu
3
+ * @Date : 2023-12-20 22:21:11
4
+ * @FilePath : /visualifyjs/src/core/widgets/layout/Grid.js
5
+ * @Description :
6
+ * Copyright (c) 2023 by Lihao (leolihao@arizona.edu), All Rights Reserved.
7
+ */
8
+ import React from 'react';
9
+
10
+ function DynamicGrid({ config = {}, children }) {
11
+ const {
12
+ rows = 2,
13
+ cols = 2,
14
+ gap = '1px',
15
+ style = {},
16
+ debug = false,
17
+ } = config;
18
+ // Custom styles for the grid
19
+ const gridStyles = {
20
+ display: 'grid',
21
+ gridTemplateRows: `repeat(${rows}, auto)`,
22
+ gridTemplateColumns: `repeat(${cols}, 1fr)`,
23
+ gap: gap,
24
+ border: debug ? '1px solid red' : 'none',
25
+ ...style,
26
+ };
27
+
28
+ return <div style={gridStyles}>{children}</div>;
29
+ }
30
+
31
+ export default DynamicGrid;
@@ -0,0 +1,36 @@
1
+ /*
2
+ * @Author : Lihao leolihao@arizona.edu
3
+ * @Date : 2023-12-20 21:48:29
4
+ * @FilePath : /visualifyjs/src/core/widgets/layout.js
5
+ * @Description :
6
+ * Copyright (c) 2023 by Lihao (leolihao@arizona.edu), All Rights Reserved.
7
+ */
8
+ import React from 'react';
9
+ import DynamicGrid from './layout/Grid';
10
+
11
+ function LayoutParser({ config = {}, children }) {
12
+ const { type = 'grid', ...rest } = config;
13
+
14
+ if (type === 'grid') {
15
+ return (
16
+ <>
17
+ <DynamicGrid config={{ ...rest }}>
18
+ {React.cloneElement(children, { layout: type })}
19
+ </DynamicGrid>
20
+ </>
21
+ );
22
+ }
23
+
24
+ return (
25
+ <div>
26
+ <h1>LayoutParser</h1>
27
+ <span>
28
+ We are not support <b>{type}</b> layout type yet
29
+ </span>
30
+ <br></br>
31
+ {children}
32
+ </div>
33
+ );
34
+ }
35
+
36
+ export default LayoutParser;
@@ -0,0 +1,42 @@
1
+ /*
2
+ * @Author : Lihao leolihao@arizona.edu
3
+ * @Date : 2023-12-21 13:52:36
4
+ * @FilePath : /visualifyjs/src/core/widgets/mapping.js
5
+ * @Description :
6
+ * Copyright (c) 2023 by Lihao (leolihao@arizona.edu), All Rights Reserved.
7
+ */
8
+
9
+ import SearchBar from '../components/searchbar';
10
+ import NaiveHTML from '../components/html';
11
+ import Markdown from '../components/markdown';
12
+ import Browser from '../components/browser';
13
+ import Macaron from '../components/macaron';
14
+ import EChartSwitcher from '../modules/echartswitcher';
15
+ import ScatterL from '../components/scatterL';
16
+ import RatioBox from '../components/ratio';
17
+ import Selection from '../components/selection';
18
+ import Timeline from '../components/timeline';
19
+ import VisiumPlot from '../components/VisiumPlot';
20
+ import RePlotly from '../modules/replotly';
21
+ import List from '../components/list';
22
+ import DotBio from '../components/dotplot';
23
+
24
+ const widgetMapping = {
25
+ // Add components here
26
+ SearchBar,
27
+ Echart: EChartSwitcher,
28
+ HTML: NaiveHTML,
29
+ Markdown,
30
+ Browser,
31
+ Macaron,
32
+ ScatterL,
33
+ RatioBox,
34
+ Selection,
35
+ Timeline,
36
+ Visium: VisiumPlot,
37
+ Plotly: RePlotly,
38
+ List,
39
+ DotBio,
40
+ };
41
+
42
+ export default widgetMapping;
package/src/index.js ADDED
@@ -0,0 +1,62 @@
1
+ /*
2
+ * @Author : Lihao leolihao@arizona.edu
3
+ * @Date : 2023-11-29 15:35:28
4
+ * @FilePath : /visualifyjs/src/index.js
5
+ * @Description :
6
+ * Copyright (c) 2023 by Lihao (leolihao@arizona.edu), All Rights Reserved.
7
+ */
8
+ import './_css/index.css';
9
+ import 'bootstrap/dist/css/bootstrap.min.css';
10
+ import reportWebVitals from './_utils/reportWebVitals';
11
+ import Recharts from './core/recharts';
12
+ import CreateApp from './core/visualify';
13
+ import LiveEditor from './core/liveEditor';
14
+
15
+ try {
16
+ if (window.$visualify) {
17
+ if (process.env.NODE_ENV === 'development') {
18
+ console.log('window.$visualify', window.$visualify);
19
+ window.$visualify.Recharts = Recharts;
20
+ window.$visualify.LiveEditor = LiveEditor;
21
+ }
22
+ if (window.$visualify.mode === 'charts') {
23
+ window.$visualify.Recharts = Recharts;
24
+ window.$visualify.LiveEditor = LiveEditor;
25
+ } else if (
26
+ window.$visualify.mode === 'pages' ||
27
+ window.$visualify.mode === undefined
28
+ ) {
29
+ // loads the visualify in pages mode
30
+ CreateApp(window.$visualify);
31
+ } else {
32
+ console.error('mode should be recharts or pages');
33
+ }
34
+
35
+ // If you want to start measuring performance in your app, pass a function
36
+ // to log results (for example: reportWebVitals(console.log))
37
+ // or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals
38
+ reportWebVitals();
39
+ } else {
40
+ // If load js before $visualify is set
41
+ let _visualify;
42
+ Object.defineProperty(window, '$visualify', {
43
+ set(config) {
44
+ // Store the value internally
45
+ _visualify = config;
46
+ // Additional code for after $visualify is set
47
+ if (config.mode === 'charts')
48
+ throw new Error(
49
+ 'You need to initialize $visualify before using recharts',
50
+ );
51
+ // loads the visualify in page mode
52
+ else if (config.mode === 'pages') CreateApp(window.$visualify);
53
+ else console.warn(`Unsupported mode: ${config.mode}`);
54
+ },
55
+ get() {
56
+ return _visualify;
57
+ },
58
+ });
59
+ }
60
+ } catch (e) {
61
+ console.error(e);
62
+ }
@@ -0,0 +1,5 @@
1
+ // jest-dom adds custom jest matchers for asserting on DOM nodes.
2
+ // allows you to do things like:
3
+ // expect(element).toHaveTextContent(/react/i)
4
+ // learn more: https://github.com/testing-library/jest-dom
5
+ import '@testing-library/jest-dom';