Skip to content
Snippets Groups Projects
Commit a0cf8369 authored by Bucknell, Mary S.'s avatar Bucknell, Mary S.
Browse files

Moved the graph-controls Vue

to replace the graph-controls javascript
parent 012d6015
No related branches found
No related tags found
1 merge request!316WDFN_739 - Investigate how to bring in the Vue component to use for components
{
"presets": [
[
"@babel/preset-env"
]
]
}
module.exports = {
"presets": [
"@babel/preset-env"
]
};
module.exports = { module.exports = {
verbose: true, verbose: true,
transform: { transform: {
'^.+\\.js$': 'buble-jest', '^.+\\.js$': 'babel-jest',
'^.+\\.(vue)$': '@vue/vue3-jest' '^.+\\.(vue)$': '@vue/vue3-jest'
}, },
collectCoverageFrom: [ collectCoverageFrom: [
...@@ -28,7 +28,8 @@ module.exports = { ...@@ -28,7 +28,8 @@ module.exports = {
'^network/(.*)$': '<rootDir>src/scripts/network/$1' '^network/(.*)$': '<rootDir>src/scripts/network/$1'
}, },
transformIgnorePatterns: [ transformIgnorePatterns: [
'node_modules/(?!(d3-format|d3-array|d3-scale|d3-shape|d3-time|d3-time-format|d3-path|d3-selection|d3-brush|d3-axis|d3-transition|bisect|internmap)/)' 'node_modules/(?!(d3|d3-format|d3-array|d3-scale|d3-shape|d3-time|d3-time-format|d3-path|d3-selection|d3-brush|d3-axis|d3-transition|internmap)/)'
], ],
testEnvironment: 'jsdom' testEnvironment: 'jsdom',
setupFilesAfterEnv: [require.resolve('regenerator-runtime/runtime')]
}; };
This diff is collapsed.
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
"build:css:network": "sass --load-path node_modules/leaflet/dist --load-path node_modules/leaflet-gesture-handling/dist --load-path node_modules/wdfn-viz/dist/sass --load-path node_modules/@uswds/uswds/src/stylesheets --load-path node_modules/@uswds/uswds/packages src/styles/network.scss dist/network.css && postcss dist/network.css --map -o dist/network.css", "build:css:network": "sass --load-path node_modules/leaflet/dist --load-path node_modules/leaflet-gesture-handling/dist --load-path node_modules/wdfn-viz/dist/sass --load-path node_modules/@uswds/uswds/src/stylesheets --load-path node_modules/@uswds/uswds/packages src/styles/network.scss dist/network.css && postcss dist/network.css --map -o dist/network.css",
"build:fonts": "mkdir -p dist/fonts && cp -r node_modules/wdfn-viz/dist/fonts/* dist/fonts", "build:fonts": "mkdir -p dist/fonts && cp -r node_modules/wdfn-viz/dist/fonts/* dist/fonts",
"build:images": "mkdir -p dist/img && mkdir -p dist/images && cp -r node_modules/wdfn-viz/dist/img/* dist/img && cp -r node_modules/leaflet/dist/images/* dist/images && cp -r src/img/* dist/img", "build:images": "mkdir -p dist/img && mkdir -p dist/images && cp -r node_modules/wdfn-viz/dist/img/* dist/img && cp -r node_modules/leaflet/dist/images/* dist/images && cp -r src/img/* dist/img",
"build:js": "rollup -c --environment NODE_ENV:production && mkdir -p dist/scripts", "build:js": "vite build --mode production",
"build:wdfnviz": "mkdir -p dist/scripts && cp node_modules/wdfn-viz/dist/wdfnviz.js dist/scripts && cp node_modules/wdfn-viz/dist/wdfnviz.css dist", "build:wdfnviz": "mkdir -p dist/scripts && cp node_modules/wdfn-viz/dist/wdfnviz.js dist/scripts && cp node_modules/wdfn-viz/dist/wdfnviz.css dist",
"build:uswdsjs": "mkdir -p dist/scripts && cp node_modules/@uswds/uswds/dist/js/uswds.min.js dist/scripts && cp node_modules/@uswds/uswds/dist/js/uswds-init.min.* dist/scripts", "build:uswdsjs": "mkdir -p dist/scripts && cp node_modules/@uswds/uswds/dist/js/uswds.min.js dist/scripts && cp node_modules/@uswds/uswds/dist/js/uswds-init.min.* dist/scripts",
"build:autotrack": "terser --output dist/autotrack.js node_modules/autotrack/autotrack.js", "build:autotrack": "terser --output dist/autotrack.js node_modules/autotrack/autotrack.js",
...@@ -29,8 +29,8 @@ ...@@ -29,8 +29,8 @@
"watch:css": "nodemon -w src/styles -e scss -x \"npm run build:css\"", "watch:css": "nodemon -w src/styles -e scss -x \"npm run build:css\"",
"watch:fonts": "nodemon -w node_modules/uswds/src/fonts -x \"npm run build:fonts\"", "watch:fonts": "nodemon -w node_modules/uswds/src/fonts -x \"npm run build:fonts\"",
"watch:images": "nodemon -w src/img -x \"npm run build:images\"", "watch:images": "nodemon -w src/img -x \"npm run build:images\"",
"watch:js": "mkdir -p dist/scripts && npm run build:wdfnviz && npm run build:uswdsjs && rollup -c --watch", "watch:uswds": "npm run build:wdfnviz && npm run build:uswdsjs",
"buildvite": "vite build --mode development" "watch:js": "mkdir -p dist/scripts && vite build --watch --mode development"
}, },
"engines": { "engines": {
"node": "16.15.0" "node": "16.15.0"
...@@ -48,16 +48,11 @@ ...@@ -48,16 +48,11 @@
"devDependencies": { "devDependencies": {
"@babel/preset-env": "7.18.2", "@babel/preset-env": "7.18.2",
"@rollup/plugin-alias": "3.1.9", "@rollup/plugin-alias": "3.1.9",
"@rollup/plugin-buble": "0.21.3",
"@rollup/plugin-commonjs": "22.0.0",
"@rollup/plugin-json": "4.1.0",
"@rollup/plugin-node-resolve": "13.3.0",
"@rollup/plugin-replace": "4.0.0", "@rollup/plugin-replace": "4.0.0",
"@vitejs/plugin-vue": "2.3.3", "@vitejs/plugin-vue": "2.3.3",
"@vue/test-utils": "2.0.0", "@vue/test-utils": "2.0.0",
"@vue/vue3-jest": "27.0.0", "@vue/vue3-jest": "27.0.0",
"autoprefixer": "10.4.7", "autoprefixer": "10.4.7",
"buble": "0.20.0",
"buble-jest": "1.0.1", "buble-jest": "1.0.1",
"concat": "1.0.3", "concat": "1.0.3",
"eslint": "8.16.0", "eslint": "8.16.0",
...@@ -74,8 +69,8 @@ ...@@ -74,8 +69,8 @@
"postcss-cli": "9.1.0", "postcss-cli": "9.1.0",
"postcss-csso": "6.0.0", "postcss-csso": "6.0.0",
"postcss-flexbugs-fixes": "5.0.2", "postcss-flexbugs-fixes": "5.0.2",
"regenerator-runtime": "0.13.9",
"rollup": "2.74.1", "rollup": "2.74.1",
"rollup-plugin-terser": "7.0.2",
"sass": "1.52.1", "sass": "1.52.1",
"sinon": "14.0.0", "sinon": "14.0.0",
"stylelint": "14.8.5", "stylelint": "14.8.5",
......
<template> <template>
<div>My Test GraphControls</div> <div class="graph-controls-container">
<GraphControls/> <GraphControls/>
</div>
</template> </template>
<script> <script>
......
...@@ -3,7 +3,7 @@ import mockConsole from 'jest-mock-console'; ...@@ -3,7 +3,7 @@ import mockConsole from 'jest-mock-console';
import {bindActionCreators} from 'redux'; import {bindActionCreators} from 'redux';
import ReduxConnectVue from 'redux-connect-vue'; import ReduxConnectVue from 'redux-connect-vue';
import {createStructuredSelector} from 'reselect'; import {createStructuredSelector} from 'reselect';
import {mount, flushPromises} from '@vue/test-utils'; import {mount} from '@vue/test-utils';
import * as utils from 'ui/utils'; import * as utils from 'ui/utils';
...@@ -14,7 +14,6 @@ import {TEST_CURRENT_TIME_RANGE} from '../mock-hydrograph-state'; ...@@ -14,7 +14,6 @@ import {TEST_CURRENT_TIME_RANGE} from '../mock-hydrograph-state';
import * as dataIndicator from '../data-indicator'; import * as dataIndicator from '../data-indicator';
import GraphControls from './graph-controls.vue'; import GraphControls from './graph-controls.vue';
import {show} from "list.js";
describe('monitoring-location/components/hydrograph/components/graph-controls', () => { describe('monitoring-location/components/hydrograph/components/graph-controls', () => {
utils.mediaQuery = jest.fn().mockReturnValue(true); utils.mediaQuery = jest.fn().mockReturnValue(true);
......
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
class="usa-checkbox__label" class="usa-checkbox__label"
for="vue-compare-timeseries" for="vue-compare-timeseries"
> >
Vue compare Compare to last year
</label> </label>
</div> </div>
<div class="usa-checkbox"> <div class="usa-checkbox">
...@@ -30,7 +30,7 @@ ...@@ -30,7 +30,7 @@
class="usa-checkbox__label" class="usa-checkbox__label"
for="vue-median-timeseries" for="vue-median-timeseries"
> >
Vue median Display median
</label> </label>
</div> </div>
</template> </template>
...@@ -105,7 +105,3 @@ export default { ...@@ -105,7 +105,3 @@ export default {
} }
} }
</script> </script>
<style scoped>
</style>
\ No newline at end of file
...@@ -118,15 +118,6 @@ export const attachToNode = function(store, ...@@ -118,15 +118,6 @@ export const attachToNode = function(store,
if (!showOnlyGraph) { if (!showOnlyGraph) {
nodeElem.select('.short-cut-time-span-container').call(drawTimeSpanShortcutButtons, store, siteno, agencyCd); nodeElem.select('.short-cut-time-span-container').call(drawTimeSpanShortcutButtons, store, siteno, agencyCd);
select(node).select('.select-actions-container').call(drawSelectActions, store, siteno, agencyCd); select(node).select('.select-actions-container').call(drawSelectActions, store, siteno, agencyCd);
const app = createApp(GraphControlsApp, {});
app.use(ReduxConnectVue, {
store,
mapDispatchToPropsFactory: (actionCreators) => (dispatch) => bindActionCreators(actionCreators, dispatch),
mapStateToPropsFactory: createStructuredSelector
});
app.provide('store', store);
app.provide('siteno', siteno);
app.mount('#vue-graph-controls');
} }
const graphContainer = nodeElem.select('.graph-container'); const graphContainer = nodeElem.select('.graph-container');
...@@ -139,7 +130,16 @@ export const attachToNode = function(store, ...@@ -139,7 +130,16 @@ export const attachToNode = function(store,
const legendControlsContainer = graphContainer.append('div') const legendControlsContainer = graphContainer.append('div')
.classed('ts-legend-controls-container', true); .classed('ts-legend-controls-container', true);
if (!showOnlyGraph) { if (!showOnlyGraph) {
legendControlsContainer.call(drawGraphControls, store, siteno); const graphControlsApp = createApp(GraphControlsApp, {});
graphControlsApp.use(ReduxConnectVue, {
store,
mapDispatchToPropsFactory: (actionCreators) => (dispatch) => bindActionCreators(actionCreators, dispatch),
mapStateToPropsFactory: createStructuredSelector
});
graphControlsApp.provide('store', store);
graphControlsApp.provide('siteno', siteno);
graphControlsApp.mount('.ts-legend-controls-container');
nodeElem.select('.select-time-series-container') nodeElem.select('.select-time-series-container')
.call(drawSelectionList, store, siteno, agencyCd); .call(drawSelectionList, store, siteno, agencyCd);
} }
......
...@@ -281,10 +281,6 @@ ...@@ -281,10 +281,6 @@
.graph-controls-container { .graph-controls-container {
display: inline-block; display: inline-block;
li {
margin-bottom: 10px;
}
@include uswds.at-media('tablet') { @include uswds.at-media('tablet') {
position: absolute; position: absolute;
top: 0; top: 0;
......
...@@ -2,7 +2,6 @@ const path = require('path'); ...@@ -2,7 +2,6 @@ const path = require('path');
const alias = require('@rollup/plugin-alias'); const alias = require('@rollup/plugin-alias');
const replace = require('@rollup/plugin-replace'); const replace = require('@rollup/plugin-replace');
const resolve = require('@rollup/plugin-node-resolve');
const vue = require('@vitejs/plugin-vue'); const vue = require('@vitejs/plugin-vue');
const {defineConfig} = require('vite'); const {defineConfig} = require('vite');
...@@ -42,14 +41,11 @@ export default defineConfig(({command, mode}) => { ...@@ -42,14 +41,11 @@ export default defineConfig(({command, mode}) => {
sourcemap: mode === 'development', sourcemap: mode === 'development',
rollupOptions: { rollupOptions: {
input: { input: {
monitoringLocation: 'src/scripts/monitoring-location/index.js', monitoringLocation: 'src/scripts/monitoring-location/index.js'
}, },
plugins: [ plugins: [
alias({ alias({
entries: entries, entries: entries
customResolver: resolve.nodeResolve({
extensions: ['.js', '.json']
})
}), }),
replace({ replace({
preventAssignment: true, preventAssignment: true,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment