maidr 1.0.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 (206) hide show
  1. package/.Rbuildignore +1 -0
  2. package/.eslintignore +3 -0
  3. package/.eslintrc.json +6 -0
  4. package/.github/workflows/build.yml +20 -0
  5. package/.prettierignore +3 -0
  6. package/.prettierrc.json +7 -0
  7. package/.vscode/extensions.json +25 -0
  8. package/.vscode/settings.json +30 -0
  9. package/.vscode/tasks.json +57 -0
  10. package/CHANGELOG.md +7 -0
  11. package/CITATION.cff +21 -0
  12. package/CONTRIBUTING.md +87 -0
  13. package/LICENSE.md +595 -0
  14. package/README.md +341 -0
  15. package/dist/maidr.js +8851 -0
  16. package/dist/maidr.min.js +1 -0
  17. package/dist/styles.css +244 -0
  18. package/dist/styles.min.css +1 -0
  19. package/docs/Audio.html +1398 -0
  20. package/docs/Constants.html +256 -0
  21. package/docs/Description.html +582 -0
  22. package/docs/Helper.html +364 -0
  23. package/docs/LogError.html +905 -0
  24. package/docs/Menu.html +665 -0
  25. package/docs/Position.html +174 -0
  26. package/docs/Resources.html +338 -0
  27. package/docs/Review.html +333 -0
  28. package/docs/Tracker.html +965 -0
  29. package/docs/audio.js.html +635 -0
  30. package/docs/constants.js.html +1242 -0
  31. package/docs/display.js.html +1184 -0
  32. package/docs/fonts/OpenSans-Bold-webfont.eot +0 -0
  33. package/docs/fonts/OpenSans-Bold-webfont.svg +1830 -0
  34. package/docs/fonts/OpenSans-Bold-webfont.woff +0 -0
  35. package/docs/fonts/OpenSans-BoldItalic-webfont.eot +0 -0
  36. package/docs/fonts/OpenSans-BoldItalic-webfont.svg +1830 -0
  37. package/docs/fonts/OpenSans-BoldItalic-webfont.woff +0 -0
  38. package/docs/fonts/OpenSans-Italic-webfont.eot +0 -0
  39. package/docs/fonts/OpenSans-Italic-webfont.svg +1830 -0
  40. package/docs/fonts/OpenSans-Italic-webfont.woff +0 -0
  41. package/docs/fonts/OpenSans-Light-webfont.eot +0 -0
  42. package/docs/fonts/OpenSans-Light-webfont.svg +1831 -0
  43. package/docs/fonts/OpenSans-Light-webfont.woff +0 -0
  44. package/docs/fonts/OpenSans-LightItalic-webfont.eot +0 -0
  45. package/docs/fonts/OpenSans-LightItalic-webfont.svg +1835 -0
  46. package/docs/fonts/OpenSans-LightItalic-webfont.woff +0 -0
  47. package/docs/fonts/OpenSans-Regular-webfont.eot +0 -0
  48. package/docs/fonts/OpenSans-Regular-webfont.svg +1831 -0
  49. package/docs/fonts/OpenSans-Regular-webfont.woff +0 -0
  50. package/docs/fonts/OpenSans-Semibold-webfont.eot +0 -0
  51. package/docs/fonts/OpenSans-Semibold-webfont.svg +1830 -0
  52. package/docs/fonts/OpenSans-Semibold-webfont.ttf +0 -0
  53. package/docs/fonts/OpenSans-Semibold-webfont.woff +0 -0
  54. package/docs/fonts/OpenSans-SemiboldItalic-webfont.eot +0 -0
  55. package/docs/fonts/OpenSans-SemiboldItalic-webfont.svg +1830 -0
  56. package/docs/fonts/OpenSans-SemiboldItalic-webfont.ttf +0 -0
  57. package/docs/fonts/OpenSans-SemiboldItalic-webfont.woff +0 -0
  58. package/docs/index.html +66 -0
  59. package/docs/scripts/linenumber.js +25 -0
  60. package/docs/scripts/prettify/Apache-License-2.0.txt +202 -0
  61. package/docs/scripts/prettify/lang-css.js +2 -0
  62. package/docs/scripts/prettify/prettify.js +28 -0
  63. package/docs/styles/jsdoc-default.css +692 -0
  64. package/docs/styles/prettify-jsdoc.css +111 -0
  65. package/docs/styles/prettify-tomorrow.css +132 -0
  66. package/examples/dev_charts/barplot.html +1056 -0
  67. package/examples/dev_charts/boxplot.html +1856 -0
  68. package/examples/dev_charts/boxplot_flipped.svg +727 -0
  69. package/examples/dev_charts/heatmap.html +1217 -0
  70. package/examples/dev_charts/scatterplot/displ.js +18 -0
  71. package/examples/dev_charts/scatterplot/histogram_for_residual.svg +595 -0
  72. package/examples/dev_charts/scatterplot/hwy.js +15 -0
  73. package/examples/dev_charts/scatterplot/layers/point_layer.json +938 -0
  74. package/examples/dev_charts/scatterplot/layers/smooth_layer.json +322 -0
  75. package/examples/dev_charts/scatterplot/point_layer.js +938 -0
  76. package/examples/dev_charts/scatterplot/prediction_array.js +31 -0
  77. package/examples/dev_charts/scatterplot/prediction_array.json +31 -0
  78. package/examples/dev_charts/scatterplot/residual_array.js +29 -0
  79. package/examples/dev_charts/scatterplot/residual_array.json +29 -0
  80. package/examples/dev_charts/scatterplot/scatterplot.svg +1428 -0
  81. package/examples/dev_charts/scatterplot/scatterplot_data.html +2838 -0
  82. package/examples/dev_charts/scatterplot/scatterplot_no_jitter_point_only.svg +1393 -0
  83. package/examples/dev_charts/scatterplot/scatterplot_no_jitter_with_bestfit.svg +1424 -0
  84. package/examples/dev_charts/scatterplot/scatterplot_no_jitter_with_loess_curve.svg +1402 -0
  85. package/examples/dev_charts/scatterplot/smooth_layer.js +322 -0
  86. package/examples/dev_charts/scatterplot.html +4560 -0
  87. package/examples/dodged_bar/dodged_bar.png +0 -0
  88. package/examples/dodged_bar/dodged_bar.svg +198 -0
  89. package/examples/dodged_bar/schema.json +41 -0
  90. package/examples/histogram/histogram_tutorial.svg +482 -0
  91. package/examples/histogram/histogram_tutorial_raw_data.json +362 -0
  92. package/examples/histogram/histogram_user_study.svg +578 -0
  93. package/examples/histogram/histogram_user_study_raw_data.json +362 -0
  94. package/examples/lineplot/lineplot_sample.svg +126 -0
  95. package/examples/lineplot/lineplot_sample_raw_data.json +1 -0
  96. package/examples/lineplot/point+lineplot_sample.svg +700 -0
  97. package/examples/other/audio_oscillator_boxplot.js +95 -0
  98. package/examples/other/barplot_labels.svg +314 -0
  99. package/examples/other/barplot_user_study.svg +313 -0
  100. package/examples/other/boxplot.html +927 -0
  101. package/examples/other/boxplot_data_frame.html +568 -0
  102. package/examples/other/boxplot_label.svg +751 -0
  103. package/examples/other/braille-display_boxplot.js +79 -0
  104. package/examples/other/control_boxplot.js +55 -0
  105. package/examples/other/draft.js +56 -0
  106. package/examples/other/getData.html +400 -0
  107. package/examples/other/getData.js +41 -0
  108. package/examples/other/ggplot_to_svg.R +371 -0
  109. package/examples/other/heatmap.svg +582 -0
  110. package/examples/other/heatmap_label.svg +608 -0
  111. package/examples/other/multiple_barplot.html +2250 -0
  112. package/examples/other/new_scatterplot_user_study_point_layer.json +122 -0
  113. package/examples/other/py_binder_output.html +1167 -0
  114. package/examples/other/scatterplot_label.svg +1429 -0
  115. package/examples/other/seaborn_plot.py +9 -0
  116. package/examples/other/svglite_bar.svg +136 -0
  117. package/examples/other/tutorial_boxplot.svg +727 -0
  118. package/examples/other/tutorial_boxplot_data.json +72 -0
  119. package/examples/other/user_study_boxplot.svg +676 -0
  120. package/examples/stacked_bar/schema.json +41 -0
  121. package/examples/stacked_bar/stack_bar.png +0 -0
  122. package/examples/stacked_bar/stacked_bar.svg +180 -0
  123. package/examples/stacked_normalized_bar/stacked_normalized_bar.png +0 -0
  124. package/examples/stacked_normalized_bar/stacked_normalized_bar.svg +189 -0
  125. package/examples/static/barplot.svg +263 -0
  126. package/examples/static/barplot_diamonds_gridSVG.svg +254 -0
  127. package/examples/static/boxplot.svg +424 -0
  128. package/examples/static/heatmap.svg +373 -0
  129. package/examples/static/heatmap_penguins_table.html +486 -0
  130. package/examples/static/scatterplot.svg +530 -0
  131. package/examples/svglite/task_heatmap.html +802 -0
  132. package/examples/svglite/task_heatmap.svg +111 -0
  133. package/examples/svglite/tutorial_bar.svg +136 -0
  134. package/examples/svglite/tutorial_bar_plot.html +504 -0
  135. package/examples/svglite/tutorial_boxplot.html +1850 -0
  136. package/examples/svglite/tutorial_boxplot.svg +727 -0
  137. package/examples/svglite/tutorial_scatterplot.html +3135 -0
  138. package/examples/svglite/tutorial_scatterplot.svg +311 -0
  139. package/gulpfile.js +49 -0
  140. package/index.html +40 -0
  141. package/jsconfig.json +10 -0
  142. package/jsdoc.json +19 -0
  143. package/package.json +47 -0
  144. package/src/css/styles.css +241 -0
  145. package/src/js/__tests__/audio.test.js +49 -0
  146. package/src/js/__tests__/constants.test.js +622 -0
  147. package/src/js/audio.js +575 -0
  148. package/src/js/barplot.js +254 -0
  149. package/src/js/boxplot.js +682 -0
  150. package/src/js/constants.js +1182 -0
  151. package/src/js/controls.js +3182 -0
  152. package/src/js/display.js +1124 -0
  153. package/src/js/heatmap.js +411 -0
  154. package/src/js/histogram.js +134 -0
  155. package/src/js/init.js +427 -0
  156. package/src/js/lineplot.js +219 -0
  157. package/src/js/scatterplot.js +619 -0
  158. package/src/js/segmented.js +268 -0
  159. package/user_study_pilot/binder_test.html +526 -0
  160. package/user_study_pilot/data/barplot_user_study.svg +492 -0
  161. package/user_study_pilot/data/barplot_user_study_raw_data.json +22 -0
  162. package/user_study_pilot/data/boxplot_tutorial.json +72 -0
  163. package/user_study_pilot/data/boxplot_tutorial_horizontal.svg +727 -0
  164. package/user_study_pilot/data/boxplot_user_study.json +52 -0
  165. package/user_study_pilot/data/boxplot_user_study_vertical.svg +675 -0
  166. package/user_study_pilot/data/boxplot_user_study_vertical_horizontal.svg +676 -0
  167. package/user_study_pilot/data/heatmap_user_study.svg +719 -0
  168. package/user_study_pilot/data/heatmap_user_study_raw_data.json +127 -0
  169. package/user_study_pilot/data/new_barplot_user_study.svg +269 -0
  170. package/user_study_pilot/data/new_heatmap_user_study.svg +367 -0
  171. package/user_study_pilot/data/new_scatterplot_user_study.svg +603 -0
  172. package/user_study_pilot/data/new_scatterplot_user_study_point_layer.json +122 -0
  173. package/user_study_pilot/data/scatterplot_user_study (1).svg +321 -0
  174. package/user_study_pilot/data/scatterplot_user_study.svg +603 -0
  175. package/user_study_pilot/data/scatterplot_user_study_point_layer.json +122 -0
  176. package/user_study_pilot/data/scatterplot_user_study_smooth_layer.json +322 -0
  177. package/user_study_pilot/intro.html +215 -0
  178. package/user_study_pilot/jaws_settings/Chrome.JDF +10 -0
  179. package/user_study_pilot/jaws_settings/Firefox.JDF +10 -0
  180. package/user_study_pilot/jaws_settings/backup_utf8/Chrome.JDF +10 -0
  181. package/user_study_pilot/jaws_settings/backup_utf8/Firefox.JDF +10 -0
  182. package/user_study_pilot/jaws_settings/backup_utf8/msedge.JDF +10 -0
  183. package/user_study_pilot/jaws_settings/msedge.JDF +10 -0
  184. package/user_study_pilot/nvda_settings/chrome.dic +10 -0
  185. package/user_study_pilot/nvda_settings/default.dic +10 -0
  186. package/user_study_pilot/nvda_settings/firefox.dic +10 -0
  187. package/user_study_pilot/nvda_settings/msedge.dic +10 -0
  188. package/user_study_pilot/scatterplot.html +4560 -0
  189. package/user_study_pilot/seaborn_test.html +1059 -0
  190. package/user_study_pilot/svglite_test.html +534 -0
  191. package/user_study_pilot/task1_bar_plot.html +1111 -0
  192. package/user_study_pilot/task2_heatmap.html +1661 -0
  193. package/user_study_pilot/task3_boxplot_horizontal.html +1690 -0
  194. package/user_study_pilot/task3_boxplot_vertical.html +1689 -0
  195. package/user_study_pilot/task4_scatterplot.html +2091 -0
  196. package/user_study_pilot/tutorial1_bar_plot.html +1159 -0
  197. package/user_study_pilot/tutorial2_heatmap.html +1276 -0
  198. package/user_study_pilot/tutorial3_boxplot_horizontal.html +1861 -0
  199. package/user_study_pilot/tutorial3_boxplot_vertical.html +1807 -0
  200. package/user_study_pilot/tutorial4_scatterplot.html +5893 -0
  201. package/user_study_pilot/tutorial5_histogram.html +1553 -0
  202. package/user_study_pilot/tutorial6_lineplot.html +1011 -0
  203. package/user_study_pilot/tutorial7_stacked.html +763 -0
  204. package/user_study_pilot/tutorial8_stacked_normalized.html +796 -0
  205. package/user_study_pilot/tutorial9_dodged_bar.html +831 -0
  206. package/user_study_pilot/voiceover_settings/user_study_VoiceOver Archive.voprefs +573 -0
package/.Rbuildignore ADDED
@@ -0,0 +1 @@
1
+ ^LICENSE\.md$
package/.eslintignore ADDED
@@ -0,0 +1,3 @@
1
+ node_modules/
2
+ dist/
3
+ other/
package/.eslintrc.json ADDED
@@ -0,0 +1,6 @@
1
+ {
2
+ "extends": ["plugin:prettier/recommended"],
3
+ "parserOptions": {
4
+ "ecmaVersion": 13
5
+ }
6
+ }
@@ -0,0 +1,20 @@
1
+ name: Build
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+
8
+ jobs:
9
+ build:
10
+ runs-on: ubuntu-latest
11
+ steps:
12
+ - uses: actions/checkout@v2
13
+ - name: Use Node.js 16.x
14
+ uses: actions/setup-node@v2
15
+ with:
16
+ node-version: '16.x'
17
+ - name: Install dependencies
18
+ run: yarn install
19
+ - name: Build
20
+ run: yarn build
@@ -0,0 +1,3 @@
1
+ node_modules/
2
+ other/
3
+ dist/
@@ -0,0 +1,7 @@
1
+ {
2
+ "singleQuote": true,
3
+ "useTabs": false,
4
+ "tabWidth": 2,
5
+ "semi": true,
6
+ "endOfLine": "auto"
7
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "recommendations": [
3
+ "dbaeumer.vscode-eslint",
4
+ "github.vscode-github-actions",
5
+ "github.vscode-pull-request-github",
6
+ "visualstudioexptteam.vscodeintellicode",
7
+ "visualstudioexptteam.intellicode-api-usage-examples",
8
+ "ms-vscode.js-debug-nightly",
9
+ "ms-vsliveshare.vsliveshare",
10
+ "ionutvmi.path-autocomplete",
11
+ "esbenp.prettier-vscode",
12
+ "ban.spellright",
13
+ "redhat.vscode-xml",
14
+ "editorconfig.editorconfig",
15
+ "github.copilot",
16
+ "github.copilot-chat",
17
+ "usernamehw.errorlens",
18
+ "mhutchie.git-graph",
19
+ "eamodio.gitlens",
20
+ "ms-edgedevtools.vscode-edge-devtools",
21
+ "codium.codium",
22
+ "ms-vscode.vscode-speech"
23
+ ],
24
+ "unwantedRecommendations": ["ms-vscode.js-debug"]
25
+ }
@@ -0,0 +1,30 @@
1
+ {
2
+ "editor.stickyScroll.enabled": true,
3
+ "editor.stickyScroll.defaultModel": "foldingProviderModel",
4
+ "[javascript]": {
5
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
6
+ "editor.formatOnType": true,
7
+ "editor.formatOnSave": true
8
+ },
9
+ "[json]": {
10
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
11
+ "editor.formatOnType": true,
12
+ "editor.formatOnSave": true
13
+ },
14
+ "[jsonc]": {
15
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
16
+ "editor.formatOnType": true,
17
+ "editor.formatOnSave": true
18
+ },
19
+ "[html]": {
20
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
21
+ "editor.formatOnType": true,
22
+ "editor.formatOnSave": true
23
+ },
24
+ "[css]": {
25
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
26
+ "editor.formatOnType": true,
27
+ "editor.formatOnSave": true
28
+ },
29
+ "cmake.configureOnOpen": false
30
+ }
@@ -0,0 +1,57 @@
1
+ {
2
+ "version": "2.0.0",
3
+ "tasks": [
4
+ {
5
+ "label": "yarn lint",
6
+ "type": "shell",
7
+ "command": "yarn lint",
8
+ "group": {
9
+ "kind": "build",
10
+ "isDefault": false
11
+ },
12
+ "presentation": {
13
+ "reveal": "always"
14
+ },
15
+ "problemMatcher": []
16
+ },
17
+ {
18
+ "label": "yarn build",
19
+ "type": "shell",
20
+ "command": "yarn build",
21
+ "group": {
22
+ "kind": "build",
23
+ "isDefault": false
24
+ },
25
+ "presentation": {
26
+ "reveal": "always"
27
+ },
28
+ "problemMatcher": []
29
+ },
30
+ {
31
+ "label": "yarn test",
32
+ "type": "shell",
33
+ "command": "yarn test",
34
+ "group": {
35
+ "kind": "build",
36
+ "isDefault": false
37
+ },
38
+ "presentation": {
39
+ "reveal": "always"
40
+ },
41
+ "problemMatcher": []
42
+ },
43
+ {
44
+ "label": "yarn docs",
45
+ "type": "shell",
46
+ "command": "yarn docs",
47
+ "group": {
48
+ "kind": "build",
49
+ "isDefault": false
50
+ },
51
+ "presentation": {
52
+ "reveal": "always"
53
+ },
54
+ "problemMatcher": []
55
+ }
56
+ ]
57
+ }
package/CHANGELOG.md ADDED
@@ -0,0 +1,7 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ ## [Unreleased]
6
+
7
+ ## [1.0.0] - 2023-11-01
package/CITATION.cff ADDED
@@ -0,0 +1,21 @@
1
+ cff-version: 1.2.0
2
+ message: 'If you wish to cite the "maidr" package use:'
3
+ type: software
4
+ license: GPL-3.0
5
+ title: 'maidr: Multimodal Access and Interactive Data Representation'
6
+ version: 1.0.0
7
+ abstract: maidr: Multimodal Access and Interactive Data Representation. maidr is a system for non-visual access and control of statistical charts. It aims to provide an inclusive experience for users with visual impairments by offering multiple modes of interaction: braille, text, and sonification. This comprehensive approach enhances the accessibility of data visualization and encourages a multi-model exploration on visualization.
8
+ authors:
9
+ - family-names: Seo
10
+ given-names: JooYoung
11
+ email: jseo1005@illinois.edu
12
+ orcid: https://orcid.org/0000-0002-4064-6012
13
+ repository: https://github.com/uiuc-ischool-accessible-computing-lab/maidr
14
+ repository-code: https://github.com/uiuc-ischool-accessible-computing-lab/maidr
15
+ url: https://uiuc-ischool-accessible-computing-lab.github.io/maidr
16
+ contact:
17
+ - family-names: Seo
18
+ given-names: JooYoung
19
+ email: jseo1005@illinois.edu
20
+ orcid: https://orcid.org/0000-0002-4064-6012
21
+
@@ -0,0 +1,87 @@
1
+ # Contributing to maidr
2
+
3
+ Thank you for your interest in contributing to maidr project! We welcome contributions from everyone.
4
+
5
+ ## Pre-requisites
6
+
7
+ To contribute to this project, you need to have the following installed on your local machine:
8
+
9
+ 1. git .
10
+
11
+ 1. node.js (version 16 or higher is recommended)
12
+
13
+ 1. npm (version 9 or higher is recommended)
14
+
15
+ 1. yarn
16
+
17
+ 1. [Visual Studio Code (VS Code)](https://code.visualstudio.com/) (recommended)
18
+
19
+ ## Getting Started
20
+
21
+ To get started, please follow these steps:
22
+
23
+ 1. Fork the repository on GitHub.
24
+
25
+ 1. Clone your forked repository to your local machine.
26
+
27
+ 1. Open the project in VS Code.
28
+
29
+ 1. Install all the recommended extensions.
30
+
31
+ 1. install `npm` if you don't have it already.
32
+
33
+ 1. Install `yarn` if you don't have it already. You can install it by running the following command in your terminal:
34
+
35
+ ```shell
36
+ npm install -g yarn
37
+ ``````
38
+
39
+ 1. In the forked project root, install the dependencies by running the following command in your terminal:
40
+
41
+ ```shell
42
+ yarn install
43
+ ```
44
+
45
+ 1. Make changes.
46
+
47
+ 1. Run `yarn lint` to lint the code.
48
+
49
+ 1. Run `yarn build` to build the project.
50
+
51
+ 1. Run `yarn test` to run the tests.
52
+
53
+ 1. Run `yarn docs` to generate the documentation.
54
+
55
+ 1. Test the new features locally.
56
+
57
+ 1. Commit your changes and push them to your forked repository.
58
+
59
+ 1. Create a pull request to the main repository.
60
+
61
+ * Note: If you are using VS Code, you can run the above commands (e.g., `yarn lint`, `yarn build`, `yarn test`, `yarn docs`) by pressing `Ctrl + Shift + B` (or `Cmd + Shift + B` on macOS) and selecting the command you want to run.
62
+
63
+ ## Guidelines
64
+
65
+ Please follow these guidelines when contributing to the project:
66
+
67
+ - Use JavaScript (es6) for all code.
68
+ - Write clear and concise commit messages.
69
+ - Follow the code style and formatting guidelines.
70
+ - Write tests for new features and bug fixes.
71
+ - Update the documentation as needed in `CHANGELOG.md`.
72
+
73
+ ## Code Style and Formatting
74
+
75
+ We use ESLint to enforce a consistent code style and formatting. Please run `yarn lint` before committing your changes to ensure that your code meets the standards.
76
+
77
+ ## Tests
78
+
79
+ We use Jest for unit testing. Please run `yarn test` before committing your changes to ensure that your changes do not break any existing tests.
80
+
81
+ ## Documentation
82
+
83
+ We use jsdoc for documentation. Please update the relevant documentation in js files when making changes to the project.
84
+
85
+ ## Code of Conduct
86
+
87
+ Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.