@loveluthien/carta-frontend 6.0.0-dev

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 (148) hide show
  1. package/.github/ISSUE_TEMPLATE/bug_report.md +34 -0
  2. package/.github/pull_request_template.md +23 -0
  3. package/.github/workflows/continuous_integration.yml +139 -0
  4. package/.github/workflows/deploy.yml +30 -0
  5. package/.husky/pre-commit +16 -0
  6. package/.husky/pre-push +42 -0
  7. package/.prettierignore +1 -0
  8. package/.prettierrc.json +18 -0
  9. package/CHANGELOG.md +363 -0
  10. package/COPYING.md +636 -0
  11. package/README.md +112 -0
  12. package/babel.config.json +10 -0
  13. package/build/ast_wrapper.wasm +0 -0
  14. package/build/carta_computation.wasm +0 -0
  15. package/build/carta_icon_128px.png +0 -0
  16. package/build/carta_logo.png +0 -0
  17. package/build/gsl_wrapper.wasm +0 -0
  18. package/build/index.html +147 -0
  19. package/build/manifest.json +15 -0
  20. package/build/robots.txt +3 -0
  21. package/build/static/css/546.aa44a897.css +1 -0
  22. package/build/static/css/async/359.4d8f6ff7.css +1 -0
  23. package/build/static/css/async/403.ea9edfac.css +1 -0
  24. package/build/static/css/async/462.8bde08e0.css +1 -0
  25. package/build/static/css/index.c1f77b92.css +1 -0
  26. package/build/static/font/blueprint-icons-16.5fb1af27.woff2 +0 -0
  27. package/build/static/font/blueprint-icons-16.79f603d1.woff +0 -0
  28. package/build/static/font/blueprint-icons-16.83d51978.eot +0 -0
  29. package/build/static/font/blueprint-icons-16.af0c342f.ttf +0 -0
  30. package/build/static/font/blueprint-icons-20.83fddc09.ttf +0 -0
  31. package/build/static/font/blueprint-icons-20.9a51bc58.woff +0 -0
  32. package/build/static/font/blueprint-icons-20.d61315fe.eot +0 -0
  33. package/build/static/font/blueprint-icons-20.ebf16e9a.woff2 +0 -0
  34. package/build/static/image/allmaps.03f2ba92.png +0 -0
  35. package/build/static/image/gamma.6fca425b.png +0 -0
  36. package/build/static/image/linear.c7941b64.png +0 -0
  37. package/build/static/image/log.7fce6aee.png +0 -0
  38. package/build/static/image/power.5dac9727.png +0 -0
  39. package/build/static/image/sqrt.0ec2b3f1.png +0 -0
  40. package/build/static/image/squared.798b23aa.png +0 -0
  41. package/build/static/js/546.b5841ade.js +489 -0
  42. package/build/static/js/546.b5841ade.js.LICENSE.txt +925 -0
  43. package/build/static/js/async/359.97257512.js +1 -0
  44. package/build/static/js/async/403.b00f768c.js +1 -0
  45. package/build/static/js/async/462.92c07a07.js +1 -0
  46. package/build/static/js/async/905.70044ee8.js +1 -0
  47. package/build/static/js/async/907.dc17f1d2.js +1 -0
  48. package/build/static/js/async/blueprint-icons-16px-paths.e17db832.js +1 -0
  49. package/build/static/js/async/blueprint-icons-20px-paths.6ad43f5f.js +1 -0
  50. package/build/static/js/async/blueprint-icons-all-paths-loader.61cc0f7b.js +1 -0
  51. package/build/static/js/async/blueprint-icons-all-paths.0c699441.js +1 -0
  52. package/build/static/js/async/blueprint-icons-split-paths-by-size-loader.5cff79f5.js +1 -0
  53. package/build/static/js/index.8fc34b4d.js +1344 -0
  54. package/build/static/js/index.9a30d560.worker.js +1 -0
  55. package/build/static/js/zfp_wrapper.wasm +0 -0
  56. package/build/static/svg/blueprint-icons-16.130888ef.svg +2097 -0
  57. package/build/static/svg/blueprint-icons-20.c8456d56.svg +2097 -0
  58. package/build/zfp_wrapper.wasm +0 -0
  59. package/declarations.d.ts +18 -0
  60. package/docs_website/.prettierignore +1 -0
  61. package/docs_website/api/api.md +13 -0
  62. package/docs_website/babel.config.js +3 -0
  63. package/docs_website/docs/assets/enable-code-snippets.png +0 -0
  64. package/docs_website/docs/code-snippet-tutorial/_category_.json +8 -0
  65. package/docs_website/docs/code-snippet-tutorial/basics.md +97 -0
  66. package/docs_website/docs/code-snippet-tutorial/image-blending.mdx +57 -0
  67. package/docs_website/docs/code-snippet-tutorial/image-fitting.mdx +44 -0
  68. package/docs_website/docs/code-snippet-tutorial/image-properties.mdx +84 -0
  69. package/docs_website/docs/code-snippet-tutorial/moment-images.mdx +31 -0
  70. package/docs_website/docs/code-snippet-tutorial/pv-images.mdx +28 -0
  71. package/docs_website/docs/code-snippet-tutorial/quick-start.mdx +82 -0
  72. package/docs_website/docs/code-snippet-tutorial/regions.mdx +49 -0
  73. package/docs_website/docs/contributing/_category_.json +7 -0
  74. package/docs_website/docs/contributing/developer-tips.md +61 -0
  75. package/docs_website/docs/contributing/documentation-guidelines.md +87 -0
  76. package/docs_website/docs/contributing/github-workflow.md +146 -0
  77. package/docs_website/docs/contributing/release-guidelines.md +73 -0
  78. package/docs_website/docs/contributing/unit-test-guidelines.md +79 -0
  79. package/docs_website/docs/documents.mdx +15 -0
  80. package/docs_website/docusaurus.config.js +167 -0
  81. package/docs_website/package-lock.json +16769 -0
  82. package/docs_website/package.json +121 -0
  83. package/docs_website/patches/@docusaurus+core+3.9.2.patch +20 -0
  84. package/docs_website/sidebars.js +33 -0
  85. package/docs_website/static/.nojekyll +0 -0
  86. package/docs_website/static/img/carta_icon_128px.png +0 -0
  87. package/docs_website/versioned_docs/version-4.1.0/api-packages.json +1 -0
  88. package/docs_website/versioned_docs/version-4.1.0/api-typedoc.json +214112 -0
  89. package/docs_website/versioned_docs/version-4.1.0/assets/enable-code-snippets.png +0 -0
  90. package/docs_website/versioned_docs/version-4.1.0/code-snippet-tutorial/_category_.json +8 -0
  91. package/docs_website/versioned_docs/version-4.1.0/code-snippet-tutorial/basics.md +97 -0
  92. package/docs_website/versioned_docs/version-4.1.0/code-snippet-tutorial/image-fitting.mdx +42 -0
  93. package/docs_website/versioned_docs/version-4.1.0/code-snippet-tutorial/image-properties.mdx +86 -0
  94. package/docs_website/versioned_docs/version-4.1.0/code-snippet-tutorial/moment-images.mdx +31 -0
  95. package/docs_website/versioned_docs/version-4.1.0/code-snippet-tutorial/pv-images.mdx +28 -0
  96. package/docs_website/versioned_docs/version-4.1.0/code-snippet-tutorial/quick-start.mdx +82 -0
  97. package/docs_website/versioned_docs/version-4.1.0/code-snippet-tutorial/regions.mdx +49 -0
  98. package/docs_website/versioned_docs/version-4.1.0/contributing/_category_.json +7 -0
  99. package/docs_website/versioned_docs/version-4.1.0/contributing/developer-tips.md +36 -0
  100. package/docs_website/versioned_docs/version-4.1.0/contributing/documentation-guidelines.md +87 -0
  101. package/docs_website/versioned_docs/version-4.1.0/contributing/github-workflow.md +141 -0
  102. package/docs_website/versioned_docs/version-4.1.0/contributing/release-guidelines.md +73 -0
  103. package/docs_website/versioned_docs/version-4.1.0/contributing/unit-test-guidelines.md +79 -0
  104. package/docs_website/versioned_docs/version-4.1.0/documents.mdx +15 -0
  105. package/docs_website/versioned_docs/version-5.0.0/api-packages.json +1 -0
  106. package/docs_website/versioned_docs/version-5.0.0/api-typedoc.json +315266 -0
  107. package/docs_website/versioned_docs/version-5.0.0/assets/enable-code-snippets.png +0 -0
  108. package/docs_website/versioned_docs/version-5.0.0/code-snippet-tutorial/_category_.json +8 -0
  109. package/docs_website/versioned_docs/version-5.0.0/code-snippet-tutorial/basics.md +97 -0
  110. package/docs_website/versioned_docs/version-5.0.0/code-snippet-tutorial/image-blending.mdx +57 -0
  111. package/docs_website/versioned_docs/version-5.0.0/code-snippet-tutorial/image-fitting.mdx +44 -0
  112. package/docs_website/versioned_docs/version-5.0.0/code-snippet-tutorial/image-properties.mdx +86 -0
  113. package/docs_website/versioned_docs/version-5.0.0/code-snippet-tutorial/moment-images.mdx +31 -0
  114. package/docs_website/versioned_docs/version-5.0.0/code-snippet-tutorial/pv-images.mdx +28 -0
  115. package/docs_website/versioned_docs/version-5.0.0/code-snippet-tutorial/quick-start.mdx +82 -0
  116. package/docs_website/versioned_docs/version-5.0.0/code-snippet-tutorial/regions.mdx +49 -0
  117. package/docs_website/versioned_docs/version-5.0.0/contributing/_category_.json +7 -0
  118. package/docs_website/versioned_docs/version-5.0.0/contributing/developer-tips.md +36 -0
  119. package/docs_website/versioned_docs/version-5.0.0/contributing/documentation-guidelines.md +87 -0
  120. package/docs_website/versioned_docs/version-5.0.0/contributing/github-workflow.md +141 -0
  121. package/docs_website/versioned_docs/version-5.0.0/contributing/release-guidelines.md +73 -0
  122. package/docs_website/versioned_docs/version-5.0.0/contributing/unit-test-guidelines.md +79 -0
  123. package/docs_website/versioned_docs/version-5.0.0/documents.mdx +15 -0
  124. package/docs_website/versioned_sidebars/version-4.1.0-sidebars.json +8 -0
  125. package/docs_website/versioned_sidebars/version-5.0.0-sidebars.json +8 -0
  126. package/docs_website/versions.json +4 -0
  127. package/eslint.config.mjs +86 -0
  128. package/jest.config.js +101 -0
  129. package/package.json +186 -0
  130. package/patches/golden-layout+1.5.9.patch +24 -0
  131. package/patches/react-split-pane+0.1.92.patch +20 -0
  132. package/rsbuild.config.ts +75 -0
  133. package/schemas/.github/workflows/AddToCartaVisProject.yml +23 -0
  134. package/schemas/.prettierrc.json +18 -0
  135. package/schemas/CMakeLists.txt +15 -0
  136. package/schemas/README.md +1 -0
  137. package/schemas/_config.yml +7 -0
  138. package/schemas/controller_config_schema_1.json +343 -0
  139. package/schemas/controller_config_schema_2.json +685 -0
  140. package/schemas/layout_schema_2.json +440 -0
  141. package/schemas/preference_backend_schema_1.json +81 -0
  142. package/schemas/preference_backend_schema_2.json +118 -0
  143. package/schemas/preference_schema_1.json +410 -0
  144. package/schemas/preferences_schema_2.json +421 -0
  145. package/schemas/schemacompiler.c +200 -0
  146. package/schemas/snippet_schema_1.json +45 -0
  147. package/schemas/workspace_schema_1.json +573 -0
  148. package/scripts/make_colormaps.py +161 -0
package/package.json ADDED
@@ -0,0 +1,186 @@
1
+ {
2
+ "name": "@loveluthien/carta-frontend",
3
+ "version": "6.0.0-dev",
4
+ "repository": "https://github.com/CARTAvis/carta-frontend",
5
+ "description": "The browser-based frontend component of CARTA, a radio-astronomy visualization tool designed for the ALMA, the VLA and the SKA pathfinders.",
6
+ "homepage": "./",
7
+ "devDependencies": {
8
+ "@babel/plugin-proposal-decorators": "^7.28.0",
9
+ "@babel/preset-env": "^7.28.3",
10
+ "@babel/preset-react": "^7.27.1",
11
+ "@babel/preset-typescript": "^7.27.1",
12
+ "@blueprintjs/eslint-plugin": "^6.1.16",
13
+ "@blueprintjs/core": "^6.0.0",
14
+ "@blueprintjs/icons": "^6.0.0",
15
+ "@blueprintjs/select": "^6.0.0",
16
+ "@blueprintjs/table": "^6.0.0",
17
+ "@jest/types": "^30.0.5",
18
+ "@rsbuild/core": "^1.7.3",
19
+ "@rsbuild/plugin-eslint": "^1.2.1",
20
+ "@rsbuild/plugin-node-polyfill": "^1.4.4",
21
+ "@rsbuild/plugin-react": "^1.4.5",
22
+ "@rsbuild/plugin-sass": "^1.5.0",
23
+ "@testing-library/jest-dom": "^6.4.8",
24
+ "@testing-library/react": "^16.0.1",
25
+ "@testing-library/user-event": "^14.5.2",
26
+ "@types/jest": "^30.0.0",
27
+ "@types/jquery": "^3.5.30",
28
+ "@types/lodash": "^4.17.7",
29
+ "@types/node": "^25.0.0",
30
+ "@types/plotly.js": "^3.0.0",
31
+ "@types/prismjs": "^1.26.4",
32
+ "@types/react": "^18.3.12",
33
+ "@types/react-dom": "^18.3.1",
34
+ "@types/react-plotly.js": "^2.6.3",
35
+ "@types/react-virtualized-auto-sizer": "^1.0.4",
36
+ "@types/tinycolor2": "^1.4.6",
37
+ "@typescript-eslint/eslint-plugin": "^8.43.0",
38
+ "@typescript-eslint/parser": "^8.43.0",
39
+ "ajv": "^8.17.1",
40
+ "assert": "^2.1.0",
41
+ "axios": "^1.7.2",
42
+ "babel-jest": "^30.1.2",
43
+ "buffer": "^6.0.3",
44
+ "chart.js": "^4.4.3",
45
+ "classnames": "^2.5.1",
46
+ "constants-browserify": "^1.0.0",
47
+ "crypto-browserify": "^3.12.0",
48
+ "eslint": "^9.0.0",
49
+ "eslint-plugin-import": "^2.26.0",
50
+ "eslint-plugin-simple-import-sort": "^12.1.1",
51
+ "eslint-plugin-tsdoc": "^0.5.0",
52
+ "fuzzy-search": "^3.2.1",
53
+ "glob-to-regexp": "^0.4.1",
54
+ "golden-layout": "^1.5.9",
55
+ "html2canvas": "^1.4.1",
56
+ "husky": "^9.1.7",
57
+ "idb": "^8.0.0",
58
+ "identity-obj-proxy": "^3.0.0",
59
+ "jest": "^30.1.3",
60
+ "jest-canvas-mock": "^2.5.2",
61
+ "jest-environment-jsdom": "^30.1.2",
62
+ "jest-transform-stub": "^2.0.0",
63
+ "jwt-decode": "^4.0.0",
64
+ "konva": "^9.3.16",
65
+ "lint-staged": "^16.2.7",
66
+ "lodash": "^4.17.15",
67
+ "mnemonist": "^0.39.8",
68
+ "mobx": "^6.13.1",
69
+ "mobx-react": "^9.1.1",
70
+ "moment": "^2.30.1",
71
+ "npm-run-all": "^4.1.3",
72
+ "os-browserify": "^0.3.0",
73
+ "path-browserify": "^1.0.1",
74
+ "plotly.js": "^3.0.0",
75
+ "prettier": "^3.8.1",
76
+ "preval.macro": "^5.0.0",
77
+ "prismjs": "^1.29.0",
78
+ "protobufjs": "^7.5.4",
79
+ "protobufjs-cli": "^1.1.2",
80
+ "raw-loader": "^4.0.2",
81
+ "react": "^18.3.1",
82
+ "react-chartjs-2": "^5.2.0",
83
+ "react-color": "^2.17.3",
84
+ "react-dom": "^18.3.1",
85
+ "react-iframe": "^1.8.5",
86
+ "react-konva": "^18.2.10",
87
+ "react-plotly.js": "^2.6.0",
88
+ "react-refresh": "^0.17.0",
89
+ "react-rnd": "^10.4.11",
90
+ "react-scroll-to-bottom": "^4.2.0",
91
+ "react-simple-code-editor": "^0.14.1",
92
+ "react-split-pane": "^0.1.91",
93
+ "react-virtualized-auto-sizer": "^1.0.24",
94
+ "react-window": "^2.0.0",
95
+ "rsbuild-plugin-glsl": "^1.0.1",
96
+ "rxjs": "^7.8.1",
97
+ "semver": "^7.6.3",
98
+ "source-map-explorer": "^2.5.3",
99
+ "stats-js": "^1.0.1",
100
+ "stream-browserify": "^3.0.0",
101
+ "tinycolor2": "^1.6.0",
102
+ "ts-jest": "^29.4.1",
103
+ "typescript": "^5.9.0",
104
+ "util": "^0.12.5",
105
+ "uuid": "^13.0.0",
106
+ "worker-loader": "^3.0.8",
107
+ "worker-rspack-loader": "^3.1.2"
108
+ },
109
+ "scripts": {
110
+ "git-info": "./git-info.sh",
111
+ "analyze": "source-map-explorer build/static/js/main.*",
112
+ "postinstall": "patch-package",
113
+ "prepare": "husky",
114
+ "start": "npm run git-info; rsbuild dev --config-loader jiti",
115
+ "build": "npm run git-info; npm-run-all build-wrappers build-protobuf link-schemas build-ts",
116
+ "build-docker": "npm run git-info; npm-run-all build-wrappers-docker build-protobuf link-schemas build-ts",
117
+ "build-singularity": "npm run git-info; npm-run-all build-wrappers-singularity build-protobuf link-schemas build-ts",
118
+ "build-ts": "rsbuild build --config-loader jiti",
119
+ "preview": "rsbuild preview --config-loader jiti",
120
+ "build-libs": "./wasm_libs/build_libs.sh",
121
+ "build-libs-docker": "./build_wasm_libs_docker.sh",
122
+ "build-libs-singularity": "./build_wasm_libs_singularity.sh",
123
+ "build-wrappers": "./wasm_src/build_wrappers.sh",
124
+ "build-wrappers-docker": "./build_wasm_wrappers_docker.sh",
125
+ "build-wrappers-singularity": "./build_wasm_wrappers_singularity.sh",
126
+ "build-protobuf": "./protobuf/build_proto.sh",
127
+ "link-schemas": "./schemas/link_schemas.sh",
128
+ "test": "jest",
129
+ "test:watch": "jest --watch",
130
+ "test:coverage": "jest --coverage",
131
+ "reformat": "npx prettier --write ./src",
132
+ "checkformat": "npx prettier --check ./src",
133
+ "prepack": "npm run build-libs-docker; npm run build-docker",
134
+ "fix-eslint": "eslint --fix ./src",
135
+ "check-eslint": "eslint ./src"
136
+ },
137
+ "lint-staged": {
138
+ "src/**/*.{js,jsx,ts,tsx}": [
139
+ "prettier --write --ignore-unknown",
140
+ "eslint --fix"
141
+ ],
142
+ "src/**/*.{scss,css,json,md,mdx,yml,yaml}": [
143
+ "prettier --write --ignore-unknown"
144
+ ],
145
+ "docs_website/**/*.{js,jsx,ts,tsx,md,mdx,json,css,scss,yml,yaml}": [
146
+ "docs_website/node_modules/.bin/prettier --write --ignore-unknown"
147
+ ]
148
+ },
149
+ "browserslist": {
150
+ "production": [
151
+ "last 2 chrome versions",
152
+ "last 2 firefox versions",
153
+ "last 2 safari versions"
154
+ ],
155
+ "development": [
156
+ "last 1 chrome version",
157
+ "last 1 firefox version",
158
+ "last 1 safari version"
159
+ ]
160
+ },
161
+ "dependencies": {
162
+ "patch-package": "^8.0.0",
163
+ "usehooks-ts": "^3.1.0"
164
+ },
165
+ "overrides": {
166
+ "react": "^18.3.1",
167
+ "react-dom": "^18.3.1",
168
+ "typescript": "^5.9.0",
169
+ "fork-ts-checker-webpack-plugin": "^6.5.3",
170
+ "@types/trusted-types": "^2.0.7"
171
+ },
172
+ "optionalDependencies": {
173
+ "@rspack/binding-darwin-arm64": "^1.5.5",
174
+ "@rspack/binding-darwin-x64": "^1.5.5",
175
+ "@rspack/binding-linux-arm64-gnu": "^1.5.5",
176
+ "@rspack/binding-linux-arm64-musl": "^1.5.5",
177
+ "@rspack/binding-linux-x64-gnu": "^1.5.5",
178
+ "@rspack/binding-linux-x64-musl": "^1.5.5",
179
+ "sass-embedded-darwin-arm64": "1.97.3",
180
+ "sass-embedded-darwin-x64": "1.97.3",
181
+ "sass-embedded-linux-arm64": "1.97.3",
182
+ "sass-embedded-linux-musl-arm64": "1.97.3",
183
+ "sass-embedded-linux-musl-x64": "1.97.3",
184
+ "sass-embedded-linux-x64": "1.97.3"
185
+ }
186
+ }
@@ -0,0 +1,24 @@
1
+ diff --git a/node_modules/golden-layout/dist/goldenlayout.js b/node_modules/golden-layout/dist/goldenlayout.js
2
+ index 736f9ec..9c59284 100644
3
+ --- a/node_modules/golden-layout/dist/goldenlayout.js
4
+ +++ b/node_modules/golden-layout/dist/goldenlayout.js
5
+ @@ -5265,7 +5265,9 @@ lm.utils.copy( lm.utils.ReactComponentHandler.prototype, {
6
+ * @returns {void}
7
+ */
8
+ _render: function() {
9
+ - this._reactComponent = ReactDOM.render( this._getReactComponent(), this._container.getElement()[ 0 ] );
10
+ + this._reactRoot = createRoot( this._container.getElement()[ 0 ] );
11
+ + this._reactRoot.render( this._getReactComponent() );
12
+ + this._reactComponent = this._getReactComponent();
13
+ this._originalComponentWillUpdate = this._reactComponent.componentWillUpdate || function() {
14
+ };
15
+ this._reactComponent.componentWillUpdate = this._onUpdate.bind( this );
16
+ @@ -5281,7 +5283,7 @@ lm.utils.copy( lm.utils.ReactComponentHandler.prototype, {
17
+ * @returns {void}
18
+ */
19
+ _destroy: function() {
20
+ - ReactDOM.unmountComponentAtNode( this._container.getElement()[ 0 ] );
21
+ + this._reactRoot.unmount();
22
+ this._container.off( 'open', this._render, this );
23
+ this._container.off( 'destroy', this._destroy, this );
24
+ },
@@ -0,0 +1,20 @@
1
+ diff --git a/node_modules/react-split-pane/index.d.ts b/node_modules/react-split-pane/index.d.ts
2
+ index d116f54..54452b7 100644
3
+ --- a/node_modules/react-split-pane/index.d.ts
4
+ +++ b/node_modules/react-split-pane/index.d.ts
5
+ @@ -5,6 +5,7 @@ export type Size = string | number;
6
+ export type Split = 'vertical' | 'horizontal';
7
+
8
+ export type SplitPaneProps = {
9
+ + children: React.ReactNode[];
10
+ allowResize?: boolean;
11
+ className?: string;
12
+ primary?: 'first' | 'second';
13
+ @@ -59,6 +60,7 @@ declare class SplitPane extends React.Component<
14
+ export default SplitPane;
15
+
16
+ export type PaneProps = {
17
+ + children: React.ReactNode;
18
+ className?: string;
19
+ size?: Size;
20
+ split?: Split;
@@ -0,0 +1,75 @@
1
+ import {defineConfig} from "@rsbuild/core";
2
+ import {pluginEslint} from "@rsbuild/plugin-eslint";
3
+ import {pluginNodePolyfill} from "@rsbuild/plugin-node-polyfill";
4
+ import {pluginReact} from "@rsbuild/plugin-react";
5
+ import {pluginSass} from "@rsbuild/plugin-sass";
6
+ import {pluginGlsl} from "rsbuild-plugin-glsl";
7
+
8
+ export default defineConfig({
9
+ plugins: [
10
+ pluginEslint({
11
+ enable: true,
12
+ eslintPluginOptions: {
13
+ cache: false,
14
+ configType: "flat",
15
+ },
16
+ }),
17
+ pluginReact(),
18
+ pluginSass(),
19
+ pluginNodePolyfill(),
20
+ pluginGlsl()
21
+ ],
22
+ source: {
23
+ decorators: {
24
+ version: "legacy",
25
+ },
26
+ preEntry: "./src/setupGoldenLayout.ts",
27
+ define: {
28
+ 'process.env.BUILD_DATE': JSON.stringify(new Date().toISOString()),
29
+ },
30
+ },
31
+ dev: {
32
+ lazyCompilation: false,
33
+ },
34
+ output: {
35
+ distPath: {
36
+ root: "build"
37
+ },
38
+ assetPrefix: "./"
39
+ },
40
+ server: {
41
+ open: true,
42
+ port: 3000,
43
+ host: "localhost"
44
+ },
45
+ performance: {
46
+ chunkSplit: {
47
+ strategy: "split-by-size"
48
+ }
49
+ },
50
+ html: {
51
+ template: "./public/index.html",
52
+ title: "CARTA",
53
+ },
54
+ tools: {
55
+ rspack: {
56
+ node: {
57
+ __filename: false,
58
+ __dirname: false,
59
+ },
60
+ resolveLoader: {
61
+ alias: {
62
+ "worker-loader": "worker-rspack-loader",
63
+ },
64
+ },
65
+ module: {
66
+ rules: [
67
+ {
68
+ test: /\.worker\.js$/,
69
+ loader: "worker-rspack-loader",
70
+ },
71
+ ],
72
+ },
73
+ },
74
+ },
75
+ });
@@ -0,0 +1,23 @@
1
+ name: Add new issues and pull requests to CartaVis Board project
2
+
3
+ on:
4
+ issues:
5
+ types:
6
+ - opened
7
+ - reopened
8
+ pull_request:
9
+ types:
10
+ - opened
11
+ - reopened
12
+
13
+ jobs:
14
+ add-to-project:
15
+ name: Add issue to project
16
+ runs-on: ubuntu-latest
17
+ steps:
18
+ - uses: actions/add-to-project@v0.6.1
19
+ with:
20
+ # You can target a project in a different organization
21
+ # to the issue
22
+ project-url: https://github.com/orgs/CARTAvis/projects/11
23
+ github-token: ${{ secrets.ADD_TO_CARTA_BOARD_PROJECT_PAT }}
@@ -0,0 +1,18 @@
1
+ {
2
+ "arrowParens": "avoid",
3
+ "bracketSpacing": false,
4
+ "embeddedLanguageFormatting": "auto",
5
+ "htmlWhitespaceSensitivity": "css",
6
+ "insertPragma": false,
7
+ "bracketSameLine": false,
8
+ "jsxSingleQuote": false,
9
+ "proseWrap": "preserve",
10
+ "quoteProps": "as-needed",
11
+ "requirePragma": false,
12
+ "semi": true,
13
+ "singleQuote": false,
14
+ "trailingComma": "none",
15
+ "useTabs": false,
16
+ "printWidth": 240,
17
+ "tabWidth": 4
18
+ }
@@ -0,0 +1,15 @@
1
+ ADD_EXECUTABLE(schemacompiler schemacompiler.c)
2
+ FILE(GLOB SCHEMA_FILES CONFIGURE_DEPENDS "*_schema_*.json")
3
+
4
+ FOREACH(INPUT_FILE ${SCHEMA_FILES})
5
+ CMAKE_PATH(GET INPUT_FILE FILENAME OUTPUT_FILE)
6
+ STRING(APPEND OUTPUT_FILE ".h")
7
+ ADD_CUSTOM_COMMAND(
8
+ OUTPUT ${OUTPUT_FILE}
9
+ DEPENDS schemacompiler ${INPUT_FILE}
10
+ COMMAND schemacompiler ${INPUT_FILE} ${OUTPUT_FILE}
11
+ )
12
+ LIST(APPEND SCHEMA_HEADERS ${OUTPUT_FILE})
13
+ ENDFOREACH()
14
+
15
+ ADD_LIBRARY(carta-schemas INTERFACE ${SCHEMA_HEADERS})
@@ -0,0 +1 @@
1
+ This is a directory of JSON schemas used by CARTA components, published automatically from a [source repository](https://github.com/CARTAvis/schemas).
@@ -0,0 +1,7 @@
1
+ exclude:
2
+ - CMakeLists.txt
3
+ - link_schemas.sh
4
+ - .prettierrc.json
5
+ - schemacompiler.c
6
+ - test
7
+ - .gitignore