Compare commits
1 Commits
main
...
renovate/l
Author | SHA1 | Date |
---|---|---|
renovate[bot] | 2cce7f4deb |
|
@ -18,14 +18,14 @@
|
|||
"build": "webpack --config config/webpack.prod.js"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "7.18.13",
|
||||
"@babel/preset-env": "7.18.10",
|
||||
"@babel/core": "7.18.9",
|
||||
"@babel/preset-env": "7.18.9",
|
||||
"@babel/preset-react": "7.18.6",
|
||||
"babel-loader": "8.2.5",
|
||||
"html-webpack-plugin": "5.5.0",
|
||||
"webpack": "5.74.0",
|
||||
"webpack": "5.73.0",
|
||||
"webpack-cli": "4.10.0",
|
||||
"webpack-dev-server": "4.10.1",
|
||||
"webpack-dev-server": "4.9.3",
|
||||
"webpack-merge": "5.8.0"
|
||||
},
|
||||
"dependencies": {
|
||||
|
|
|
@ -19,14 +19,14 @@
|
|||
"build": "webpack --config config/webpack.prod.js"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "7.18.13",
|
||||
"@babel/preset-env": "7.18.10",
|
||||
"@babel/core": "7.18.9",
|
||||
"@babel/preset-env": "7.18.9",
|
||||
"@babel/preset-react": "7.18.6",
|
||||
"babel-loader": "8.2.5",
|
||||
"html-webpack-plugin": "5.5.0",
|
||||
"webpack": "5.74.0",
|
||||
"webpack": "5.73.0",
|
||||
"webpack-cli": "4.10.0",
|
||||
"webpack-dev-server": "4.10.1",
|
||||
"webpack-dev-server": "4.9.3",
|
||||
"webpack-merge": "5.8.0"
|
||||
},
|
||||
"dependencies": {
|
||||
|
|
|
@ -19,14 +19,14 @@
|
|||
"build": "webpack --config config/webpack.prod.js"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "7.18.13",
|
||||
"@babel/preset-env": "7.18.10",
|
||||
"@babel/core": "7.18.9",
|
||||
"@babel/preset-env": "7.18.9",
|
||||
"@babel/preset-react": "7.18.6",
|
||||
"babel-loader": "8.2.5",
|
||||
"html-webpack-plugin": "5.5.0",
|
||||
"webpack": "5.74.0",
|
||||
"webpack": "5.73.0",
|
||||
"webpack-cli": "4.10.0",
|
||||
"webpack-dev-server": "4.10.1",
|
||||
"webpack-dev-server": "4.9.3",
|
||||
"webpack-merge": "5.8.0"
|
||||
},
|
||||
"dependencies": {
|
||||
|
|
|
@ -1,6 +0,0 @@
|
|||
{
|
||||
"presets": [
|
||||
"@babel/preset-env",
|
||||
"@babel/preset-react"
|
||||
]
|
||||
}
|
|
@ -1,107 +0,0 @@
|
|||
# Others
|
||||
build*
|
||||
|
||||
# Logs
|
||||
logs
|
||||
*.log
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
lerna-debug.log*
|
||||
|
||||
# Diagnostic reports (https://nodejs.org/api/report.html)
|
||||
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
|
||||
|
||||
# Runtime data
|
||||
pids
|
||||
*.pid
|
||||
*.seed
|
||||
*.pid.lock
|
||||
|
||||
# Directory for instrumented libs generated by jscoverage/JSCover
|
||||
lib-cov
|
||||
|
||||
# Coverage directory used by tools like istanbul
|
||||
coverage
|
||||
*.lcov
|
||||
|
||||
# nyc test coverage
|
||||
.nyc_output
|
||||
|
||||
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
|
||||
.grunt
|
||||
|
||||
# Bower dependency directory (https://bower.io/)
|
||||
bower_components
|
||||
|
||||
# node-waf configuration
|
||||
.lock-wscript
|
||||
|
||||
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
||||
build/Release
|
||||
|
||||
# Dependency directories
|
||||
node_modules/
|
||||
jspm_packages/
|
||||
|
||||
# TypeScript v1 declaration files
|
||||
typings/
|
||||
|
||||
# TypeScript cache
|
||||
*.tsbuildinfo
|
||||
|
||||
# Optional npm cache directory
|
||||
.npm
|
||||
|
||||
# Optional eslint cache
|
||||
.eslintcache
|
||||
|
||||
# Microbundle cache
|
||||
.rpt2_cache/
|
||||
.rts2_cache_cjs/
|
||||
.rts2_cache_es/
|
||||
.rts2_cache_umd/
|
||||
|
||||
# Optional REPL history
|
||||
.node_repl_history
|
||||
|
||||
# Output of 'npm pack'
|
||||
*.tgz
|
||||
|
||||
# Yarn Integrity file
|
||||
.yarn-integrity
|
||||
|
||||
# dotenv environment variables file
|
||||
.env
|
||||
.env.test
|
||||
|
||||
# parcel-bundler cache (https://parceljs.org/)
|
||||
.cache
|
||||
|
||||
# Next.js build output
|
||||
.next
|
||||
|
||||
# Nuxt.js build / generate output
|
||||
.nuxt
|
||||
dist
|
||||
|
||||
# Gatsby files
|
||||
.cache/
|
||||
# Comment in the public line in if your project uses Gatsby and *not* Next.js
|
||||
# https://nextjs.org/blog/next-9-1#public-directory-support
|
||||
# public
|
||||
|
||||
# vuepress build output
|
||||
.vuepress/dist
|
||||
|
||||
# Serverless directories
|
||||
.serverless/
|
||||
|
||||
# FuseBox cache
|
||||
.fusebox/
|
||||
|
||||
# DynamoDB Local files
|
||||
.dynamodb/
|
||||
|
||||
# TernJS port file
|
||||
.tern-port
|
|
@ -1,17 +0,0 @@
|
|||
# React.js Example
|
||||
|
||||
## Table of Contents
|
||||
0. [General](#general)
|
||||
1. [Links](#links)
|
||||
|
||||
# General
|
||||
|
||||
# Links
|
||||
|
||||
* [React setup with webpack for beginners](https://dev.to/deepanjangh/react-setup-with-webpack-for-beginners-2a8k)
|
||||
* [Production](https://webpack.js.org/guides/production/)
|
||||
* [Setup Development and Production Environment for React App](https://medium.com/freestoneinfotech/setup-development-and-production-environment-for-react-app-397c4cc9e382)
|
||||
* [HtmlWebpackPlugin](https://webpack.js.org/plugins/html-webpack-plugin/)
|
||||
* [load CSS](https://masteringjs.io/tutorials/webpack/css-loader)
|
||||
* [load CSS](https://webpack.js.org/loaders/css-loader/)
|
||||
* [load CSS](https://blog.jakoblind.no/css-modules-webpack/)
|
|
@ -1,10 +0,0 @@
|
|||
import React from 'react';
|
||||
import Home from './pages/home';
|
||||
export default function App() {
|
||||
return (
|
||||
<div>
|
||||
<h1>App</h1>
|
||||
<Home />
|
||||
</div>
|
||||
)
|
||||
}
|
|
@ -1,65 +0,0 @@
|
|||
import React from 'react';
|
||||
import axios from 'axios';
|
||||
import qs from 'qs';
|
||||
|
||||
var data = qs.stringify({
|
||||
'data': '[bbox:51.990800124058914,10.045623779296875,52.552976197007524,11.01104736328125][out:json];(node["shop"="second_hand"];way["shop"="second_hand"];relation["shop"="second_hand"];);out center;'
|
||||
});
|
||||
|
||||
var config = {
|
||||
method: 'post',
|
||||
maxBodyLength: Infinity,
|
||||
url: 'https://overpass-api.de/api/interpreter',
|
||||
headers: {
|
||||
'Content-Type': 'application/x-www-form-urlencoded'
|
||||
},
|
||||
data : data
|
||||
};
|
||||
|
||||
function myFunction(value,key) {
|
||||
//console.log("key: "+key+",type: "+value.type);
|
||||
if(value.tags.name===undefined){
|
||||
console.log('ERROR: OSM element does NOT include name tag');
|
||||
}else if(value.type==='node'){
|
||||
console.log('node');
|
||||
console.log('name: '+value.tags.name);
|
||||
console.log('lat: '+value.lat);
|
||||
console.log('lon: '+value.lon);
|
||||
}else if(value.type==='way'){
|
||||
console.log('way');
|
||||
console.log('name: '+value.tags.name);
|
||||
console.log('lat: '+value.center.lat);
|
||||
console.log('lon: '+value.center.lon);
|
||||
}else{
|
||||
console.log('ERROR: OSM element NOT supported');
|
||||
}
|
||||
}
|
||||
|
||||
function post () {
|
||||
console.log('post() started...');
|
||||
console.log('data: '+data);
|
||||
|
||||
axios(config)
|
||||
.then(function (response) {
|
||||
//log JSON
|
||||
const dataObj=response.data;
|
||||
//console.log("dataObj: "+dataObj);
|
||||
const elemAry=dataObj.elements;
|
||||
const elemAryLength=elemAry.length;
|
||||
console.log("no: "+elemAryLength)
|
||||
elemAry.forEach(myFunction);
|
||||
})
|
||||
.catch(function (error) {
|
||||
console.log(error);
|
||||
});
|
||||
console.log('post() done.');
|
||||
}
|
||||
|
||||
export default function Map() {
|
||||
return (
|
||||
<>
|
||||
<p>Map</ p>
|
||||
<button onClick={post}>post</button>
|
||||
</>
|
||||
);
|
||||
}
|
|
@ -1,16 +0,0 @@
|
|||
import React from 'react';
|
||||
import Hello from '../components/hello';
|
||||
import Map from '../components/map';
|
||||
import '../style.css';
|
||||
const Home = () => {
|
||||
return (
|
||||
<>
|
||||
<h2>Home</h2>
|
||||
<h3>(React.js Lambda Function Component)</h3>
|
||||
<Hello msg="Hello World!" />
|
||||
<Map />
|
||||
</>
|
||||
);
|
||||
}
|
||||
|
||||
export default Home
|
|
@ -1,3 +0,0 @@
|
|||
h1 { color: red; }
|
||||
h2 { color: green; }
|
||||
h3 { color: blue; }
|
|
@ -1,41 +0,0 @@
|
|||
//generate a HTML5 file including all webpack bundles in the body using script tags
|
||||
const HtmlWebpackPlugin = require('html-webpack-plugin');
|
||||
//path is used to resolve properly across the OS
|
||||
const path = require('path');
|
||||
module.exports = {
|
||||
//bundle *.js from this entry point
|
||||
entry: path.resolve(__dirname, '../app/index.jsx'),
|
||||
//create output file to be linked to index.html
|
||||
output: {
|
||||
filename: '[name].bundle.js',
|
||||
path: path.resolve(__dirname, '../dist'),
|
||||
clean: true,
|
||||
},
|
||||
module: {
|
||||
rules: [
|
||||
{
|
||||
//test all *.js using babel-loader
|
||||
//test all *.jsx (e.g. React.js) using babel-loader
|
||||
test: /\.(js|jsx)$/,
|
||||
exclude: /node_modules/,
|
||||
include: path.resolve(__dirname, '../app'),
|
||||
use: ['babel-loader'],
|
||||
},
|
||||
{
|
||||
//test all *.css using style-loader and css-loader
|
||||
test: /\.css$/i,
|
||||
use: ["style-loader", "css-loader"],
|
||||
},
|
||||
]
|
||||
},
|
||||
resolve: {
|
||||
extensions: ['*', '.js', '.jsx'],
|
||||
},
|
||||
plugins: [
|
||||
// create a plugin instance so that you can use it several times anywhere
|
||||
new HtmlWebpackPlugin({
|
||||
title: 'Production',
|
||||
template: path.resolve(__dirname, "../public/index.html")
|
||||
}),
|
||||
],
|
||||
};
|
|
@ -1,14 +0,0 @@
|
|||
//path is used to resolve properly across the OS
|
||||
const path = require('path');
|
||||
const { merge } = require('webpack-merge');
|
||||
const common = require('./webpack.common.js');
|
||||
//merge() calls in the environment-specific configuration to include commons
|
||||
module.exports = merge(common, {
|
||||
//set development mode
|
||||
mode: 'development',
|
||||
//enable strong source mapping
|
||||
devtool: 'inline-source-map',
|
||||
devServer: {
|
||||
static: path.resolve(__dirname, '../dist'),
|
||||
},
|
||||
});
|
|
@ -1,8 +0,0 @@
|
|||
const { merge } = require('webpack-merge');
|
||||
const common = require('./webpack.common.js');
|
||||
module.exports = merge(common, {
|
||||
mode: 'production',
|
||||
//source maps encouraged in production
|
||||
//choose mapping with fairly quick build speed like source-map
|
||||
devtool: 'source-map',
|
||||
});
|
File diff suppressed because it is too large
Load Diff
|
@ -1,40 +0,0 @@
|
|||
{
|
||||
"private": true,
|
||||
"name": "react-example",
|
||||
"description": "React.js example",
|
||||
"version": "0.1.0",
|
||||
"main": "index.js",
|
||||
"keywords": [
|
||||
"react",
|
||||
"webpack"
|
||||
],
|
||||
"author": "Software Ingenieur Begerad <dialog@SwIngBe.de>",
|
||||
"license": "GPL-3.0-or-later",
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
},
|
||||
"scripts": {
|
||||
"start": "webpack serve --config config/webpack.dev.js",
|
||||
"build": "webpack --config config/webpack.prod.js"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "7.18.13",
|
||||
"@babel/preset-env": "7.18.10",
|
||||
"@babel/preset-react": "7.18.6",
|
||||
"babel-loader": "8.2.5",
|
||||
"css-loader": "6.7.1",
|
||||
"html-webpack-plugin": "5.5.0",
|
||||
"style-loader": "3.3.1",
|
||||
"webpack": "5.74.0",
|
||||
"webpack-cli": "4.10.0",
|
||||
"webpack-dev-server": "4.10.1",
|
||||
"webpack-merge": "5.8.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"axios": "1.3.2",
|
||||
"prop-types": "15.8.1",
|
||||
"qs": "6.11.0",
|
||||
"react": "18.2.0",
|
||||
"react-dom": "18.2.0"
|
||||
}
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>React Example</title>
|
||||
</head>
|
||||
<body>
|
||||
<div id="root"></div>
|
||||
</body>
|
||||
</html>
|
|
@ -1,107 +0,0 @@
|
|||
# Others
|
||||
build*
|
||||
|
||||
# Logs
|
||||
logs
|
||||
*.log
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
lerna-debug.log*
|
||||
|
||||
# Diagnostic reports (https://nodejs.org/api/report.html)
|
||||
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
|
||||
|
||||
# Runtime data
|
||||
pids
|
||||
*.pid
|
||||
*.seed
|
||||
*.pid.lock
|
||||
|
||||
# Directory for instrumented libs generated by jscoverage/JSCover
|
||||
lib-cov
|
||||
|
||||
# Coverage directory used by tools like istanbul
|
||||
coverage
|
||||
*.lcov
|
||||
|
||||
# nyc test coverage
|
||||
.nyc_output
|
||||
|
||||
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
|
||||
.grunt
|
||||
|
||||
# Bower dependency directory (https://bower.io/)
|
||||
bower_components
|
||||
|
||||
# node-waf configuration
|
||||
.lock-wscript
|
||||
|
||||
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
||||
build/Release
|
||||
|
||||
# Dependency directories
|
||||
node_modules/
|
||||
jspm_packages/
|
||||
|
||||
# TypeScript v1 declaration files
|
||||
typings/
|
||||
|
||||
# TypeScript cache
|
||||
*.tsbuildinfo
|
||||
|
||||
# Optional npm cache directory
|
||||
.npm
|
||||
|
||||
# Optional eslint cache
|
||||
.eslintcache
|
||||
|
||||
# Microbundle cache
|
||||
.rpt2_cache/
|
||||
.rts2_cache_cjs/
|
||||
.rts2_cache_es/
|
||||
.rts2_cache_umd/
|
||||
|
||||
# Optional REPL history
|
||||
.node_repl_history
|
||||
|
||||
# Output of 'npm pack'
|
||||
*.tgz
|
||||
|
||||
# Yarn Integrity file
|
||||
.yarn-integrity
|
||||
|
||||
# dotenv environment variables file
|
||||
.env
|
||||
.env.test
|
||||
|
||||
# parcel-bundler cache (https://parceljs.org/)
|
||||
.cache
|
||||
|
||||
# Next.js build output
|
||||
.next
|
||||
|
||||
# Nuxt.js build / generate output
|
||||
.nuxt
|
||||
dist
|
||||
|
||||
# Gatsby files
|
||||
.cache/
|
||||
# Comment in the public line in if your project uses Gatsby and *not* Next.js
|
||||
# https://nextjs.org/blog/next-9-1#public-directory-support
|
||||
# public
|
||||
|
||||
# vuepress build output
|
||||
.vuepress/dist
|
||||
|
||||
# Serverless directories
|
||||
.serverless/
|
||||
|
||||
# FuseBox cache
|
||||
.fusebox/
|
||||
|
||||
# DynamoDB Local files
|
||||
.dynamodb/
|
||||
|
||||
# TernJS port file
|
||||
.tern-port
|
|
@ -9,13 +9,13 @@
|
|||
"version": "1.0.1",
|
||||
"license": "GPL-3.0-or-later",
|
||||
"dependencies": {
|
||||
"axios": "^0.27.0",
|
||||
"axios": "^0.21.4",
|
||||
"react": "^18.0.0",
|
||||
"react-dom": "^18.0.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "7.18.13",
|
||||
"@babel/preset-env": "7.18.10",
|
||||
"@babel/core": "7.18.9",
|
||||
"@babel/preset-env": "7.18.9",
|
||||
"@babel/preset-react": "7.18.6",
|
||||
"babel-eslint": "10.1.0",
|
||||
"babel-loader": "8.2.5",
|
||||
|
@ -26,12 +26,12 @@
|
|||
"eslint-plugin-react": "7.30.1",
|
||||
"html-webpack-plugin": "5.5.0",
|
||||
"less": "4.1.3",
|
||||
"less-loader": "10.2.0",
|
||||
"less-loader": "11.0.0",
|
||||
"prettier": "2.7.1",
|
||||
"style-loader": "3.3.1",
|
||||
"webpack": "5.74.0",
|
||||
"webpack": "5.73.0",
|
||||
"webpack-cli": "4.10.0",
|
||||
"webpack-dev-server": "4.10.1"
|
||||
"webpack-dev-server": "4.9.3"
|
||||
}
|
||||
},
|
||||
"node_modules/@ampproject/remapping": {
|
||||
|
@ -69,21 +69,21 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@babel/core": {
|
||||
"version": "7.18.13",
|
||||
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.13.tgz",
|
||||
"integrity": "sha512-ZisbOvRRusFktksHSG6pjj1CSvkPkcZq/KHD45LAkVP/oiHJkNBZWfpvlLmX8OtHDG8IuzsFlVRWo08w7Qxn0A==",
|
||||
"version": "7.18.9",
|
||||
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.9.tgz",
|
||||
"integrity": "sha512-1LIb1eL8APMy91/IMW+31ckrfBM4yCoLaVzoDhZUKSM4cu1L1nIidyxkCgzPAgrC5WEz36IPEr/eSeSF9pIn+g==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@ampproject/remapping": "^2.1.0",
|
||||
"@babel/code-frame": "^7.18.6",
|
||||
"@babel/generator": "^7.18.13",
|
||||
"@babel/generator": "^7.18.9",
|
||||
"@babel/helper-compilation-targets": "^7.18.9",
|
||||
"@babel/helper-module-transforms": "^7.18.9",
|
||||
"@babel/helpers": "^7.18.9",
|
||||
"@babel/parser": "^7.18.13",
|
||||
"@babel/template": "^7.18.10",
|
||||
"@babel/traverse": "^7.18.13",
|
||||
"@babel/types": "^7.18.13",
|
||||
"@babel/parser": "^7.18.9",
|
||||
"@babel/template": "^7.18.6",
|
||||
"@babel/traverse": "^7.18.9",
|
||||
"@babel/types": "^7.18.9",
|
||||
"convert-source-map": "^1.7.0",
|
||||
"debug": "^4.1.0",
|
||||
"gensync": "^1.0.0-beta.2",
|
||||
|
@ -99,12 +99,12 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@babel/generator": {
|
||||
"version": "7.18.13",
|
||||
"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.13.tgz",
|
||||
"integrity": "sha512-CkPg8ySSPuHTYPJYo7IRALdqyjM9HCbt/3uOBEFbzyGVP6Mn8bwFPB0jX6982JVNBlYzM1nnPkfjuXSOPtQeEQ==",
|
||||
"version": "7.18.9",
|
||||
"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.9.tgz",
|
||||
"integrity": "sha512-wt5Naw6lJrL1/SGkipMiFxJjtyczUWTP38deiP1PO60HsBjDeKk08CGC3S8iVuvf0FmTdgKwU1KIXzSKL1G0Ug==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/types": "^7.18.13",
|
||||
"@babel/types": "^7.18.9",
|
||||
"@jridgewell/gen-mapping": "^0.3.2",
|
||||
"jsesc": "^2.5.1"
|
||||
},
|
||||
|
@ -207,13 +207,15 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@babel/helper-define-polyfill-provider": {
|
||||
"version": "0.3.2",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.2.tgz",
|
||||
"integrity": "sha512-r9QJJ+uDWrd+94BSPcP6/de67ygLtvVy6cK4luE6MOuDsZIdoaPBnfSpbO/+LTifjPckbKXRuI9BB/Z2/y3iTg==",
|
||||
"version": "0.3.1",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.1.tgz",
|
||||
"integrity": "sha512-J9hGMpJQmtWmj46B3kBHmL38UhJGhYX7eqkcq+2gsstyYt341HmPeWspihX43yVRA0mS+8GGk2Gckc7bY/HCmA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/helper-compilation-targets": "^7.17.7",
|
||||
"@babel/helper-plugin-utils": "^7.16.7",
|
||||
"@babel/helper-compilation-targets": "^7.13.0",
|
||||
"@babel/helper-module-imports": "^7.12.13",
|
||||
"@babel/helper-plugin-utils": "^7.13.0",
|
||||
"@babel/traverse": "^7.13.0",
|
||||
"debug": "^4.1.1",
|
||||
"lodash.debounce": "^4.0.8",
|
||||
"resolve": "^1.14.2",
|
||||
|
@ -403,15 +405,6 @@
|
|||
"node": ">=6.9.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@babel/helper-string-parser": {
|
||||
"version": "7.18.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz",
|
||||
"integrity": "sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=6.9.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@babel/helper-validator-identifier": {
|
||||
"version": "7.18.6",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz",
|
||||
|
@ -474,9 +467,9 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@babel/parser": {
|
||||
"version": "7.18.13",
|
||||
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.13.tgz",
|
||||
"integrity": "sha512-dgXcIfMuQ0kgzLB2b9tRZs7TTFFaGM2AbtA4fJgUUYukzGH4jwsS7hzQHEGs67jdehpm22vkgKwvbU+aEflgwg==",
|
||||
"version": "7.18.9",
|
||||
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.9.tgz",
|
||||
"integrity": "sha512-9uJveS9eY9DJ0t64YbIBZICtJy8a5QrDEVdiLCG97fVLpDTpGX7t8mMSb6OWw6Lrnjqj4O8zwjELX3dhoMgiBg==",
|
||||
"dev": true,
|
||||
"bin": {
|
||||
"parser": "bin/babel-parser.js"
|
||||
|
@ -518,14 +511,14 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@babel/plugin-proposal-async-generator-functions": {
|
||||
"version": "7.18.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.18.10.tgz",
|
||||
"integrity": "sha512-1mFuY2TOsR1hxbjCo4QL+qlIjV07p4H4EUYw2J/WCqsvFV6V9X9z9YhXbWndc/4fw+hYGlDT7egYxliMp5O6Ew==",
|
||||
"version": "7.18.6",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.18.6.tgz",
|
||||
"integrity": "sha512-WAz4R9bvozx4qwf74M+sfqPMKfSqwM0phxPTR6iJIi8robgzXwkEgmeJG1gEKhm6sDqT/U9aV3lfcqybIpev8w==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/helper-environment-visitor": "^7.18.9",
|
||||
"@babel/helper-plugin-utils": "^7.18.9",
|
||||
"@babel/helper-remap-async-to-generator": "^7.18.9",
|
||||
"@babel/helper-environment-visitor": "^7.18.6",
|
||||
"@babel/helper-plugin-utils": "^7.18.6",
|
||||
"@babel/helper-remap-async-to-generator": "^7.18.6",
|
||||
"@babel/plugin-syntax-async-generators": "^7.8.4"
|
||||
},
|
||||
"engines": {
|
||||
|
@ -1516,12 +1509,12 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@babel/plugin-transform-unicode-escapes": {
|
||||
"version": "7.18.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz",
|
||||
"integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==",
|
||||
"version": "7.18.6",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.6.tgz",
|
||||
"integrity": "sha512-XNRwQUXYMP7VLuy54cr/KS/WeL3AZeORhrmeZ7iewgu+X2eBqmpaLI/hzqr9ZxCeUoq0ASK4GUzSM0BDhZkLFw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/helper-plugin-utils": "^7.18.9"
|
||||
"@babel/helper-plugin-utils": "^7.18.6"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=6.9.0"
|
||||
|
@ -1547,9 +1540,9 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@babel/preset-env": {
|
||||
"version": "7.18.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.10.tgz",
|
||||
"integrity": "sha512-wVxs1yjFdW3Z/XkNfXKoblxoHgbtUF7/l3PvvP4m02Qz9TZ6uZGxRVYjSQeR87oQmHco9zWitW5J82DJ7sCjvA==",
|
||||
"version": "7.18.9",
|
||||
"resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.9.tgz",
|
||||
"integrity": "sha512-75pt/q95cMIHWssYtyfjVlvI+QEZQThQbKvR9xH+F/Agtw/s4Wfc2V9Bwd/P39VtixB7oWxGdH4GteTTwYJWMg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/compat-data": "^7.18.8",
|
||||
|
@ -1558,7 +1551,7 @@
|
|||
"@babel/helper-validator-option": "^7.18.6",
|
||||
"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6",
|
||||
"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9",
|
||||
"@babel/plugin-proposal-async-generator-functions": "^7.18.10",
|
||||
"@babel/plugin-proposal-async-generator-functions": "^7.18.6",
|
||||
"@babel/plugin-proposal-class-properties": "^7.18.6",
|
||||
"@babel/plugin-proposal-class-static-block": "^7.18.6",
|
||||
"@babel/plugin-proposal-dynamic-import": "^7.18.6",
|
||||
|
@ -1618,13 +1611,13 @@
|
|||
"@babel/plugin-transform-sticky-regex": "^7.18.6",
|
||||
"@babel/plugin-transform-template-literals": "^7.18.9",
|
||||
"@babel/plugin-transform-typeof-symbol": "^7.18.9",
|
||||
"@babel/plugin-transform-unicode-escapes": "^7.18.10",
|
||||
"@babel/plugin-transform-unicode-escapes": "^7.18.6",
|
||||
"@babel/plugin-transform-unicode-regex": "^7.18.6",
|
||||
"@babel/preset-modules": "^0.1.5",
|
||||
"@babel/types": "^7.18.10",
|
||||
"babel-plugin-polyfill-corejs2": "^0.3.2",
|
||||
"babel-plugin-polyfill-corejs3": "^0.5.3",
|
||||
"babel-plugin-polyfill-regenerator": "^0.4.0",
|
||||
"@babel/types": "^7.18.9",
|
||||
"babel-plugin-polyfill-corejs2": "^0.3.1",
|
||||
"babel-plugin-polyfill-corejs3": "^0.5.2",
|
||||
"babel-plugin-polyfill-regenerator": "^0.3.1",
|
||||
"core-js-compat": "^3.22.1",
|
||||
"semver": "^6.3.0"
|
||||
},
|
||||
|
@ -1684,33 +1677,33 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@babel/template": {
|
||||
"version": "7.18.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz",
|
||||
"integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==",
|
||||
"version": "7.18.6",
|
||||
"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.6.tgz",
|
||||
"integrity": "sha512-JoDWzPe+wgBsTTgdnIma3iHNFC7YVJoPssVBDjiHfNlyt4YcunDtcDOUmfVDfCK5MfdsaIoX9PkijPhjH3nYUw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/code-frame": "^7.18.6",
|
||||
"@babel/parser": "^7.18.10",
|
||||
"@babel/types": "^7.18.10"
|
||||
"@babel/parser": "^7.18.6",
|
||||
"@babel/types": "^7.18.6"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=6.9.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@babel/traverse": {
|
||||
"version": "7.18.13",
|
||||
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.13.tgz",
|
||||
"integrity": "sha512-N6kt9X1jRMLPxxxPYWi7tgvJRH/rtoU+dbKAPDM44RFHiMH8igdsaSBgFeskhSl/kLWLDUvIh1RXCrTmg0/zvA==",
|
||||
"version": "7.18.9",
|
||||
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.9.tgz",
|
||||
"integrity": "sha512-LcPAnujXGwBgv3/WHv01pHtb2tihcyW1XuL9wd7jqh1Z8AQkTd+QVjMrMijrln0T7ED3UXLIy36P9Ao7W75rYg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/code-frame": "^7.18.6",
|
||||
"@babel/generator": "^7.18.13",
|
||||
"@babel/generator": "^7.18.9",
|
||||
"@babel/helper-environment-visitor": "^7.18.9",
|
||||
"@babel/helper-function-name": "^7.18.9",
|
||||
"@babel/helper-hoist-variables": "^7.18.6",
|
||||
"@babel/helper-split-export-declaration": "^7.18.6",
|
||||
"@babel/parser": "^7.18.13",
|
||||
"@babel/types": "^7.18.13",
|
||||
"@babel/parser": "^7.18.9",
|
||||
"@babel/types": "^7.18.9",
|
||||
"debug": "^4.1.0",
|
||||
"globals": "^11.1.0"
|
||||
},
|
||||
|
@ -1719,12 +1712,11 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@babel/types": {
|
||||
"version": "7.18.13",
|
||||
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.13.tgz",
|
||||
"integrity": "sha512-ePqfTihzW0W6XAU+aMw2ykilisStJfDnsejDCXRchCcMJ4O0+8DhPXf2YUbZ6wjBlsEmZwLK/sPweWtu8hcJYQ==",
|
||||
"version": "7.18.9",
|
||||
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.9.tgz",
|
||||
"integrity": "sha512-WwMLAg2MvJmt/rKEVQBBhIVffMmnilX4oe0sRe7iPOHIGsqpruFHHdrfj4O1CMMtgMtCU4oPafZjDPCRgO57Wg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/helper-string-parser": "^7.18.10",
|
||||
"@babel/helper-validator-identifier": "^7.18.6",
|
||||
"to-fast-properties": "^2.0.0"
|
||||
},
|
||||
|
@ -2456,18 +2448,12 @@
|
|||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/asynckit": {
|
||||
"version": "0.4.0",
|
||||
"resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
|
||||
"integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
|
||||
},
|
||||
"node_modules/axios": {
|
||||
"version": "0.27.2",
|
||||
"resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz",
|
||||
"integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==",
|
||||
"version": "0.21.4",
|
||||
"resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz",
|
||||
"integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==",
|
||||
"dependencies": {
|
||||
"follow-redirects": "^1.14.9",
|
||||
"form-data": "^4.0.0"
|
||||
"follow-redirects": "^1.14.0"
|
||||
}
|
||||
},
|
||||
"node_modules/babel-eslint": {
|
||||
|
@ -2520,13 +2506,13 @@
|
|||
}
|
||||
},
|
||||
"node_modules/babel-plugin-polyfill-corejs2": {
|
||||
"version": "0.3.2",
|
||||
"resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.2.tgz",
|
||||
"integrity": "sha512-LPnodUl3lS0/4wN3Rb+m+UK8s7lj2jcLRrjho4gLw+OJs+I4bvGXshINesY5xx/apM+biTnQ9reDI8yj+0M5+Q==",
|
||||
"version": "0.3.1",
|
||||
"resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.1.tgz",
|
||||
"integrity": "sha512-v7/T6EQcNfVLfcN2X8Lulb7DjprieyLWJK/zOWH5DUYcAgex9sP3h25Q+DLsX9TloXe3y1O8l2q2Jv9q8UVB9w==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/compat-data": "^7.17.7",
|
||||
"@babel/helper-define-polyfill-provider": "^0.3.2",
|
||||
"@babel/compat-data": "^7.13.11",
|
||||
"@babel/helper-define-polyfill-provider": "^0.3.1",
|
||||
"semver": "^6.1.1"
|
||||
},
|
||||
"peerDependencies": {
|
||||
|
@ -2534,12 +2520,12 @@
|
|||
}
|
||||
},
|
||||
"node_modules/babel-plugin-polyfill-corejs3": {
|
||||
"version": "0.5.3",
|
||||
"resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.3.tgz",
|
||||
"integrity": "sha512-zKsXDh0XjnrUEW0mxIHLfjBfnXSMr5Q/goMe/fxpQnLm07mcOZiIZHBNWCMx60HmdvjxfXcalac0tfFg0wqxyw==",
|
||||
"version": "0.5.2",
|
||||
"resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.2.tgz",
|
||||
"integrity": "sha512-G3uJih0XWiID451fpeFaYGVuxHEjzKTHtc9uGFEjR6hHrvNzeS/PX+LLLcetJcytsB5m4j+K3o/EpXJNb/5IEQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/helper-define-polyfill-provider": "^0.3.2",
|
||||
"@babel/helper-define-polyfill-provider": "^0.3.1",
|
||||
"core-js-compat": "^3.21.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
|
@ -2547,12 +2533,12 @@
|
|||
}
|
||||
},
|
||||
"node_modules/babel-plugin-polyfill-regenerator": {
|
||||
"version": "0.4.0",
|
||||
"resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.0.tgz",
|
||||
"integrity": "sha512-RW1cnryiADFeHmfLS+WW/G431p1PsW5qdRdz0SDRi7TKcUgc7Oh/uXkT7MZ/+tGsT1BkczEAmD5XjUyJ5SWDTw==",
|
||||
"version": "0.3.1",
|
||||
"resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz",
|
||||
"integrity": "sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/helper-define-polyfill-provider": "^0.3.2"
|
||||
"@babel/helper-define-polyfill-provider": "^0.3.1"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@babel/core": "^7.0.0-0"
|
||||
|
@ -2876,17 +2862,6 @@
|
|||
"integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/combined-stream": {
|
||||
"version": "1.0.8",
|
||||
"resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
|
||||
"integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
|
||||
"dependencies": {
|
||||
"delayed-stream": "~1.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.8"
|
||||
}
|
||||
},
|
||||
"node_modules/commander": {
|
||||
"version": "8.3.0",
|
||||
"resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz",
|
||||
|
@ -3223,14 +3198,6 @@
|
|||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/delayed-stream": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
|
||||
"integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
|
||||
"engines": {
|
||||
"node": ">=0.4.0"
|
||||
}
|
||||
},
|
||||
"node_modules/depd": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
|
||||
|
@ -4228,19 +4195,6 @@
|
|||
}
|
||||
}
|
||||
},
|
||||
"node_modules/form-data": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz",
|
||||
"integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
|
||||
"dependencies": {
|
||||
"asynckit": "^0.4.0",
|
||||
"combined-stream": "^1.0.8",
|
||||
"mime-types": "^2.1.12"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 6"
|
||||
}
|
||||
},
|
||||
"node_modules/forwarded": {
|
||||
"version": "0.2.0",
|
||||
"resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz",
|
||||
|
@ -5315,15 +5269,15 @@
|
|||
}
|
||||
},
|
||||
"node_modules/less-loader": {
|
||||
"version": "10.2.0",
|
||||
"resolved": "https://registry.npmjs.org/less-loader/-/less-loader-10.2.0.tgz",
|
||||
"integrity": "sha512-AV5KHWvCezW27GT90WATaDnfXBv99llDbtaj4bshq6DvAihMdNjaPDcUMa6EXKLRF+P2opFenJp89BXg91XLYg==",
|
||||
"version": "11.0.0",
|
||||
"resolved": "https://registry.npmjs.org/less-loader/-/less-loader-11.0.0.tgz",
|
||||
"integrity": "sha512-9+LOWWjuoectIEx3zrfN83NAGxSUB5pWEabbbidVQVgZhN+wN68pOvuyirVlH1IK4VT1f3TmlyvAnCXh8O5KEw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"klona": "^2.0.4"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 12.13.0"
|
||||
"node": ">= 14.15.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
|
@ -5548,6 +5502,7 @@
|
|||
"version": "1.52.0",
|
||||
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
|
||||
"integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">= 0.6"
|
||||
}
|
||||
|
@ -5556,6 +5511,7 @@
|
|||
"version": "2.1.35",
|
||||
"resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
|
||||
"integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"mime-db": "1.52.0"
|
||||
},
|
||||
|
@ -7627,9 +7583,9 @@
|
|||
}
|
||||
},
|
||||
"node_modules/webpack": {
|
||||
"version": "5.74.0",
|
||||
"resolved": "https://registry.npmjs.org/webpack/-/webpack-5.74.0.tgz",
|
||||
"integrity": "sha512-A2InDwnhhGN4LYctJj6M1JEaGL7Luj6LOmyBHjcI8529cm5p6VXiTIW2sn6ffvEAKmveLzvu4jrihwXtPojlAA==",
|
||||
"version": "5.73.0",
|
||||
"resolved": "https://registry.npmjs.org/webpack/-/webpack-5.73.0.tgz",
|
||||
"integrity": "sha512-svjudQRPPa0YiOYa2lM/Gacw0r6PvxptHj4FuEKQ2kX05ZLkjbVc5MnPs6its5j7IZljnIqSVo/OsY2X0IpHGA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@types/eslint-scope": "^3.7.3",
|
||||
|
@ -7637,11 +7593,11 @@
|
|||
"@webassemblyjs/ast": "1.11.1",
|
||||
"@webassemblyjs/wasm-edit": "1.11.1",
|
||||
"@webassemblyjs/wasm-parser": "1.11.1",
|
||||
"acorn": "^8.7.1",
|
||||
"acorn": "^8.4.1",
|
||||
"acorn-import-assertions": "^1.7.6",
|
||||
"browserslist": "^4.14.5",
|
||||
"chrome-trace-event": "^1.0.2",
|
||||
"enhanced-resolve": "^5.10.0",
|
||||
"enhanced-resolve": "^5.9.3",
|
||||
"es-module-lexer": "^0.9.0",
|
||||
"eslint-scope": "5.1.1",
|
||||
"events": "^3.2.0",
|
||||
|
@ -7654,7 +7610,7 @@
|
|||
"schema-utils": "^3.1.0",
|
||||
"tapable": "^2.1.1",
|
||||
"terser-webpack-plugin": "^5.1.3",
|
||||
"watchpack": "^2.4.0",
|
||||
"watchpack": "^2.3.1",
|
||||
"webpack-sources": "^3.2.3"
|
||||
},
|
||||
"bin": {
|
||||
|
@ -7806,9 +7762,9 @@
|
|||
}
|
||||
},
|
||||
"node_modules/webpack-dev-server": {
|
||||
"version": "4.10.1",
|
||||
"resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.10.1.tgz",
|
||||
"integrity": "sha512-FIzMq3jbBarz3ld9l7rbM7m6Rj1lOsgq/DyLGMX/fPEB1UBUPtf5iL/4eNfhx8YYJTRlzfv107UfWSWcBK5Odw==",
|
||||
"version": "4.9.3",
|
||||
"resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.9.3.tgz",
|
||||
"integrity": "sha512-3qp/eoboZG5/6QgiZ3llN8TUzkSpYg1Ko9khWX1h40MIEUNS2mDoIa8aXsPfskER+GbTvs/IJZ1QTBBhhuetSw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@types/bonjour": "^3.5.9",
|
||||
|
@ -8104,21 +8060,21 @@
|
|||
"dev": true
|
||||
},
|
||||
"@babel/core": {
|
||||
"version": "7.18.13",
|
||||
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.13.tgz",
|
||||
"integrity": "sha512-ZisbOvRRusFktksHSG6pjj1CSvkPkcZq/KHD45LAkVP/oiHJkNBZWfpvlLmX8OtHDG8IuzsFlVRWo08w7Qxn0A==",
|
||||
"version": "7.18.9",
|
||||
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.9.tgz",
|
||||
"integrity": "sha512-1LIb1eL8APMy91/IMW+31ckrfBM4yCoLaVzoDhZUKSM4cu1L1nIidyxkCgzPAgrC5WEz36IPEr/eSeSF9pIn+g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@ampproject/remapping": "^2.1.0",
|
||||
"@babel/code-frame": "^7.18.6",
|
||||
"@babel/generator": "^7.18.13",
|
||||
"@babel/generator": "^7.18.9",
|
||||
"@babel/helper-compilation-targets": "^7.18.9",
|
||||
"@babel/helper-module-transforms": "^7.18.9",
|
||||
"@babel/helpers": "^7.18.9",
|
||||
"@babel/parser": "^7.18.13",
|
||||
"@babel/template": "^7.18.10",
|
||||
"@babel/traverse": "^7.18.13",
|
||||
"@babel/types": "^7.18.13",
|
||||
"@babel/parser": "^7.18.9",
|
||||
"@babel/template": "^7.18.6",
|
||||
"@babel/traverse": "^7.18.9",
|
||||
"@babel/types": "^7.18.9",
|
||||
"convert-source-map": "^1.7.0",
|
||||
"debug": "^4.1.0",
|
||||
"gensync": "^1.0.0-beta.2",
|
||||
|
@ -8127,12 +8083,12 @@
|
|||
}
|
||||
},
|
||||
"@babel/generator": {
|
||||
"version": "7.18.13",
|
||||
"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.13.tgz",
|
||||
"integrity": "sha512-CkPg8ySSPuHTYPJYo7IRALdqyjM9HCbt/3uOBEFbzyGVP6Mn8bwFPB0jX6982JVNBlYzM1nnPkfjuXSOPtQeEQ==",
|
||||
"version": "7.18.9",
|
||||
"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.9.tgz",
|
||||
"integrity": "sha512-wt5Naw6lJrL1/SGkipMiFxJjtyczUWTP38deiP1PO60HsBjDeKk08CGC3S8iVuvf0FmTdgKwU1KIXzSKL1G0Ug==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/types": "^7.18.13",
|
||||
"@babel/types": "^7.18.9",
|
||||
"@jridgewell/gen-mapping": "^0.3.2",
|
||||
"jsesc": "^2.5.1"
|
||||
},
|
||||
|
@ -8207,13 +8163,15 @@
|
|||
}
|
||||
},
|
||||
"@babel/helper-define-polyfill-provider": {
|
||||
"version": "0.3.2",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.2.tgz",
|
||||
"integrity": "sha512-r9QJJ+uDWrd+94BSPcP6/de67ygLtvVy6cK4luE6MOuDsZIdoaPBnfSpbO/+LTifjPckbKXRuI9BB/Z2/y3iTg==",
|
||||
"version": "0.3.1",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.1.tgz",
|
||||
"integrity": "sha512-J9hGMpJQmtWmj46B3kBHmL38UhJGhYX7eqkcq+2gsstyYt341HmPeWspihX43yVRA0mS+8GGk2Gckc7bY/HCmA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/helper-compilation-targets": "^7.17.7",
|
||||
"@babel/helper-plugin-utils": "^7.16.7",
|
||||
"@babel/helper-compilation-targets": "^7.13.0",
|
||||
"@babel/helper-module-imports": "^7.12.13",
|
||||
"@babel/helper-plugin-utils": "^7.13.0",
|
||||
"@babel/traverse": "^7.13.0",
|
||||
"debug": "^4.1.1",
|
||||
"lodash.debounce": "^4.0.8",
|
||||
"resolve": "^1.14.2",
|
||||
|
@ -8355,12 +8313,6 @@
|
|||
"@babel/types": "^7.18.6"
|
||||
}
|
||||
},
|
||||
"@babel/helper-string-parser": {
|
||||
"version": "7.18.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz",
|
||||
"integrity": "sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==",
|
||||
"dev": true
|
||||
},
|
||||
"@babel/helper-validator-identifier": {
|
||||
"version": "7.18.6",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz",
|
||||
|
@ -8408,9 +8360,9 @@
|
|||
}
|
||||
},
|
||||
"@babel/parser": {
|
||||
"version": "7.18.13",
|
||||
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.13.tgz",
|
||||
"integrity": "sha512-dgXcIfMuQ0kgzLB2b9tRZs7TTFFaGM2AbtA4fJgUUYukzGH4jwsS7hzQHEGs67jdehpm22vkgKwvbU+aEflgwg==",
|
||||
"version": "7.18.9",
|
||||
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.9.tgz",
|
||||
"integrity": "sha512-9uJveS9eY9DJ0t64YbIBZICtJy8a5QrDEVdiLCG97fVLpDTpGX7t8mMSb6OWw6Lrnjqj4O8zwjELX3dhoMgiBg==",
|
||||
"dev": true
|
||||
},
|
||||
"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": {
|
||||
|
@ -8434,14 +8386,14 @@
|
|||
}
|
||||
},
|
||||
"@babel/plugin-proposal-async-generator-functions": {
|
||||
"version": "7.18.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.18.10.tgz",
|
||||
"integrity": "sha512-1mFuY2TOsR1hxbjCo4QL+qlIjV07p4H4EUYw2J/WCqsvFV6V9X9z9YhXbWndc/4fw+hYGlDT7egYxliMp5O6Ew==",
|
||||
"version": "7.18.6",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.18.6.tgz",
|
||||
"integrity": "sha512-WAz4R9bvozx4qwf74M+sfqPMKfSqwM0phxPTR6iJIi8robgzXwkEgmeJG1gEKhm6sDqT/U9aV3lfcqybIpev8w==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/helper-environment-visitor": "^7.18.9",
|
||||
"@babel/helper-plugin-utils": "^7.18.9",
|
||||
"@babel/helper-remap-async-to-generator": "^7.18.9",
|
||||
"@babel/helper-environment-visitor": "^7.18.6",
|
||||
"@babel/helper-plugin-utils": "^7.18.6",
|
||||
"@babel/helper-remap-async-to-generator": "^7.18.6",
|
||||
"@babel/plugin-syntax-async-generators": "^7.8.4"
|
||||
}
|
||||
},
|
||||
|
@ -9075,12 +9027,12 @@
|
|||
}
|
||||
},
|
||||
"@babel/plugin-transform-unicode-escapes": {
|
||||
"version": "7.18.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz",
|
||||
"integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==",
|
||||
"version": "7.18.6",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.6.tgz",
|
||||
"integrity": "sha512-XNRwQUXYMP7VLuy54cr/KS/WeL3AZeORhrmeZ7iewgu+X2eBqmpaLI/hzqr9ZxCeUoq0ASK4GUzSM0BDhZkLFw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/helper-plugin-utils": "^7.18.9"
|
||||
"@babel/helper-plugin-utils": "^7.18.6"
|
||||
}
|
||||
},
|
||||
"@babel/plugin-transform-unicode-regex": {
|
||||
|
@ -9094,9 +9046,9 @@
|
|||
}
|
||||
},
|
||||
"@babel/preset-env": {
|
||||
"version": "7.18.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.10.tgz",
|
||||
"integrity": "sha512-wVxs1yjFdW3Z/XkNfXKoblxoHgbtUF7/l3PvvP4m02Qz9TZ6uZGxRVYjSQeR87oQmHco9zWitW5J82DJ7sCjvA==",
|
||||
"version": "7.18.9",
|
||||
"resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.9.tgz",
|
||||
"integrity": "sha512-75pt/q95cMIHWssYtyfjVlvI+QEZQThQbKvR9xH+F/Agtw/s4Wfc2V9Bwd/P39VtixB7oWxGdH4GteTTwYJWMg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/compat-data": "^7.18.8",
|
||||
|
@ -9105,7 +9057,7 @@
|
|||
"@babel/helper-validator-option": "^7.18.6",
|
||||
"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6",
|
||||
"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9",
|
||||
"@babel/plugin-proposal-async-generator-functions": "^7.18.10",
|
||||
"@babel/plugin-proposal-async-generator-functions": "^7.18.6",
|
||||
"@babel/plugin-proposal-class-properties": "^7.18.6",
|
||||
"@babel/plugin-proposal-class-static-block": "^7.18.6",
|
||||
"@babel/plugin-proposal-dynamic-import": "^7.18.6",
|
||||
|
@ -9165,13 +9117,13 @@
|
|||
"@babel/plugin-transform-sticky-regex": "^7.18.6",
|
||||
"@babel/plugin-transform-template-literals": "^7.18.9",
|
||||
"@babel/plugin-transform-typeof-symbol": "^7.18.9",
|
||||
"@babel/plugin-transform-unicode-escapes": "^7.18.10",
|
||||
"@babel/plugin-transform-unicode-escapes": "^7.18.6",
|
||||
"@babel/plugin-transform-unicode-regex": "^7.18.6",
|
||||
"@babel/preset-modules": "^0.1.5",
|
||||
"@babel/types": "^7.18.10",
|
||||
"babel-plugin-polyfill-corejs2": "^0.3.2",
|
||||
"babel-plugin-polyfill-corejs3": "^0.5.3",
|
||||
"babel-plugin-polyfill-regenerator": "^0.4.0",
|
||||
"@babel/types": "^7.18.9",
|
||||
"babel-plugin-polyfill-corejs2": "^0.3.1",
|
||||
"babel-plugin-polyfill-corejs3": "^0.5.2",
|
||||
"babel-plugin-polyfill-regenerator": "^0.3.1",
|
||||
"core-js-compat": "^3.22.1",
|
||||
"semver": "^6.3.0"
|
||||
}
|
||||
|
@ -9213,41 +9165,40 @@
|
|||
}
|
||||
},
|
||||
"@babel/template": {
|
||||
"version": "7.18.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz",
|
||||
"integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==",
|
||||
"version": "7.18.6",
|
||||
"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.6.tgz",
|
||||
"integrity": "sha512-JoDWzPe+wgBsTTgdnIma3iHNFC7YVJoPssVBDjiHfNlyt4YcunDtcDOUmfVDfCK5MfdsaIoX9PkijPhjH3nYUw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/code-frame": "^7.18.6",
|
||||
"@babel/parser": "^7.18.10",
|
||||
"@babel/types": "^7.18.10"
|
||||
"@babel/parser": "^7.18.6",
|
||||
"@babel/types": "^7.18.6"
|
||||
}
|
||||
},
|
||||
"@babel/traverse": {
|
||||
"version": "7.18.13",
|
||||
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.13.tgz",
|
||||
"integrity": "sha512-N6kt9X1jRMLPxxxPYWi7tgvJRH/rtoU+dbKAPDM44RFHiMH8igdsaSBgFeskhSl/kLWLDUvIh1RXCrTmg0/zvA==",
|
||||
"version": "7.18.9",
|
||||
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.9.tgz",
|
||||
"integrity": "sha512-LcPAnujXGwBgv3/WHv01pHtb2tihcyW1XuL9wd7jqh1Z8AQkTd+QVjMrMijrln0T7ED3UXLIy36P9Ao7W75rYg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/code-frame": "^7.18.6",
|
||||
"@babel/generator": "^7.18.13",
|
||||
"@babel/generator": "^7.18.9",
|
||||
"@babel/helper-environment-visitor": "^7.18.9",
|
||||
"@babel/helper-function-name": "^7.18.9",
|
||||
"@babel/helper-hoist-variables": "^7.18.6",
|
||||
"@babel/helper-split-export-declaration": "^7.18.6",
|
||||
"@babel/parser": "^7.18.13",
|
||||
"@babel/types": "^7.18.13",
|
||||
"@babel/parser": "^7.18.9",
|
||||
"@babel/types": "^7.18.9",
|
||||
"debug": "^4.1.0",
|
||||
"globals": "^11.1.0"
|
||||
}
|
||||
},
|
||||
"@babel/types": {
|
||||
"version": "7.18.13",
|
||||
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.13.tgz",
|
||||
"integrity": "sha512-ePqfTihzW0W6XAU+aMw2ykilisStJfDnsejDCXRchCcMJ4O0+8DhPXf2YUbZ6wjBlsEmZwLK/sPweWtu8hcJYQ==",
|
||||
"version": "7.18.9",
|
||||
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.9.tgz",
|
||||
"integrity": "sha512-WwMLAg2MvJmt/rKEVQBBhIVffMmnilX4oe0sRe7iPOHIGsqpruFHHdrfj4O1CMMtgMtCU4oPafZjDPCRgO57Wg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/helper-string-parser": "^7.18.10",
|
||||
"@babel/helper-validator-identifier": "^7.18.6",
|
||||
"to-fast-properties": "^2.0.0"
|
||||
}
|
||||
|
@ -9880,18 +9831,12 @@
|
|||
"integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==",
|
||||
"dev": true
|
||||
},
|
||||
"asynckit": {
|
||||
"version": "0.4.0",
|
||||
"resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
|
||||
"integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
|
||||
},
|
||||
"axios": {
|
||||
"version": "0.27.2",
|
||||
"resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz",
|
||||
"integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==",
|
||||
"version": "0.21.4",
|
||||
"resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz",
|
||||
"integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==",
|
||||
"requires": {
|
||||
"follow-redirects": "^1.14.9",
|
||||
"form-data": "^4.0.0"
|
||||
"follow-redirects": "^1.14.0"
|
||||
}
|
||||
},
|
||||
"babel-eslint": {
|
||||
|
@ -9930,33 +9875,33 @@
|
|||
}
|
||||
},
|
||||
"babel-plugin-polyfill-corejs2": {
|
||||
"version": "0.3.2",
|
||||
"resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.2.tgz",
|
||||
"integrity": "sha512-LPnodUl3lS0/4wN3Rb+m+UK8s7lj2jcLRrjho4gLw+OJs+I4bvGXshINesY5xx/apM+biTnQ9reDI8yj+0M5+Q==",
|
||||
"version": "0.3.1",
|
||||
"resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.1.tgz",
|
||||
"integrity": "sha512-v7/T6EQcNfVLfcN2X8Lulb7DjprieyLWJK/zOWH5DUYcAgex9sP3h25Q+DLsX9TloXe3y1O8l2q2Jv9q8UVB9w==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/compat-data": "^7.17.7",
|
||||
"@babel/helper-define-polyfill-provider": "^0.3.2",
|
||||
"@babel/compat-data": "^7.13.11",
|
||||
"@babel/helper-define-polyfill-provider": "^0.3.1",
|
||||
"semver": "^6.1.1"
|
||||
}
|
||||
},
|
||||
"babel-plugin-polyfill-corejs3": {
|
||||
"version": "0.5.3",
|
||||
"resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.3.tgz",
|
||||
"integrity": "sha512-zKsXDh0XjnrUEW0mxIHLfjBfnXSMr5Q/goMe/fxpQnLm07mcOZiIZHBNWCMx60HmdvjxfXcalac0tfFg0wqxyw==",
|
||||
"version": "0.5.2",
|
||||
"resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.2.tgz",
|
||||
"integrity": "sha512-G3uJih0XWiID451fpeFaYGVuxHEjzKTHtc9uGFEjR6hHrvNzeS/PX+LLLcetJcytsB5m4j+K3o/EpXJNb/5IEQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/helper-define-polyfill-provider": "^0.3.2",
|
||||
"@babel/helper-define-polyfill-provider": "^0.3.1",
|
||||
"core-js-compat": "^3.21.0"
|
||||
}
|
||||
},
|
||||
"babel-plugin-polyfill-regenerator": {
|
||||
"version": "0.4.0",
|
||||
"resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.0.tgz",
|
||||
"integrity": "sha512-RW1cnryiADFeHmfLS+WW/G431p1PsW5qdRdz0SDRi7TKcUgc7Oh/uXkT7MZ/+tGsT1BkczEAmD5XjUyJ5SWDTw==",
|
||||
"version": "0.3.1",
|
||||
"resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz",
|
||||
"integrity": "sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/helper-define-polyfill-provider": "^0.3.2"
|
||||
"@babel/helper-define-polyfill-provider": "^0.3.1"
|
||||
}
|
||||
},
|
||||
"balanced-match": {
|
||||
|
@ -10202,14 +10147,6 @@
|
|||
"integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==",
|
||||
"dev": true
|
||||
},
|
||||
"combined-stream": {
|
||||
"version": "1.0.8",
|
||||
"resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
|
||||
"integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
|
||||
"requires": {
|
||||
"delayed-stream": "~1.0.0"
|
||||
}
|
||||
},
|
||||
"commander": {
|
||||
"version": "8.3.0",
|
||||
"resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz",
|
||||
|
@ -10455,11 +10392,6 @@
|
|||
"object-keys": "^1.1.1"
|
||||
}
|
||||
},
|
||||
"delayed-stream": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
|
||||
"integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ=="
|
||||
},
|
||||
"depd": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
|
||||
|
@ -11213,16 +11145,6 @@
|
|||
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.1.tgz",
|
||||
"integrity": "sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA=="
|
||||
},
|
||||
"form-data": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz",
|
||||
"integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
|
||||
"requires": {
|
||||
"asynckit": "^0.4.0",
|
||||
"combined-stream": "^1.0.8",
|
||||
"mime-types": "^2.1.12"
|
||||
}
|
||||
},
|
||||
"forwarded": {
|
||||
"version": "0.2.0",
|
||||
"resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz",
|
||||
|
@ -12003,9 +11925,9 @@
|
|||
}
|
||||
},
|
||||
"less-loader": {
|
||||
"version": "10.2.0",
|
||||
"resolved": "https://registry.npmjs.org/less-loader/-/less-loader-10.2.0.tgz",
|
||||
"integrity": "sha512-AV5KHWvCezW27GT90WATaDnfXBv99llDbtaj4bshq6DvAihMdNjaPDcUMa6EXKLRF+P2opFenJp89BXg91XLYg==",
|
||||
"version": "11.0.0",
|
||||
"resolved": "https://registry.npmjs.org/less-loader/-/less-loader-11.0.0.tgz",
|
||||
"integrity": "sha512-9+LOWWjuoectIEx3zrfN83NAGxSUB5pWEabbbidVQVgZhN+wN68pOvuyirVlH1IK4VT1f3TmlyvAnCXh8O5KEw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"klona": "^2.0.4"
|
||||
|
@ -12158,12 +12080,14 @@
|
|||
"mime-db": {
|
||||
"version": "1.52.0",
|
||||
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
|
||||
"integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg=="
|
||||
"integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
|
||||
"dev": true
|
||||
},
|
||||
"mime-types": {
|
||||
"version": "2.1.35",
|
||||
"resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
|
||||
"integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"mime-db": "1.52.0"
|
||||
}
|
||||
|
@ -13724,9 +13648,9 @@
|
|||
}
|
||||
},
|
||||
"webpack": {
|
||||
"version": "5.74.0",
|
||||
"resolved": "https://registry.npmjs.org/webpack/-/webpack-5.74.0.tgz",
|
||||
"integrity": "sha512-A2InDwnhhGN4LYctJj6M1JEaGL7Luj6LOmyBHjcI8529cm5p6VXiTIW2sn6ffvEAKmveLzvu4jrihwXtPojlAA==",
|
||||
"version": "5.73.0",
|
||||
"resolved": "https://registry.npmjs.org/webpack/-/webpack-5.73.0.tgz",
|
||||
"integrity": "sha512-svjudQRPPa0YiOYa2lM/Gacw0r6PvxptHj4FuEKQ2kX05ZLkjbVc5MnPs6its5j7IZljnIqSVo/OsY2X0IpHGA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@types/eslint-scope": "^3.7.3",
|
||||
|
@ -13734,11 +13658,11 @@
|
|||
"@webassemblyjs/ast": "1.11.1",
|
||||
"@webassemblyjs/wasm-edit": "1.11.1",
|
||||
"@webassemblyjs/wasm-parser": "1.11.1",
|
||||
"acorn": "^8.7.1",
|
||||
"acorn": "^8.4.1",
|
||||
"acorn-import-assertions": "^1.7.6",
|
||||
"browserslist": "^4.14.5",
|
||||
"chrome-trace-event": "^1.0.2",
|
||||
"enhanced-resolve": "^5.10.0",
|
||||
"enhanced-resolve": "^5.9.3",
|
||||
"es-module-lexer": "^0.9.0",
|
||||
"eslint-scope": "5.1.1",
|
||||
"events": "^3.2.0",
|
||||
|
@ -13751,7 +13675,7 @@
|
|||
"schema-utils": "^3.1.0",
|
||||
"tapable": "^2.1.1",
|
||||
"terser-webpack-plugin": "^5.1.3",
|
||||
"watchpack": "^2.4.0",
|
||||
"watchpack": "^2.3.1",
|
||||
"webpack-sources": "^3.2.3"
|
||||
},
|
||||
"dependencies": {
|
||||
|
@ -13864,9 +13788,9 @@
|
|||
}
|
||||
},
|
||||
"webpack-dev-server": {
|
||||
"version": "4.10.1",
|
||||
"resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.10.1.tgz",
|
||||
"integrity": "sha512-FIzMq3jbBarz3ld9l7rbM7m6Rj1lOsgq/DyLGMX/fPEB1UBUPtf5iL/4eNfhx8YYJTRlzfv107UfWSWcBK5Odw==",
|
||||
"version": "4.9.3",
|
||||
"resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.9.3.tgz",
|
||||
"integrity": "sha512-3qp/eoboZG5/6QgiZ3llN8TUzkSpYg1Ko9khWX1h40MIEUNS2mDoIa8aXsPfskER+GbTvs/IJZ1QTBBhhuetSw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@types/bonjour": "^3.5.9",
|
||||
|
|
|
@ -13,13 +13,13 @@
|
|||
"author": "Stefan Begerad",
|
||||
"license": "GPL-3.0-or-later",
|
||||
"dependencies": {
|
||||
"axios": "^0.27.0",
|
||||
"axios": "^0.21.4",
|
||||
"react": "^18.0.0",
|
||||
"react-dom": "^18.0.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "7.18.13",
|
||||
"@babel/preset-env": "7.18.10",
|
||||
"@babel/core": "7.18.9",
|
||||
"@babel/preset-env": "7.18.9",
|
||||
"@babel/preset-react": "7.18.6",
|
||||
"babel-eslint": "10.1.0",
|
||||
"babel-loader": "8.2.5",
|
||||
|
@ -30,11 +30,11 @@
|
|||
"eslint-plugin-react": "7.30.1",
|
||||
"html-webpack-plugin": "5.5.0",
|
||||
"less": "4.1.3",
|
||||
"less-loader": "10.2.0",
|
||||
"less-loader": "11.0.0",
|
||||
"prettier": "2.7.1",
|
||||
"style-loader": "3.3.1",
|
||||
"webpack": "5.74.0",
|
||||
"webpack": "5.73.0",
|
||||
"webpack-cli": "4.10.0",
|
||||
"webpack-dev-server": "4.10.1"
|
||||
"webpack-dev-server": "4.9.3"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import React from 'react';
|
||||
import './style/main.less';
|
||||
import axios from 'axios';
|
||||
/*
|
||||
|
||||
function axiosGet () {
|
||||
console.log('axiosGet() started...');
|
||||
|
||||
|
@ -36,31 +36,6 @@ function axiosGet () {
|
|||
});
|
||||
console.log('axiosGet() done.');
|
||||
}
|
||||
*/
|
||||
function axiosGetVehiclePosition () {
|
||||
console.log('axiosGetVehiclePosition() started...');
|
||||
|
||||
|
||||
//axios.defaults.baseURL = 'https://test-tarifmatrix.vbn.de:4245';
|
||||
//axios.defaults.baseURL = 'https://tarifmatrix.vbn.de:4445';
|
||||
axios.defaults.baseURL = 'https://soll.vbn.de';
|
||||
//axios.defaults.headers.get['Access-Control-Allow-Origin'] = '*';
|
||||
|
||||
axios
|
||||
.get('vehicle-positions')
|
||||
//handle rsp in async manner
|
||||
.then((response) => {
|
||||
if (response.data) {
|
||||
console.log('axiosGetVehiclePosition() response.data: ', response.data);
|
||||
} else {
|
||||
console.log('axiosGetVehiclePosition() response.data unavailable ');
|
||||
}
|
||||
})
|
||||
.catch(function (error) {
|
||||
console.log(error);
|
||||
});
|
||||
console.log('axiosGetVehiclePosition() done.');
|
||||
}
|
||||
|
||||
/*
|
||||
*component Main
|
||||
|
@ -72,7 +47,7 @@ class Main extends React.Component {
|
|||
return (
|
||||
<div>
|
||||
<p>main</p>
|
||||
<button onClick={axiosGetVehiclePosition}>axios</button>
|
||||
<button onClick={axiosGet}>axios</button>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
|
|
@ -18,14 +18,14 @@
|
|||
"build": "webpack --config config/webpack.prod.js"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "7.18.13",
|
||||
"@babel/preset-env": "7.18.10",
|
||||
"@babel/core": "7.18.9",
|
||||
"@babel/preset-env": "7.18.9",
|
||||
"@babel/preset-react": "7.18.6",
|
||||
"babel-loader": "8.2.5",
|
||||
"html-webpack-plugin": "5.5.0",
|
||||
"webpack": "5.74.0",
|
||||
"webpack": "5.73.0",
|
||||
"webpack-cli": "4.10.0",
|
||||
"webpack-dev-server": "4.10.1",
|
||||
"webpack-dev-server": "4.9.3",
|
||||
"webpack-merge": "5.8.0"
|
||||
},
|
||||
"dependencies": {
|
||||
|
|
|
@ -1,14 +0,0 @@
|
|||
{
|
||||
"presets": [
|
||||
"@babel/preset-env",
|
||||
"@babel/preset-react"
|
||||
],
|
||||
"plugins": [
|
||||
[
|
||||
"@babel/plugin-transform-runtime",
|
||||
{
|
||||
"regenerator": true
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
|
@ -1,19 +0,0 @@
|
|||
{
|
||||
"parser": "@babel/eslint-parser",
|
||||
"extends": "eslint:recommended",
|
||||
"env": {
|
||||
"es6": 1,
|
||||
"node": 1
|
||||
},
|
||||
"parserOptions": {
|
||||
"ecmaVersion": 2020
|
||||
},
|
||||
"ignorePatterns": [
|
||||
"node_modules",
|
||||
"dist"
|
||||
],
|
||||
"rules": {
|
||||
"no-console": "error",
|
||||
"no-mixed-spaces-and-tabs": 0
|
||||
}
|
||||
}
|
|
@ -1,107 +0,0 @@
|
|||
# Others
|
||||
build*
|
||||
|
||||
# Logs
|
||||
logs
|
||||
*.log
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
lerna-debug.log*
|
||||
|
||||
# Diagnostic reports (https://nodejs.org/api/report.html)
|
||||
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
|
||||
|
||||
# Runtime data
|
||||
pids
|
||||
*.pid
|
||||
*.seed
|
||||
*.pid.lock
|
||||
|
||||
# Directory for instrumented libs generated by jscoverage/JSCover
|
||||
lib-cov
|
||||
|
||||
# Coverage directory used by tools like istanbul
|
||||
coverage
|
||||
*.lcov
|
||||
|
||||
# nyc test coverage
|
||||
.nyc_output
|
||||
|
||||
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
|
||||
.grunt
|
||||
|
||||
# Bower dependency directory (https://bower.io/)
|
||||
bower_components
|
||||
|
||||
# node-waf configuration
|
||||
.lock-wscript
|
||||
|
||||
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
||||
build/Release
|
||||
|
||||
# Dependency directories
|
||||
node_modules/
|
||||
jspm_packages/
|
||||
|
||||
# TypeScript v1 declaration files
|
||||
typings/
|
||||
|
||||
# TypeScript cache
|
||||
*.tsbuildinfo
|
||||
|
||||
# Optional npm cache directory
|
||||
.npm
|
||||
|
||||
# Optional eslint cache
|
||||
.eslintcache
|
||||
|
||||
# Microbundle cache
|
||||
.rpt2_cache/
|
||||
.rts2_cache_cjs/
|
||||
.rts2_cache_es/
|
||||
.rts2_cache_umd/
|
||||
|
||||
# Optional REPL history
|
||||
.node_repl_history
|
||||
|
||||
# Output of 'npm pack'
|
||||
*.tgz
|
||||
|
||||
# Yarn Integrity file
|
||||
.yarn-integrity
|
||||
|
||||
# dotenv environment variables file
|
||||
.env
|
||||
.env.test
|
||||
|
||||
# parcel-bundler cache (https://parceljs.org/)
|
||||
.cache
|
||||
|
||||
# Next.js build output
|
||||
.next
|
||||
|
||||
# Nuxt.js build / generate output
|
||||
.nuxt
|
||||
dist
|
||||
|
||||
# Gatsby files
|
||||
.cache/
|
||||
# Comment in the public line in if your project uses Gatsby and *not* Next.js
|
||||
# https://nextjs.org/blog/next-9-1#public-directory-support
|
||||
# public
|
||||
|
||||
# vuepress build output
|
||||
.vuepress/dist
|
||||
|
||||
# Serverless directories
|
||||
.serverless/
|
||||
|
||||
# FuseBox cache
|
||||
.fusebox/
|
||||
|
||||
# DynamoDB Local files
|
||||
.dynamodb/
|
||||
|
||||
# TernJS port file
|
||||
.tern-port
|
|
@ -1,2 +0,0 @@
|
|||
# .npmrc
|
||||
engine-strict=true
|
|
@ -1,50 +0,0 @@
|
|||
// generate a HTML5 file including all webpack bundles in the body using script tags
|
||||
const HtmlWebpackPlugin = require('html-webpack-plugin');
|
||||
// path is used to resolve properly across the OS
|
||||
const path = require('path');
|
||||
|
||||
module.exports = {
|
||||
// bundle *.js from this entry point
|
||||
entry: path.resolve(__dirname, '../src/index.jsx'),
|
||||
// create output file to be linked to index.html
|
||||
output: {
|
||||
filename: '[name].bundle.js',
|
||||
path: path.resolve(__dirname, '../dist'),
|
||||
clean: true,
|
||||
},
|
||||
module: {
|
||||
rules: [
|
||||
{
|
||||
// test all *.js using babel-loader
|
||||
// test all *.jsx (e.g. React.js) using babel-loader
|
||||
test: /\.(js|jsx)$/,
|
||||
exclude: /node_modules/,
|
||||
include: path.resolve(__dirname, '../src'),
|
||||
use: {
|
||||
loader: 'babel-loader',
|
||||
options: {
|
||||
presets: [
|
||||
'@babel/preset-env',
|
||||
'@babel/preset-react',
|
||||
],
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
// test all *.css using style-loader and css-loader
|
||||
test: /\.css$/i,
|
||||
use: ['style-loader', 'css-loader'],
|
||||
},
|
||||
],
|
||||
},
|
||||
resolve: {
|
||||
extensions: ['*', '.js', '.jsx'],
|
||||
},
|
||||
plugins: [
|
||||
// create a plugin instance so that you can use it several times anywhere
|
||||
new HtmlWebpackPlugin({
|
||||
title: 'Production',
|
||||
template: path.resolve(__dirname, '../public/index.html'),
|
||||
}),
|
||||
],
|
||||
};
|
|
@ -1,20 +0,0 @@
|
|||
// path is used to resolve properly across the OS
|
||||
const path = require('path');
|
||||
const { merge } = require('webpack-merge');
|
||||
const common = require('./webpack.common');
|
||||
// merge() calls in the environment-specific configuration to include commons
|
||||
module.exports = merge(common, {
|
||||
// set development mode
|
||||
mode: 'development',
|
||||
// enable strong source mapping
|
||||
devtool: 'inline-source-map',
|
||||
devServer: {
|
||||
static: path.resolve(__dirname, '../dist'),
|
||||
/*
|
||||
When using the HTML5 History API,
|
||||
the index.html page will likely have to be served in place of any 404 responses.
|
||||
Enable devServer.historyApiFallback by setting it to true.
|
||||
*/
|
||||
historyApiFallback: true,
|
||||
},
|
||||
});
|
|
@ -1,9 +0,0 @@
|
|||
const { merge } = require('webpack-merge');
|
||||
const common = require('./webpack.common');
|
||||
|
||||
module.exports = merge(common, {
|
||||
mode: 'production',
|
||||
// source maps encouraged in production
|
||||
// choose mapping with fairly quick build speed like source-map
|
||||
devtool: 'source-map',
|
||||
});
|
File diff suppressed because it is too large
Load Diff
|
@ -1,47 +0,0 @@
|
|||
{
|
||||
"private": true,
|
||||
"name": "react-example",
|
||||
"description": "React.js example",
|
||||
"version": "0.1.0",
|
||||
"main": "index.js",
|
||||
"keywords": [
|
||||
"react",
|
||||
"webpack"
|
||||
],
|
||||
"author": "Software Ingenieur Begerad <dialog@SwIngBe.de>",
|
||||
"license": "GPL-3.0-or-later",
|
||||
"engines": {
|
||||
"node": ">=18.17.0"
|
||||
},
|
||||
"scripts": {
|
||||
"start": "webpack serve --config config/webpack.dev.js",
|
||||
"build": "webpack --config config/webpack.prod.js",
|
||||
"test": "echo \"Error: no test specified\" && exit 1",
|
||||
"lint": "eslint .",
|
||||
"lint:fix": "eslint --fix ."
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "7.23.9",
|
||||
"@babel/eslint-parser": "7.23.10",
|
||||
"@babel/plugin-transform-runtime": "7.23.9",
|
||||
"@babel/preset-env": "7.23.9",
|
||||
"@babel/preset-react": "7.23.3",
|
||||
"@babel/runtime": "7.23.9",
|
||||
"babel-loader": "9.1.3",
|
||||
"css-loader": "6.10.0",
|
||||
"eslint": "8.56.0",
|
||||
"eslint-webpack-plugin": "4.0.1",
|
||||
"style-loader": "3.3.4",
|
||||
"webpack": "5.90.2",
|
||||
"webpack-cli": "5.1.4",
|
||||
"webpack-dev-server": "5.0.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"axios": "1.6.8",
|
||||
"html-webpack-plugin": "5.6.0",
|
||||
"prop-types": "15.8.1",
|
||||
"react": "18.2.0",
|
||||
"react-dom": "18.2.0",
|
||||
"webpack-merge": "5.10.0"
|
||||
}
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>React Example</title>
|
||||
</head>
|
||||
<body>
|
||||
<div id="root"></div>
|
||||
</body>
|
||||
</html>
|
|
@ -1,17 +0,0 @@
|
|||
# React.js Example
|
||||
|
||||
## Table of Contents
|
||||
0. [General](#general)
|
||||
1. [Links](#links)
|
||||
|
||||
# General
|
||||
|
||||
# Links
|
||||
|
||||
* [React setup with webpack for beginners](https://dev.to/deepanjangh/react-setup-with-webpack-for-beginners-2a8k)
|
||||
* [Production](https://webpack.js.org/guides/production/)
|
||||
* [Setup Development and Production Environment for React App](https://medium.com/freestoneinfotech/setup-development-and-production-environment-for-react-app-397c4cc9e382)
|
||||
* [HtmlWebpackPlugin](https://webpack.js.org/plugins/html-webpack-plugin/)
|
||||
* [load CSS](https://masteringjs.io/tutorials/webpack/css-loader)
|
||||
* [load CSS](https://webpack.js.org/loaders/css-loader/)
|
||||
* [load CSS](https://blog.jakoblind.no/css-modules-webpack/)
|
|
@ -1,32 +0,0 @@
|
|||
import axios from 'axios';
|
||||
import React, { useEffect, useState } from 'react';
|
||||
|
||||
import config from '../config';
|
||||
import {getAbsEntityCount} from '../utils/axios-utils';
|
||||
|
||||
export default function AbsEntityCount() {
|
||||
|
||||
const [absEntityCount, setAbsCount] = useState(null);
|
||||
|
||||
const handleAbsEntityCount = async () => {
|
||||
let absEntityCount = null;
|
||||
try {
|
||||
absEntityCount = await getAbsEntityCount(`${config.API}stops-count`);
|
||||
} catch (err) {
|
||||
console.error('handleAbsEntityCount(): err.message: ' + err.message);
|
||||
}
|
||||
setAbsCount(absEntityCount);
|
||||
};
|
||||
|
||||
useEffect(() => {
|
||||
handleAbsEntityCount();
|
||||
}, []);
|
||||
|
||||
return (
|
||||
<>
|
||||
<p>
|
||||
Abs Count: {absEntityCount ? absEntityCount : 'loading...'}
|
||||
</p>
|
||||
</>
|
||||
);
|
||||
};
|
|
@ -1,17 +0,0 @@
|
|||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
//destructure props
|
||||
const Hello = ({msg}) => {
|
||||
return (
|
||||
<>
|
||||
<div>{msg}</div>
|
||||
</>
|
||||
);
|
||||
}
|
||||
|
||||
export default Hello
|
||||
|
||||
Hello.propTypes = {
|
||||
msg: PropTypes.string,
|
||||
};
|
|
@ -1,3 +0,0 @@
|
|||
export default {
|
||||
API: 'https://test-api-data.vbn.de/data/',
|
||||
};
|
|
@ -1,17 +0,0 @@
|
|||
import React from 'react';
|
||||
import ReactDOM from 'react-dom';
|
||||
import App from './main';
|
||||
//TODO remove debugging
|
||||
if (process.env.NODE_ENV !== 'production') {
|
||||
console.log('development mode');
|
||||
}
|
||||
//since react 18
|
||||
import { createRoot } from 'react-dom/client';
|
||||
//create root container
|
||||
const root = createRoot(document.getElementById("root"));
|
||||
//render root app
|
||||
root.render(
|
||||
<React.StrictMode>
|
||||
<App />
|
||||
</React.StrictMode>
|
||||
);
|
|
@ -1,14 +0,0 @@
|
|||
import React from 'react';
|
||||
|
||||
import Home from './pages/home';
|
||||
import AbsEntityCount from './components/abs-entity-count';
|
||||
|
||||
export default function App() {
|
||||
return (
|
||||
<div>
|
||||
<h1>React.js</h1>
|
||||
<AbsEntityCount />
|
||||
<Home />
|
||||
</div>
|
||||
)
|
||||
}
|
|
@ -1,20 +0,0 @@
|
|||
{
|
||||
"queries": [
|
||||
{
|
||||
"title": "Second hand shops",
|
||||
"query": "https://overpass-api.de/api/interpreter?data=[out:json][timeout:60];relation(62531);map_to_area;nwr[shop=second_hand](area)->.shops;nwr[second_hand=yes](area)->.secondHands;(.shops;.secondHands;);out body center qt;"
|
||||
},
|
||||
{
|
||||
"title": "Organic bakeries",
|
||||
"query": "https://overpass-api.de/api/interpreter?data=[out:json][timeout:60];relation(62531);map_to_area;nwr[shop=bakery][organic=yes](area);out body center qt;"
|
||||
},
|
||||
{
|
||||
"title": "Organic only shops",
|
||||
"query": "https://overpass-api.de/api/interpreter?data=[out:json][timeout:60];relation(62531);map_to_area;nwr[shop][organic=only](area);out body center qt;"
|
||||
},
|
||||
{
|
||||
"title": "Public bookcases",
|
||||
"query": "https://overpass-api.de/api/interpreter?data=[out:json][timeout:60];relation(62531);map_to_area;nwr[amenity=public_bookcase](area);out body center qt;"
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,32 +0,0 @@
|
|||
import React from 'react';
|
||||
import Hello from '../components/hello';
|
||||
import '../style.css';
|
||||
|
||||
// import JSON
|
||||
import jsonOsmQuery from '../osm-query.json';
|
||||
|
||||
const Home = () => {
|
||||
|
||||
const rryOsmQuery = jsonOsmQuery.queries;
|
||||
|
||||
return (
|
||||
<>
|
||||
<h2>Home</h2>
|
||||
<h3>(React.js Lambda Function Component)</h3>
|
||||
<Hello msg="Hello World!" />
|
||||
<div className='container'>
|
||||
<p>Blog RryOsmQuery</p>
|
||||
<div className='rryOsmQuery'>
|
||||
{rryOsmQuery.map((query) => (
|
||||
<div className='query' key={query.id}>
|
||||
<p className='title'>{query.title}</p>
|
||||
<p className='content'>{query.query}</p>
|
||||
</div>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
</>
|
||||
);
|
||||
}
|
||||
|
||||
export default Home
|
|
@ -1,3 +0,0 @@
|
|||
h1 { color: red; }
|
||||
h2 { color: green; }
|
||||
h3 { color: blue; }
|
|
@ -1,18 +0,0 @@
|
|||
import axios from 'axios';
|
||||
|
||||
/**
|
||||
* HTTP GET request for absolute entity count
|
||||
* @param url recipient of the request
|
||||
*/
|
||||
export async function getAbsEntityCount(url) {
|
||||
|
||||
try {
|
||||
const res = await axios.get(url);
|
||||
const count = res.data[0].count;
|
||||
console.log('getAbsEntityCount(): count: ', count);
|
||||
return count;
|
||||
} catch (err) {
|
||||
console.error('getAbsEntityCount(): err.message: ' + err.message);
|
||||
return null;
|
||||
}
|
||||
};
|
|
@ -13,8 +13,8 @@
|
|||
"react-dom": "^18.0.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "7.18.13",
|
||||
"@babel/preset-env": "7.18.10",
|
||||
"@babel/core": "7.18.9",
|
||||
"@babel/preset-env": "7.18.9",
|
||||
"@babel/preset-react": "7.18.6",
|
||||
"babel-eslint": "10.1.0",
|
||||
"babel-loader": "8.2.5",
|
||||
|
@ -25,12 +25,12 @@
|
|||
"eslint-plugin-react": "7.30.1",
|
||||
"html-webpack-plugin": "5.5.0",
|
||||
"less": "4.1.3",
|
||||
"less-loader": "10.2.0",
|
||||
"less-loader": "11.0.0",
|
||||
"prettier": "2.7.1",
|
||||
"style-loader": "3.3.1",
|
||||
"webpack": "5.74.0",
|
||||
"webpack": "5.73.0",
|
||||
"webpack-cli": "4.10.0",
|
||||
"webpack-dev-server": "4.10.1"
|
||||
"webpack-dev-server": "4.9.3"
|
||||
}
|
||||
},
|
||||
"node_modules/@ampproject/remapping": {
|
||||
|
@ -68,21 +68,21 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@babel/core": {
|
||||
"version": "7.18.13",
|
||||
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.13.tgz",
|
||||
"integrity": "sha512-ZisbOvRRusFktksHSG6pjj1CSvkPkcZq/KHD45LAkVP/oiHJkNBZWfpvlLmX8OtHDG8IuzsFlVRWo08w7Qxn0A==",
|
||||
"version": "7.18.9",
|
||||
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.9.tgz",
|
||||
"integrity": "sha512-1LIb1eL8APMy91/IMW+31ckrfBM4yCoLaVzoDhZUKSM4cu1L1nIidyxkCgzPAgrC5WEz36IPEr/eSeSF9pIn+g==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@ampproject/remapping": "^2.1.0",
|
||||
"@babel/code-frame": "^7.18.6",
|
||||
"@babel/generator": "^7.18.13",
|
||||
"@babel/generator": "^7.18.9",
|
||||
"@babel/helper-compilation-targets": "^7.18.9",
|
||||
"@babel/helper-module-transforms": "^7.18.9",
|
||||
"@babel/helpers": "^7.18.9",
|
||||
"@babel/parser": "^7.18.13",
|
||||
"@babel/template": "^7.18.10",
|
||||
"@babel/traverse": "^7.18.13",
|
||||
"@babel/types": "^7.18.13",
|
||||
"@babel/parser": "^7.18.9",
|
||||
"@babel/template": "^7.18.6",
|
||||
"@babel/traverse": "^7.18.9",
|
||||
"@babel/types": "^7.18.9",
|
||||
"convert-source-map": "^1.7.0",
|
||||
"debug": "^4.1.0",
|
||||
"gensync": "^1.0.0-beta.2",
|
||||
|
@ -98,12 +98,12 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@babel/generator": {
|
||||
"version": "7.18.13",
|
||||
"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.13.tgz",
|
||||
"integrity": "sha512-CkPg8ySSPuHTYPJYo7IRALdqyjM9HCbt/3uOBEFbzyGVP6Mn8bwFPB0jX6982JVNBlYzM1nnPkfjuXSOPtQeEQ==",
|
||||
"version": "7.18.9",
|
||||
"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.9.tgz",
|
||||
"integrity": "sha512-wt5Naw6lJrL1/SGkipMiFxJjtyczUWTP38deiP1PO60HsBjDeKk08CGC3S8iVuvf0FmTdgKwU1KIXzSKL1G0Ug==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/types": "^7.18.13",
|
||||
"@babel/types": "^7.18.9",
|
||||
"@jridgewell/gen-mapping": "^0.3.2",
|
||||
"jsesc": "^2.5.1"
|
||||
},
|
||||
|
@ -206,13 +206,15 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@babel/helper-define-polyfill-provider": {
|
||||
"version": "0.3.2",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.2.tgz",
|
||||
"integrity": "sha512-r9QJJ+uDWrd+94BSPcP6/de67ygLtvVy6cK4luE6MOuDsZIdoaPBnfSpbO/+LTifjPckbKXRuI9BB/Z2/y3iTg==",
|
||||
"version": "0.3.1",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.1.tgz",
|
||||
"integrity": "sha512-J9hGMpJQmtWmj46B3kBHmL38UhJGhYX7eqkcq+2gsstyYt341HmPeWspihX43yVRA0mS+8GGk2Gckc7bY/HCmA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/helper-compilation-targets": "^7.17.7",
|
||||
"@babel/helper-plugin-utils": "^7.16.7",
|
||||
"@babel/helper-compilation-targets": "^7.13.0",
|
||||
"@babel/helper-module-imports": "^7.12.13",
|
||||
"@babel/helper-plugin-utils": "^7.13.0",
|
||||
"@babel/traverse": "^7.13.0",
|
||||
"debug": "^4.1.1",
|
||||
"lodash.debounce": "^4.0.8",
|
||||
"resolve": "^1.14.2",
|
||||
|
@ -402,15 +404,6 @@
|
|||
"node": ">=6.9.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@babel/helper-string-parser": {
|
||||
"version": "7.18.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz",
|
||||
"integrity": "sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=6.9.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@babel/helper-validator-identifier": {
|
||||
"version": "7.18.6",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz",
|
||||
|
@ -473,9 +466,9 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@babel/parser": {
|
||||
"version": "7.18.13",
|
||||
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.13.tgz",
|
||||
"integrity": "sha512-dgXcIfMuQ0kgzLB2b9tRZs7TTFFaGM2AbtA4fJgUUYukzGH4jwsS7hzQHEGs67jdehpm22vkgKwvbU+aEflgwg==",
|
||||
"version": "7.18.9",
|
||||
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.9.tgz",
|
||||
"integrity": "sha512-9uJveS9eY9DJ0t64YbIBZICtJy8a5QrDEVdiLCG97fVLpDTpGX7t8mMSb6OWw6Lrnjqj4O8zwjELX3dhoMgiBg==",
|
||||
"dev": true,
|
||||
"bin": {
|
||||
"parser": "bin/babel-parser.js"
|
||||
|
@ -517,14 +510,14 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@babel/plugin-proposal-async-generator-functions": {
|
||||
"version": "7.18.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.18.10.tgz",
|
||||
"integrity": "sha512-1mFuY2TOsR1hxbjCo4QL+qlIjV07p4H4EUYw2J/WCqsvFV6V9X9z9YhXbWndc/4fw+hYGlDT7egYxliMp5O6Ew==",
|
||||
"version": "7.18.6",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.18.6.tgz",
|
||||
"integrity": "sha512-WAz4R9bvozx4qwf74M+sfqPMKfSqwM0phxPTR6iJIi8robgzXwkEgmeJG1gEKhm6sDqT/U9aV3lfcqybIpev8w==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/helper-environment-visitor": "^7.18.9",
|
||||
"@babel/helper-plugin-utils": "^7.18.9",
|
||||
"@babel/helper-remap-async-to-generator": "^7.18.9",
|
||||
"@babel/helper-environment-visitor": "^7.18.6",
|
||||
"@babel/helper-plugin-utils": "^7.18.6",
|
||||
"@babel/helper-remap-async-to-generator": "^7.18.6",
|
||||
"@babel/plugin-syntax-async-generators": "^7.8.4"
|
||||
},
|
||||
"engines": {
|
||||
|
@ -1515,12 +1508,12 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@babel/plugin-transform-unicode-escapes": {
|
||||
"version": "7.18.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz",
|
||||
"integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==",
|
||||
"version": "7.18.6",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.6.tgz",
|
||||
"integrity": "sha512-XNRwQUXYMP7VLuy54cr/KS/WeL3AZeORhrmeZ7iewgu+X2eBqmpaLI/hzqr9ZxCeUoq0ASK4GUzSM0BDhZkLFw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/helper-plugin-utils": "^7.18.9"
|
||||
"@babel/helper-plugin-utils": "^7.18.6"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=6.9.0"
|
||||
|
@ -1546,9 +1539,9 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@babel/preset-env": {
|
||||
"version": "7.18.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.10.tgz",
|
||||
"integrity": "sha512-wVxs1yjFdW3Z/XkNfXKoblxoHgbtUF7/l3PvvP4m02Qz9TZ6uZGxRVYjSQeR87oQmHco9zWitW5J82DJ7sCjvA==",
|
||||
"version": "7.18.9",
|
||||
"resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.9.tgz",
|
||||
"integrity": "sha512-75pt/q95cMIHWssYtyfjVlvI+QEZQThQbKvR9xH+F/Agtw/s4Wfc2V9Bwd/P39VtixB7oWxGdH4GteTTwYJWMg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/compat-data": "^7.18.8",
|
||||
|
@ -1557,7 +1550,7 @@
|
|||
"@babel/helper-validator-option": "^7.18.6",
|
||||
"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6",
|
||||
"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9",
|
||||
"@babel/plugin-proposal-async-generator-functions": "^7.18.10",
|
||||
"@babel/plugin-proposal-async-generator-functions": "^7.18.6",
|
||||
"@babel/plugin-proposal-class-properties": "^7.18.6",
|
||||
"@babel/plugin-proposal-class-static-block": "^7.18.6",
|
||||
"@babel/plugin-proposal-dynamic-import": "^7.18.6",
|
||||
|
@ -1617,13 +1610,13 @@
|
|||
"@babel/plugin-transform-sticky-regex": "^7.18.6",
|
||||
"@babel/plugin-transform-template-literals": "^7.18.9",
|
||||
"@babel/plugin-transform-typeof-symbol": "^7.18.9",
|
||||
"@babel/plugin-transform-unicode-escapes": "^7.18.10",
|
||||
"@babel/plugin-transform-unicode-escapes": "^7.18.6",
|
||||
"@babel/plugin-transform-unicode-regex": "^7.18.6",
|
||||
"@babel/preset-modules": "^0.1.5",
|
||||
"@babel/types": "^7.18.10",
|
||||
"babel-plugin-polyfill-corejs2": "^0.3.2",
|
||||
"babel-plugin-polyfill-corejs3": "^0.5.3",
|
||||
"babel-plugin-polyfill-regenerator": "^0.4.0",
|
||||
"@babel/types": "^7.18.9",
|
||||
"babel-plugin-polyfill-corejs2": "^0.3.1",
|
||||
"babel-plugin-polyfill-corejs3": "^0.5.2",
|
||||
"babel-plugin-polyfill-regenerator": "^0.3.1",
|
||||
"core-js-compat": "^3.22.1",
|
||||
"semver": "^6.3.0"
|
||||
},
|
||||
|
@ -1683,33 +1676,33 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@babel/template": {
|
||||
"version": "7.18.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz",
|
||||
"integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==",
|
||||
"version": "7.18.6",
|
||||
"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.6.tgz",
|
||||
"integrity": "sha512-JoDWzPe+wgBsTTgdnIma3iHNFC7YVJoPssVBDjiHfNlyt4YcunDtcDOUmfVDfCK5MfdsaIoX9PkijPhjH3nYUw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/code-frame": "^7.18.6",
|
||||
"@babel/parser": "^7.18.10",
|
||||
"@babel/types": "^7.18.10"
|
||||
"@babel/parser": "^7.18.6",
|
||||
"@babel/types": "^7.18.6"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=6.9.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@babel/traverse": {
|
||||
"version": "7.18.13",
|
||||
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.13.tgz",
|
||||
"integrity": "sha512-N6kt9X1jRMLPxxxPYWi7tgvJRH/rtoU+dbKAPDM44RFHiMH8igdsaSBgFeskhSl/kLWLDUvIh1RXCrTmg0/zvA==",
|
||||
"version": "7.18.9",
|
||||
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.9.tgz",
|
||||
"integrity": "sha512-LcPAnujXGwBgv3/WHv01pHtb2tihcyW1XuL9wd7jqh1Z8AQkTd+QVjMrMijrln0T7ED3UXLIy36P9Ao7W75rYg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/code-frame": "^7.18.6",
|
||||
"@babel/generator": "^7.18.13",
|
||||
"@babel/generator": "^7.18.9",
|
||||
"@babel/helper-environment-visitor": "^7.18.9",
|
||||
"@babel/helper-function-name": "^7.18.9",
|
||||
"@babel/helper-hoist-variables": "^7.18.6",
|
||||
"@babel/helper-split-export-declaration": "^7.18.6",
|
||||
"@babel/parser": "^7.18.13",
|
||||
"@babel/types": "^7.18.13",
|
||||
"@babel/parser": "^7.18.9",
|
||||
"@babel/types": "^7.18.9",
|
||||
"debug": "^4.1.0",
|
||||
"globals": "^11.1.0"
|
||||
},
|
||||
|
@ -1718,12 +1711,11 @@
|
|||
}
|
||||
},
|
||||
"node_modules/@babel/types": {
|
||||
"version": "7.18.13",
|
||||
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.13.tgz",
|
||||
"integrity": "sha512-ePqfTihzW0W6XAU+aMw2ykilisStJfDnsejDCXRchCcMJ4O0+8DhPXf2YUbZ6wjBlsEmZwLK/sPweWtu8hcJYQ==",
|
||||
"version": "7.18.9",
|
||||
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.9.tgz",
|
||||
"integrity": "sha512-WwMLAg2MvJmt/rKEVQBBhIVffMmnilX4oe0sRe7iPOHIGsqpruFHHdrfj4O1CMMtgMtCU4oPafZjDPCRgO57Wg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/helper-string-parser": "^7.18.10",
|
||||
"@babel/helper-validator-identifier": "^7.18.6",
|
||||
"to-fast-properties": "^2.0.0"
|
||||
},
|
||||
|
@ -2505,13 +2497,13 @@
|
|||
}
|
||||
},
|
||||
"node_modules/babel-plugin-polyfill-corejs2": {
|
||||
"version": "0.3.2",
|
||||
"resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.2.tgz",
|
||||
"integrity": "sha512-LPnodUl3lS0/4wN3Rb+m+UK8s7lj2jcLRrjho4gLw+OJs+I4bvGXshINesY5xx/apM+biTnQ9reDI8yj+0M5+Q==",
|
||||
"version": "0.3.1",
|
||||
"resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.1.tgz",
|
||||
"integrity": "sha512-v7/T6EQcNfVLfcN2X8Lulb7DjprieyLWJK/zOWH5DUYcAgex9sP3h25Q+DLsX9TloXe3y1O8l2q2Jv9q8UVB9w==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/compat-data": "^7.17.7",
|
||||
"@babel/helper-define-polyfill-provider": "^0.3.2",
|
||||
"@babel/compat-data": "^7.13.11",
|
||||
"@babel/helper-define-polyfill-provider": "^0.3.1",
|
||||
"semver": "^6.1.1"
|
||||
},
|
||||
"peerDependencies": {
|
||||
|
@ -2519,12 +2511,12 @@
|
|||
}
|
||||
},
|
||||
"node_modules/babel-plugin-polyfill-corejs3": {
|
||||
"version": "0.5.3",
|
||||
"resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.3.tgz",
|
||||
"integrity": "sha512-zKsXDh0XjnrUEW0mxIHLfjBfnXSMr5Q/goMe/fxpQnLm07mcOZiIZHBNWCMx60HmdvjxfXcalac0tfFg0wqxyw==",
|
||||
"version": "0.5.2",
|
||||
"resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.2.tgz",
|
||||
"integrity": "sha512-G3uJih0XWiID451fpeFaYGVuxHEjzKTHtc9uGFEjR6hHrvNzeS/PX+LLLcetJcytsB5m4j+K3o/EpXJNb/5IEQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/helper-define-polyfill-provider": "^0.3.2",
|
||||
"@babel/helper-define-polyfill-provider": "^0.3.1",
|
||||
"core-js-compat": "^3.21.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
|
@ -2532,12 +2524,12 @@
|
|||
}
|
||||
},
|
||||
"node_modules/babel-plugin-polyfill-regenerator": {
|
||||
"version": "0.4.0",
|
||||
"resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.0.tgz",
|
||||
"integrity": "sha512-RW1cnryiADFeHmfLS+WW/G431p1PsW5qdRdz0SDRi7TKcUgc7Oh/uXkT7MZ/+tGsT1BkczEAmD5XjUyJ5SWDTw==",
|
||||
"version": "0.3.1",
|
||||
"resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz",
|
||||
"integrity": "sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/helper-define-polyfill-provider": "^0.3.2"
|
||||
"@babel/helper-define-polyfill-provider": "^0.3.1"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@babel/core": "^7.0.0-0"
|
||||
|
@ -5269,15 +5261,15 @@
|
|||
}
|
||||
},
|
||||
"node_modules/less-loader": {
|
||||
"version": "10.2.0",
|
||||
"resolved": "https://registry.npmjs.org/less-loader/-/less-loader-10.2.0.tgz",
|
||||
"integrity": "sha512-AV5KHWvCezW27GT90WATaDnfXBv99llDbtaj4bshq6DvAihMdNjaPDcUMa6EXKLRF+P2opFenJp89BXg91XLYg==",
|
||||
"version": "11.0.0",
|
||||
"resolved": "https://registry.npmjs.org/less-loader/-/less-loader-11.0.0.tgz",
|
||||
"integrity": "sha512-9+LOWWjuoectIEx3zrfN83NAGxSUB5pWEabbbidVQVgZhN+wN68pOvuyirVlH1IK4VT1f3TmlyvAnCXh8O5KEw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"klona": "^2.0.4"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 12.13.0"
|
||||
"node": ">= 14.15.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
|
@ -7583,9 +7575,9 @@
|
|||
}
|
||||
},
|
||||
"node_modules/webpack": {
|
||||
"version": "5.74.0",
|
||||
"resolved": "https://registry.npmjs.org/webpack/-/webpack-5.74.0.tgz",
|
||||
"integrity": "sha512-A2InDwnhhGN4LYctJj6M1JEaGL7Luj6LOmyBHjcI8529cm5p6VXiTIW2sn6ffvEAKmveLzvu4jrihwXtPojlAA==",
|
||||
"version": "5.73.0",
|
||||
"resolved": "https://registry.npmjs.org/webpack/-/webpack-5.73.0.tgz",
|
||||
"integrity": "sha512-svjudQRPPa0YiOYa2lM/Gacw0r6PvxptHj4FuEKQ2kX05ZLkjbVc5MnPs6its5j7IZljnIqSVo/OsY2X0IpHGA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@types/eslint-scope": "^3.7.3",
|
||||
|
@ -7593,11 +7585,11 @@
|
|||
"@webassemblyjs/ast": "1.11.1",
|
||||
"@webassemblyjs/wasm-edit": "1.11.1",
|
||||
"@webassemblyjs/wasm-parser": "1.11.1",
|
||||
"acorn": "^8.7.1",
|
||||
"acorn": "^8.4.1",
|
||||
"acorn-import-assertions": "^1.7.6",
|
||||
"browserslist": "^4.14.5",
|
||||
"chrome-trace-event": "^1.0.2",
|
||||
"enhanced-resolve": "^5.10.0",
|
||||
"enhanced-resolve": "^5.9.3",
|
||||
"es-module-lexer": "^0.9.0",
|
||||
"eslint-scope": "5.1.1",
|
||||
"events": "^3.2.0",
|
||||
|
@ -7610,7 +7602,7 @@
|
|||
"schema-utils": "^3.1.0",
|
||||
"tapable": "^2.1.1",
|
||||
"terser-webpack-plugin": "^5.1.3",
|
||||
"watchpack": "^2.4.0",
|
||||
"watchpack": "^2.3.1",
|
||||
"webpack-sources": "^3.2.3"
|
||||
},
|
||||
"bin": {
|
||||
|
@ -7762,9 +7754,9 @@
|
|||
}
|
||||
},
|
||||
"node_modules/webpack-dev-server": {
|
||||
"version": "4.10.1",
|
||||
"resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.10.1.tgz",
|
||||
"integrity": "sha512-FIzMq3jbBarz3ld9l7rbM7m6Rj1lOsgq/DyLGMX/fPEB1UBUPtf5iL/4eNfhx8YYJTRlzfv107UfWSWcBK5Odw==",
|
||||
"version": "4.9.3",
|
||||
"resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.9.3.tgz",
|
||||
"integrity": "sha512-3qp/eoboZG5/6QgiZ3llN8TUzkSpYg1Ko9khWX1h40MIEUNS2mDoIa8aXsPfskER+GbTvs/IJZ1QTBBhhuetSw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@types/bonjour": "^3.5.9",
|
||||
|
@ -8060,21 +8052,21 @@
|
|||
"dev": true
|
||||
},
|
||||
"@babel/core": {
|
||||
"version": "7.18.13",
|
||||
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.13.tgz",
|
||||
"integrity": "sha512-ZisbOvRRusFktksHSG6pjj1CSvkPkcZq/KHD45LAkVP/oiHJkNBZWfpvlLmX8OtHDG8IuzsFlVRWo08w7Qxn0A==",
|
||||
"version": "7.18.9",
|
||||
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.9.tgz",
|
||||
"integrity": "sha512-1LIb1eL8APMy91/IMW+31ckrfBM4yCoLaVzoDhZUKSM4cu1L1nIidyxkCgzPAgrC5WEz36IPEr/eSeSF9pIn+g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@ampproject/remapping": "^2.1.0",
|
||||
"@babel/code-frame": "^7.18.6",
|
||||
"@babel/generator": "^7.18.13",
|
||||
"@babel/generator": "^7.18.9",
|
||||
"@babel/helper-compilation-targets": "^7.18.9",
|
||||
"@babel/helper-module-transforms": "^7.18.9",
|
||||
"@babel/helpers": "^7.18.9",
|
||||
"@babel/parser": "^7.18.13",
|
||||
"@babel/template": "^7.18.10",
|
||||
"@babel/traverse": "^7.18.13",
|
||||
"@babel/types": "^7.18.13",
|
||||
"@babel/parser": "^7.18.9",
|
||||
"@babel/template": "^7.18.6",
|
||||
"@babel/traverse": "^7.18.9",
|
||||
"@babel/types": "^7.18.9",
|
||||
"convert-source-map": "^1.7.0",
|
||||
"debug": "^4.1.0",
|
||||
"gensync": "^1.0.0-beta.2",
|
||||
|
@ -8083,12 +8075,12 @@
|
|||
}
|
||||
},
|
||||
"@babel/generator": {
|
||||
"version": "7.18.13",
|
||||
"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.13.tgz",
|
||||
"integrity": "sha512-CkPg8ySSPuHTYPJYo7IRALdqyjM9HCbt/3uOBEFbzyGVP6Mn8bwFPB0jX6982JVNBlYzM1nnPkfjuXSOPtQeEQ==",
|
||||
"version": "7.18.9",
|
||||
"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.9.tgz",
|
||||
"integrity": "sha512-wt5Naw6lJrL1/SGkipMiFxJjtyczUWTP38deiP1PO60HsBjDeKk08CGC3S8iVuvf0FmTdgKwU1KIXzSKL1G0Ug==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/types": "^7.18.13",
|
||||
"@babel/types": "^7.18.9",
|
||||
"@jridgewell/gen-mapping": "^0.3.2",
|
||||
"jsesc": "^2.5.1"
|
||||
},
|
||||
|
@ -8163,13 +8155,15 @@
|
|||
}
|
||||
},
|
||||
"@babel/helper-define-polyfill-provider": {
|
||||
"version": "0.3.2",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.2.tgz",
|
||||
"integrity": "sha512-r9QJJ+uDWrd+94BSPcP6/de67ygLtvVy6cK4luE6MOuDsZIdoaPBnfSpbO/+LTifjPckbKXRuI9BB/Z2/y3iTg==",
|
||||
"version": "0.3.1",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.1.tgz",
|
||||
"integrity": "sha512-J9hGMpJQmtWmj46B3kBHmL38UhJGhYX7eqkcq+2gsstyYt341HmPeWspihX43yVRA0mS+8GGk2Gckc7bY/HCmA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/helper-compilation-targets": "^7.17.7",
|
||||
"@babel/helper-plugin-utils": "^7.16.7",
|
||||
"@babel/helper-compilation-targets": "^7.13.0",
|
||||
"@babel/helper-module-imports": "^7.12.13",
|
||||
"@babel/helper-plugin-utils": "^7.13.0",
|
||||
"@babel/traverse": "^7.13.0",
|
||||
"debug": "^4.1.1",
|
||||
"lodash.debounce": "^4.0.8",
|
||||
"resolve": "^1.14.2",
|
||||
|
@ -8311,12 +8305,6 @@
|
|||
"@babel/types": "^7.18.6"
|
||||
}
|
||||
},
|
||||
"@babel/helper-string-parser": {
|
||||
"version": "7.18.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz",
|
||||
"integrity": "sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==",
|
||||
"dev": true
|
||||
},
|
||||
"@babel/helper-validator-identifier": {
|
||||
"version": "7.18.6",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz",
|
||||
|
@ -8364,9 +8352,9 @@
|
|||
}
|
||||
},
|
||||
"@babel/parser": {
|
||||
"version": "7.18.13",
|
||||
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.13.tgz",
|
||||
"integrity": "sha512-dgXcIfMuQ0kgzLB2b9tRZs7TTFFaGM2AbtA4fJgUUYukzGH4jwsS7hzQHEGs67jdehpm22vkgKwvbU+aEflgwg==",
|
||||
"version": "7.18.9",
|
||||
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.9.tgz",
|
||||
"integrity": "sha512-9uJveS9eY9DJ0t64YbIBZICtJy8a5QrDEVdiLCG97fVLpDTpGX7t8mMSb6OWw6Lrnjqj4O8zwjELX3dhoMgiBg==",
|
||||
"dev": true
|
||||
},
|
||||
"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": {
|
||||
|
@ -8390,14 +8378,14 @@
|
|||
}
|
||||
},
|
||||
"@babel/plugin-proposal-async-generator-functions": {
|
||||
"version": "7.18.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.18.10.tgz",
|
||||
"integrity": "sha512-1mFuY2TOsR1hxbjCo4QL+qlIjV07p4H4EUYw2J/WCqsvFV6V9X9z9YhXbWndc/4fw+hYGlDT7egYxliMp5O6Ew==",
|
||||
"version": "7.18.6",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.18.6.tgz",
|
||||
"integrity": "sha512-WAz4R9bvozx4qwf74M+sfqPMKfSqwM0phxPTR6iJIi8robgzXwkEgmeJG1gEKhm6sDqT/U9aV3lfcqybIpev8w==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/helper-environment-visitor": "^7.18.9",
|
||||
"@babel/helper-plugin-utils": "^7.18.9",
|
||||
"@babel/helper-remap-async-to-generator": "^7.18.9",
|
||||
"@babel/helper-environment-visitor": "^7.18.6",
|
||||
"@babel/helper-plugin-utils": "^7.18.6",
|
||||
"@babel/helper-remap-async-to-generator": "^7.18.6",
|
||||
"@babel/plugin-syntax-async-generators": "^7.8.4"
|
||||
}
|
||||
},
|
||||
|
@ -9031,12 +9019,12 @@
|
|||
}
|
||||
},
|
||||
"@babel/plugin-transform-unicode-escapes": {
|
||||
"version": "7.18.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz",
|
||||
"integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==",
|
||||
"version": "7.18.6",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.6.tgz",
|
||||
"integrity": "sha512-XNRwQUXYMP7VLuy54cr/KS/WeL3AZeORhrmeZ7iewgu+X2eBqmpaLI/hzqr9ZxCeUoq0ASK4GUzSM0BDhZkLFw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/helper-plugin-utils": "^7.18.9"
|
||||
"@babel/helper-plugin-utils": "^7.18.6"
|
||||
}
|
||||
},
|
||||
"@babel/plugin-transform-unicode-regex": {
|
||||
|
@ -9050,9 +9038,9 @@
|
|||
}
|
||||
},
|
||||
"@babel/preset-env": {
|
||||
"version": "7.18.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.10.tgz",
|
||||
"integrity": "sha512-wVxs1yjFdW3Z/XkNfXKoblxoHgbtUF7/l3PvvP4m02Qz9TZ6uZGxRVYjSQeR87oQmHco9zWitW5J82DJ7sCjvA==",
|
||||
"version": "7.18.9",
|
||||
"resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.9.tgz",
|
||||
"integrity": "sha512-75pt/q95cMIHWssYtyfjVlvI+QEZQThQbKvR9xH+F/Agtw/s4Wfc2V9Bwd/P39VtixB7oWxGdH4GteTTwYJWMg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/compat-data": "^7.18.8",
|
||||
|
@ -9061,7 +9049,7 @@
|
|||
"@babel/helper-validator-option": "^7.18.6",
|
||||
"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6",
|
||||
"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9",
|
||||
"@babel/plugin-proposal-async-generator-functions": "^7.18.10",
|
||||
"@babel/plugin-proposal-async-generator-functions": "^7.18.6",
|
||||
"@babel/plugin-proposal-class-properties": "^7.18.6",
|
||||
"@babel/plugin-proposal-class-static-block": "^7.18.6",
|
||||
"@babel/plugin-proposal-dynamic-import": "^7.18.6",
|
||||
|
@ -9121,13 +9109,13 @@
|
|||
"@babel/plugin-transform-sticky-regex": "^7.18.6",
|
||||
"@babel/plugin-transform-template-literals": "^7.18.9",
|
||||
"@babel/plugin-transform-typeof-symbol": "^7.18.9",
|
||||
"@babel/plugin-transform-unicode-escapes": "^7.18.10",
|
||||
"@babel/plugin-transform-unicode-escapes": "^7.18.6",
|
||||
"@babel/plugin-transform-unicode-regex": "^7.18.6",
|
||||
"@babel/preset-modules": "^0.1.5",
|
||||
"@babel/types": "^7.18.10",
|
||||
"babel-plugin-polyfill-corejs2": "^0.3.2",
|
||||
"babel-plugin-polyfill-corejs3": "^0.5.3",
|
||||
"babel-plugin-polyfill-regenerator": "^0.4.0",
|
||||
"@babel/types": "^7.18.9",
|
||||
"babel-plugin-polyfill-corejs2": "^0.3.1",
|
||||
"babel-plugin-polyfill-corejs3": "^0.5.2",
|
||||
"babel-plugin-polyfill-regenerator": "^0.3.1",
|
||||
"core-js-compat": "^3.22.1",
|
||||
"semver": "^6.3.0"
|
||||
}
|
||||
|
@ -9169,41 +9157,40 @@
|
|||
}
|
||||
},
|
||||
"@babel/template": {
|
||||
"version": "7.18.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz",
|
||||
"integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==",
|
||||
"version": "7.18.6",
|
||||
"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.6.tgz",
|
||||
"integrity": "sha512-JoDWzPe+wgBsTTgdnIma3iHNFC7YVJoPssVBDjiHfNlyt4YcunDtcDOUmfVDfCK5MfdsaIoX9PkijPhjH3nYUw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/code-frame": "^7.18.6",
|
||||
"@babel/parser": "^7.18.10",
|
||||
"@babel/types": "^7.18.10"
|
||||
"@babel/parser": "^7.18.6",
|
||||
"@babel/types": "^7.18.6"
|
||||
}
|
||||
},
|
||||
"@babel/traverse": {
|
||||
"version": "7.18.13",
|
||||
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.13.tgz",
|
||||
"integrity": "sha512-N6kt9X1jRMLPxxxPYWi7tgvJRH/rtoU+dbKAPDM44RFHiMH8igdsaSBgFeskhSl/kLWLDUvIh1RXCrTmg0/zvA==",
|
||||
"version": "7.18.9",
|
||||
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.9.tgz",
|
||||
"integrity": "sha512-LcPAnujXGwBgv3/WHv01pHtb2tihcyW1XuL9wd7jqh1Z8AQkTd+QVjMrMijrln0T7ED3UXLIy36P9Ao7W75rYg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/code-frame": "^7.18.6",
|
||||
"@babel/generator": "^7.18.13",
|
||||
"@babel/generator": "^7.18.9",
|
||||
"@babel/helper-environment-visitor": "^7.18.9",
|
||||
"@babel/helper-function-name": "^7.18.9",
|
||||
"@babel/helper-hoist-variables": "^7.18.6",
|
||||
"@babel/helper-split-export-declaration": "^7.18.6",
|
||||
"@babel/parser": "^7.18.13",
|
||||
"@babel/types": "^7.18.13",
|
||||
"@babel/parser": "^7.18.9",
|
||||
"@babel/types": "^7.18.9",
|
||||
"debug": "^4.1.0",
|
||||
"globals": "^11.1.0"
|
||||
}
|
||||
},
|
||||
"@babel/types": {
|
||||
"version": "7.18.13",
|
||||
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.13.tgz",
|
||||
"integrity": "sha512-ePqfTihzW0W6XAU+aMw2ykilisStJfDnsejDCXRchCcMJ4O0+8DhPXf2YUbZ6wjBlsEmZwLK/sPweWtu8hcJYQ==",
|
||||
"version": "7.18.9",
|
||||
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.9.tgz",
|
||||
"integrity": "sha512-WwMLAg2MvJmt/rKEVQBBhIVffMmnilX4oe0sRe7iPOHIGsqpruFHHdrfj4O1CMMtgMtCU4oPafZjDPCRgO57Wg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/helper-string-parser": "^7.18.10",
|
||||
"@babel/helper-validator-identifier": "^7.18.6",
|
||||
"to-fast-properties": "^2.0.0"
|
||||
}
|
||||
|
@ -9872,33 +9859,33 @@
|
|||
}
|
||||
},
|
||||
"babel-plugin-polyfill-corejs2": {
|
||||
"version": "0.3.2",
|
||||
"resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.2.tgz",
|
||||
"integrity": "sha512-LPnodUl3lS0/4wN3Rb+m+UK8s7lj2jcLRrjho4gLw+OJs+I4bvGXshINesY5xx/apM+biTnQ9reDI8yj+0M5+Q==",
|
||||
"version": "0.3.1",
|
||||
"resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.1.tgz",
|
||||
"integrity": "sha512-v7/T6EQcNfVLfcN2X8Lulb7DjprieyLWJK/zOWH5DUYcAgex9sP3h25Q+DLsX9TloXe3y1O8l2q2Jv9q8UVB9w==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/compat-data": "^7.17.7",
|
||||
"@babel/helper-define-polyfill-provider": "^0.3.2",
|
||||
"@babel/compat-data": "^7.13.11",
|
||||
"@babel/helper-define-polyfill-provider": "^0.3.1",
|
||||
"semver": "^6.1.1"
|
||||
}
|
||||
},
|
||||
"babel-plugin-polyfill-corejs3": {
|
||||
"version": "0.5.3",
|
||||
"resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.3.tgz",
|
||||
"integrity": "sha512-zKsXDh0XjnrUEW0mxIHLfjBfnXSMr5Q/goMe/fxpQnLm07mcOZiIZHBNWCMx60HmdvjxfXcalac0tfFg0wqxyw==",
|
||||
"version": "0.5.2",
|
||||
"resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.2.tgz",
|
||||
"integrity": "sha512-G3uJih0XWiID451fpeFaYGVuxHEjzKTHtc9uGFEjR6hHrvNzeS/PX+LLLcetJcytsB5m4j+K3o/EpXJNb/5IEQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/helper-define-polyfill-provider": "^0.3.2",
|
||||
"@babel/helper-define-polyfill-provider": "^0.3.1",
|
||||
"core-js-compat": "^3.21.0"
|
||||
}
|
||||
},
|
||||
"babel-plugin-polyfill-regenerator": {
|
||||
"version": "0.4.0",
|
||||
"resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.0.tgz",
|
||||
"integrity": "sha512-RW1cnryiADFeHmfLS+WW/G431p1PsW5qdRdz0SDRi7TKcUgc7Oh/uXkT7MZ/+tGsT1BkczEAmD5XjUyJ5SWDTw==",
|
||||
"version": "0.3.1",
|
||||
"resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz",
|
||||
"integrity": "sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/helper-define-polyfill-provider": "^0.3.2"
|
||||
"@babel/helper-define-polyfill-provider": "^0.3.1"
|
||||
}
|
||||
},
|
||||
"balanced-match": {
|
||||
|
@ -11923,9 +11910,9 @@
|
|||
}
|
||||
},
|
||||
"less-loader": {
|
||||
"version": "10.2.0",
|
||||
"resolved": "https://registry.npmjs.org/less-loader/-/less-loader-10.2.0.tgz",
|
||||
"integrity": "sha512-AV5KHWvCezW27GT90WATaDnfXBv99llDbtaj4bshq6DvAihMdNjaPDcUMa6EXKLRF+P2opFenJp89BXg91XLYg==",
|
||||
"version": "11.0.0",
|
||||
"resolved": "https://registry.npmjs.org/less-loader/-/less-loader-11.0.0.tgz",
|
||||
"integrity": "sha512-9+LOWWjuoectIEx3zrfN83NAGxSUB5pWEabbbidVQVgZhN+wN68pOvuyirVlH1IK4VT1f3TmlyvAnCXh8O5KEw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"klona": "^2.0.4"
|
||||
|
@ -13646,9 +13633,9 @@
|
|||
}
|
||||
},
|
||||
"webpack": {
|
||||
"version": "5.74.0",
|
||||
"resolved": "https://registry.npmjs.org/webpack/-/webpack-5.74.0.tgz",
|
||||
"integrity": "sha512-A2InDwnhhGN4LYctJj6M1JEaGL7Luj6LOmyBHjcI8529cm5p6VXiTIW2sn6ffvEAKmveLzvu4jrihwXtPojlAA==",
|
||||
"version": "5.73.0",
|
||||
"resolved": "https://registry.npmjs.org/webpack/-/webpack-5.73.0.tgz",
|
||||
"integrity": "sha512-svjudQRPPa0YiOYa2lM/Gacw0r6PvxptHj4FuEKQ2kX05ZLkjbVc5MnPs6its5j7IZljnIqSVo/OsY2X0IpHGA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@types/eslint-scope": "^3.7.3",
|
||||
|
@ -13656,11 +13643,11 @@
|
|||
"@webassemblyjs/ast": "1.11.1",
|
||||
"@webassemblyjs/wasm-edit": "1.11.1",
|
||||
"@webassemblyjs/wasm-parser": "1.11.1",
|
||||
"acorn": "^8.7.1",
|
||||
"acorn": "^8.4.1",
|
||||
"acorn-import-assertions": "^1.7.6",
|
||||
"browserslist": "^4.14.5",
|
||||
"chrome-trace-event": "^1.0.2",
|
||||
"enhanced-resolve": "^5.10.0",
|
||||
"enhanced-resolve": "^5.9.3",
|
||||
"es-module-lexer": "^0.9.0",
|
||||
"eslint-scope": "5.1.1",
|
||||
"events": "^3.2.0",
|
||||
|
@ -13673,7 +13660,7 @@
|
|||
"schema-utils": "^3.1.0",
|
||||
"tapable": "^2.1.1",
|
||||
"terser-webpack-plugin": "^5.1.3",
|
||||
"watchpack": "^2.4.0",
|
||||
"watchpack": "^2.3.1",
|
||||
"webpack-sources": "^3.2.3"
|
||||
},
|
||||
"dependencies": {
|
||||
|
@ -13786,9 +13773,9 @@
|
|||
}
|
||||
},
|
||||
"webpack-dev-server": {
|
||||
"version": "4.10.1",
|
||||
"resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.10.1.tgz",
|
||||
"integrity": "sha512-FIzMq3jbBarz3ld9l7rbM7m6Rj1lOsgq/DyLGMX/fPEB1UBUPtf5iL/4eNfhx8YYJTRlzfv107UfWSWcBK5Odw==",
|
||||
"version": "4.9.3",
|
||||
"resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.9.3.tgz",
|
||||
"integrity": "sha512-3qp/eoboZG5/6QgiZ3llN8TUzkSpYg1Ko9khWX1h40MIEUNS2mDoIa8aXsPfskER+GbTvs/IJZ1QTBBhhuetSw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@types/bonjour": "^3.5.9",
|
||||
|
|
|
@ -17,8 +17,8 @@
|
|||
"react-dom": "^18.0.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "7.18.13",
|
||||
"@babel/preset-env": "7.18.10",
|
||||
"@babel/core": "7.18.9",
|
||||
"@babel/preset-env": "7.18.9",
|
||||
"@babel/preset-react": "7.18.6",
|
||||
"babel-eslint": "10.1.0",
|
||||
"babel-loader": "8.2.5",
|
||||
|
@ -29,11 +29,11 @@
|
|||
"eslint-plugin-react": "7.30.1",
|
||||
"html-webpack-plugin": "5.5.0",
|
||||
"less": "4.1.3",
|
||||
"less-loader": "10.2.0",
|
||||
"less-loader": "11.0.0",
|
||||
"prettier": "2.7.1",
|
||||
"style-loader": "3.3.1",
|
||||
"webpack": "5.74.0",
|
||||
"webpack": "5.73.0",
|
||||
"webpack-cli": "4.10.0",
|
||||
"webpack-dev-server": "4.10.1"
|
||||
"webpack-dev-server": "4.9.3"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# Others
|
||||
dist*
|
||||
package-lock.json
|
||||
build*
|
||||
|
||||
# Logs
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -17,18 +17,18 @@
|
|||
"start": "webpack serve --config ./webpack.config.js --mode development"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "7.18.13",
|
||||
"@babel/preset-env": "7.18.10",
|
||||
"@babel/core": "7.18.9",
|
||||
"@babel/preset-env": "7.18.9",
|
||||
"@babel/preset-react": "7.18.6",
|
||||
"babel-loader": "8.2.5",
|
||||
"webpack": "5.74.0",
|
||||
"webpack": "5.73.0",
|
||||
"webpack-cli": "4.10.0",
|
||||
"webpack-dev-server": "4.10.1"
|
||||
"webpack-dev-server": "4.9.3"
|
||||
},
|
||||
"dependencies": {
|
||||
"axios": "1.3.5",
|
||||
"prop-types": "15.8.1",
|
||||
"react": "18.2.0",
|
||||
"react-bootstrap": "2.4.0",
|
||||
"react-dom": "18.2.0",
|
||||
"react-router-dom": "6.3.0"
|
||||
}
|
||||
|
|
|
@ -1,11 +1,9 @@
|
|||
import React from 'react'
|
||||
import { BrowserRouter as Router,Route, Routes } from 'react-router-dom';
|
||||
|
||||
import { BrowserRouter as Router,Route, Routes }
|
||||
from 'react-router-dom';
|
||||
import Create from './components/create';
|
||||
import CreateRgnCycle from './components/create-rgn-cycle';
|
||||
import Edit from './components/edit';
|
||||
import Home from './components/home';
|
||||
import Update from './components/update';
|
||||
|
||||
function App() {
|
||||
return (
|
||||
|
@ -14,9 +12,7 @@ function App() {
|
|||
<Routes>
|
||||
<Route path='/' element={<Home/>}/>
|
||||
<Route path='/create' element={<Create/>}/>
|
||||
<Route path='/create-rgncycle' element={<CreateRgnCycle/>}/>
|
||||
<Route path='/edit' element={<Edit/>}/>
|
||||
<Route path='/update' element={<Update/>}/>
|
||||
</Routes>
|
||||
</Router>
|
||||
</div>
|
||||
|
|
|
@ -1,78 +0,0 @@
|
|||
import React, { useState } from 'react';
|
||||
|
||||
import { v4 as uuid } from 'uuid';
|
||||
import { Link, useNavigate } from 'react-router-dom';
|
||||
|
||||
export default function Create() {
|
||||
|
||||
// Making usestate for setting and
|
||||
// fetching a value in jsx
|
||||
const [name, setName] = useState('');
|
||||
|
||||
// Using useNavigation for redirecting to pages
|
||||
let history = useNavigate();
|
||||
|
||||
async function createItem(e){
|
||||
e.preventDefault();
|
||||
//console.log("Home:createItem() name: " + name);
|
||||
const url='https://v1rgncy.api.swingbe.de/entities/create';
|
||||
//console.log('Home:createItem() url: ' + url);
|
||||
let data = new FormData();
|
||||
data.append('name',name);
|
||||
return fetch(url, {
|
||||
method: "POST",
|
||||
mode: "cors",
|
||||
body: data
|
||||
})
|
||||
.then(response => {
|
||||
if (!response.ok) {
|
||||
console.error('Home:createItem() rsp error: ' + response);
|
||||
}else{
|
||||
//console.log('Home:createItem() rsp fine');
|
||||
// We need to re-render the page for getting
|
||||
// the results so redirect to same page.
|
||||
history('/')
|
||||
//console.log('Home:createItem() Done.');
|
||||
}
|
||||
})
|
||||
.catch((error) => {
|
||||
console.error('Home:createItem() error: ' + error);
|
||||
// We need to re-render the page for getting
|
||||
// the results so redirect to same page.
|
||||
//console.log('Home:createItem() Done.');
|
||||
});
|
||||
};
|
||||
|
||||
return (
|
||||
<div>
|
||||
<h1>Create</h1>
|
||||
<form
|
||||
onSubmit={e => createItem(e)}
|
||||
>
|
||||
<label>
|
||||
Enter name (input:{name}):
|
||||
<input
|
||||
onChange={e => setName(name => e.target.value)}
|
||||
type="text"
|
||||
value={name}
|
||||
placeholder="Enter Name"
|
||||
required
|
||||
/>
|
||||
</label>
|
||||
<button
|
||||
onClick={e => createItem(e)}
|
||||
type="submit"
|
||||
>
|
||||
Create
|
||||
</button>
|
||||
<Link
|
||||
to='/'
|
||||
>
|
||||
<button>
|
||||
Home
|
||||
</button>
|
||||
</Link>
|
||||
</form>
|
||||
</div>
|
||||
);
|
||||
};
|
|
@ -1,9 +1,11 @@
|
|||
import React, { useState } from 'react'
|
||||
import { Button, Form } from 'react-bootstrap'
|
||||
//TODO import 'bootstrap/dist/css/bootstrap.min.css';
|
||||
import array from './array';
|
||||
import { v4 as uuid } from 'uuid';
|
||||
import { Link, useNavigate } from 'react-router-dom';
|
||||
|
||||
export default function Create() {
|
||||
function Create() {
|
||||
|
||||
// Making usestate for setting and
|
||||
// fetching a value in jsx
|
||||
|
@ -31,44 +33,45 @@ export default function Create() {
|
|||
|
||||
}
|
||||
|
||||
return (
|
||||
<div>
|
||||
<h1>Create</h1>
|
||||
<form
|
||||
onSubmit={e => handelSubmit(e)}
|
||||
>
|
||||
<label>
|
||||
Enter name (input:{name}):
|
||||
<input
|
||||
onChange={e => setname(e.target.value)}
|
||||
type="text"
|
||||
placeholder="Enter Name"
|
||||
required
|
||||
/>
|
||||
</label>
|
||||
<label>
|
||||
Enter name (input:{age}):
|
||||
<input
|
||||
onChange={e => setage(e.target.value)}
|
||||
type="text"
|
||||
placeholder="Enter Age"
|
||||
required
|
||||
/>
|
||||
</label>
|
||||
<button
|
||||
onClick={e => handelSubmit(e)}
|
||||
type="submit"
|
||||
>
|
||||
Create
|
||||
</button>
|
||||
<Link
|
||||
to='/'
|
||||
>
|
||||
<button>
|
||||
Home
|
||||
</button>
|
||||
</Link>
|
||||
</form>
|
||||
</div>
|
||||
);
|
||||
};
|
||||
return (
|
||||
<div >
|
||||
<Form className="d-grid gap-2" style={{margin:'15rem'}}>
|
||||
|
||||
{/* Fetching a value from input textfirld
|
||||
in a setname using usestate*/}
|
||||
<Form.Group className="mb-3" controlId="formBasicName">
|
||||
<Form.Control onChange={e => setname(e.target.value)}
|
||||
type="text"
|
||||
placeholder="Enter Name" required/>
|
||||
</Form.Group>
|
||||
|
||||
|
||||
{/* Fetching a value from input textfirld in
|
||||
a setage using usestate*/}
|
||||
<Form.Group className="mb-3" controlId="formBasicAge">
|
||||
<Form.Control onChange={e => setage(e.target.value)}
|
||||
type="text"
|
||||
placeholder="Age" required/>
|
||||
</Form.Group>
|
||||
|
||||
{/* handing a onclick event in button for
|
||||
firing a function */}
|
||||
<Button
|
||||
onClick={e => handelSubmit(e)}
|
||||
variant="primary" type="submit">
|
||||
Submit
|
||||
</Button>
|
||||
|
||||
{/* Redirecting back to home page */}
|
||||
<Link className="d-grid gap-2" to='/'>
|
||||
<Button variant="info" size="lg">
|
||||
Home
|
||||
</Button>
|
||||
</Link>
|
||||
|
||||
</Form>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
export default Create
|
||||
|
|
|
@ -1,9 +1,12 @@
|
|||
import React, { useEffect, useState } from 'react'
|
||||
import { Button, Form } from 'react-bootstrap';
|
||||
//TODO import 'bootstrap/dist/css/bootstrap.min.css';
|
||||
import array from './array';
|
||||
import { Link} from 'react-router-dom';
|
||||
import {useNavigate} from 'react-router-dom';
|
||||
|
||||
export default function Edit() {
|
||||
|
||||
function Edit() {
|
||||
|
||||
// Here usestate has been used in order
|
||||
// to set and get values from the jsx
|
||||
|
@ -40,43 +43,39 @@ export default function Edit() {
|
|||
setage(localStorage.getItem('Age'))
|
||||
setid(localStorage.getItem('id'))
|
||||
}, [])
|
||||
return(
|
||||
<div>
|
||||
<h1>Update</h1>
|
||||
<form
|
||||
onSubmit={e => handelSubmit(e)}
|
||||
>
|
||||
<label>
|
||||
Enter name (input:{name}):
|
||||
<input
|
||||
onChange={e => setname(e.target.value)}
|
||||
type="text"
|
||||
placeholder="Enter Name"
|
||||
/>
|
||||
</label>
|
||||
<label>
|
||||
Enter name (input:{age}):
|
||||
<input
|
||||
value={age}
|
||||
onChange={e => setage(e.target.value)}
|
||||
type="text"
|
||||
placeholder="Enter Age"
|
||||
/>
|
||||
</label>
|
||||
<button
|
||||
onClick={e => handelSubmit(e)}
|
||||
type="submit"
|
||||
>
|
||||
Update
|
||||
</button>
|
||||
<Link
|
||||
to='/'
|
||||
>
|
||||
<button>
|
||||
Home
|
||||
</button>
|
||||
</Link>
|
||||
</form>
|
||||
</div>
|
||||
);
|
||||
};
|
||||
|
||||
return (
|
||||
<div>
|
||||
<Form className="d-grid gap-2" style={{margin:'15rem'}}>
|
||||
|
||||
{/* setting a name from the input textfiled */}
|
||||
<Form.Group className="mb-3" controlId="formBasicEmail">
|
||||
<Form.Control value={name}
|
||||
onChange={e => setname(e.target.value)}
|
||||
type="text" placeholder="Enter Name" />
|
||||
</Form.Group>
|
||||
|
||||
{/* setting a age from the input textfiled */}
|
||||
<Form.Group className="mb-3" controlId="formBasicPassword">
|
||||
<Form.Control value={age}
|
||||
onChange={e => setage(e.target.value)}
|
||||
type="text" placeholder="Age" />
|
||||
</Form.Group>
|
||||
|
||||
{/* Hadinling an onclick event running an edit logic */}
|
||||
<Button
|
||||
onClick={e => handelSubmit(e)}
|
||||
variant="primary" type="submit" size="lg">
|
||||
Update
|
||||
</Button>
|
||||
|
||||
{/* Redirecting to main page after editing */}
|
||||
<Link className="d-grid gap-2" to='/'>
|
||||
<Button variant="warning" size="lg">Home</Button>
|
||||
</Link>
|
||||
</Form>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
export default Edit
|
||||
|
|
|
@ -1,177 +1,76 @@
|
|||
import React, {useEffect,useState} from 'react'
|
||||
import React from 'react'
|
||||
import { Button,Table } from 'react-bootstrap'
|
||||
//TODO import 'bootstrap/dist/css/bootstrap.min.css';
|
||||
import array from './array';
|
||||
import { Link, useNavigate } from 'react-router-dom';
|
||||
import axios from 'axios';
|
||||
|
||||
export default function Home(){
|
||||
|
||||
//get data
|
||||
const getData=()=>{
|
||||
axios
|
||||
.get('https://v1rgncy.api.swingbe.de/entities/info')
|
||||
.then((response) => {
|
||||
setData(response.data);
|
||||
})
|
||||
.catch((err) => {
|
||||
console.error('Home:getData(): error: ' + err);
|
||||
});
|
||||
};
|
||||
|
||||
//store data
|
||||
const [data,setData]=useState([]);
|
||||
|
||||
//get data when app loads
|
||||
useEffect(()=>{
|
||||
getData();
|
||||
},[]);
|
||||
|
||||
let history = useNavigate()
|
||||
// You may skip this part if you're
|
||||
// using react-context api or redux
|
||||
function setID(id,name,age){
|
||||
localStorage.setItem('id', id);
|
||||
localStorage.setItem('Name', name);
|
||||
localStorage.setItem('Age', age);
|
||||
}
|
||||
function setRgnCycle(id,name){
|
||||
//console.log('Home:setRgnCycle() id: ' + id);
|
||||
//console.log('Home:setRgnCycle() name: ' + name);
|
||||
//TODO Study localStorage!
|
||||
localStorage.setItem('rgnCycleId', id);
|
||||
localStorage.setItem('rgnCycleName', name);
|
||||
}
|
||||
|
||||
|
||||
async function deleteItem(id){
|
||||
//console.log("Home:deleteItem():");
|
||||
//console.log("Home:deleteItem() id: " + id);
|
||||
let url = 'https://v1rgncy.api.swingbe.de/entities/' + id + '/delete';
|
||||
//console.log('Home:deleteItem() url: ' + url);
|
||||
return fetch(url, {
|
||||
method: "POST",
|
||||
mode: "cors"
|
||||
})
|
||||
.then(response => {
|
||||
if (!response.ok) {
|
||||
console.error('Home:deleteItem() rsp error: ' + error);
|
||||
}else{
|
||||
//TODO Why is data not updated automatically?
|
||||
getData();
|
||||
// We need to re-render the page for getting
|
||||
// the results so redirect to same page.
|
||||
history('/')
|
||||
//console.log('Home:deleteItem() Done.');
|
||||
}
|
||||
})
|
||||
.catch((error) => {
|
||||
console.error('Home:deleteItem() error: ' + error);
|
||||
// We need to re-render the page for getting
|
||||
// the results so redirect to same page.
|
||||
history('/')
|
||||
});
|
||||
};
|
||||
|
||||
//TODO Why is this function not working?
|
||||
//post
|
||||
const postRgnCycle=(id)=>{
|
||||
console.log('Home:postRgnCycle() Start...');
|
||||
console.log('Home:postRgnCycle() id: ' + id);
|
||||
let url = 'https://v1rgncy.api.swingbe.de/entities/' + id + '/delete';
|
||||
console.log('Home:postRgnCycle() url: ' + url);
|
||||
let config = {
|
||||
method: 'post',
|
||||
maxBodyLength: Infinity,
|
||||
url: url,
|
||||
headers: { }
|
||||
};
|
||||
axios.request(config)
|
||||
.then((response) => {
|
||||
console.log('Home:postRgnCycle() Deleted...');
|
||||
})
|
||||
.catch((error) => {
|
||||
console.error('Home:postRgnCycle() error: ' + error);
|
||||
});
|
||||
// We need to re-render the page for getting
|
||||
// the results so redirect to same page.
|
||||
history('/')
|
||||
console.log('Home:postRgnCycle() Done.');
|
||||
};
|
||||
|
||||
//TODO Why is this function not working?
|
||||
//delete record using api
|
||||
const deleteRgnCycle=(id)=>{
|
||||
console.log('Home:deleteRgnCycle() Start...');
|
||||
console.log('Home:deleteRgnCycle() id: ' + id);
|
||||
let url = 'https://v1rgncy.api.swingbe.de/entities/' + id + '/delete';
|
||||
console.log('Home:deleteRgnCycle() url: ' + url);
|
||||
axios
|
||||
.post(url)
|
||||
.then((response) => {
|
||||
console.log('Home:deleteRgnCycle() Deleted...');
|
||||
})
|
||||
.catch((err) => {
|
||||
console.log('Home:deleteRgnCycle() error: ' + err);
|
||||
});
|
||||
// We need to re-render the page for getting
|
||||
// the results so redirect to same page.
|
||||
history('/')
|
||||
console.log('Home:deleteRgnCycle() Done.');
|
||||
};
|
||||
function Home() {
|
||||
|
||||
return (
|
||||
<div>
|
||||
<h1>RgnCycle</h1>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>id</th>
|
||||
<th>name</th>
|
||||
<th>lat</th>
|
||||
<th>lon</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{data.map((item,key) => {
|
||||
return(
|
||||
<tr
|
||||
key={key}
|
||||
>
|
||||
<td>{item[0]}</td>
|
||||
<td>{item[1]}</td>
|
||||
<td>{item[2]}</td>
|
||||
<td>{item[3]}</td>
|
||||
<td>
|
||||
<Link
|
||||
to={`/update`}
|
||||
>
|
||||
<button
|
||||
onClick={(e) =>
|
||||
setRgnCycle(item[0],item[1])
|
||||
}
|
||||
>
|
||||
Update
|
||||
</button>
|
||||
</Link>
|
||||
</td>
|
||||
<td>
|
||||
<button
|
||||
onClick={e => deleteItem(item[0])
|
||||
}
|
||||
>
|
||||
Delete
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
)})}
|
||||
</tbody>
|
||||
</table>
|
||||
<Link
|
||||
to='/create-rgncycle'
|
||||
>
|
||||
<button
|
||||
>
|
||||
Create
|
||||
</button>
|
||||
</Link>
|
||||
</div>
|
||||
);
|
||||
};
|
||||
let history = useNavigate()
|
||||
|
||||
// You may skip this part if you're
|
||||
// using react-context api or redux
|
||||
function setID(id,name,age){
|
||||
localStorage.setItem('id', id);
|
||||
localStorage.setItem('Name', name);
|
||||
localStorage.setItem('Age', age);
|
||||
}
|
||||
|
||||
// Deleted function - functionality
|
||||
// for deleting the entry
|
||||
function deleted(id){
|
||||
|
||||
var index = array.map(function(e) { return e.id; }).indexOf(id);
|
||||
|
||||
// deleting the entry with index
|
||||
array.splice(index,1)
|
||||
|
||||
// We need to re-render the page for getting
|
||||
// the results so redirect to same page.
|
||||
history('/')
|
||||
}
|
||||
|
||||
return (
|
||||
<div style={{margin:'10rem'}}>
|
||||
<Table striped bordered hover size="sm">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Name</th>
|
||||
<th>Age</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
{/* Mapping though every element in the array
|
||||
and showing the data in the form of table */}
|
||||
{array.map((item) => {
|
||||
return(
|
||||
<tr>
|
||||
<td>{item.Name}</td>
|
||||
<td>{item.Age}</td>
|
||||
|
||||
{/* getting theid,name, and age for storing these
|
||||
value in the jsx with onclick event */}
|
||||
<td><Link to={`/edit`}><Button onClick={(e) =>
|
||||
setID(item.id,item.Name,item.Age)} variant="info">
|
||||
Update</Button></Link></td>
|
||||
|
||||
{/* Using thr deleted function passing
|
||||
the id of an entry */}
|
||||
<td><Button onClick={e => deleted(item.id)}
|
||||
variant="danger">Delete</Button></td>
|
||||
</tr>
|
||||
)})}
|
||||
</tbody>
|
||||
</Table>
|
||||
|
||||
{/* Button for redirecting to create page for
|
||||
insertion of values */}
|
||||
<Link className="d-grid gap-2" to='/create'>
|
||||
<Button variant="warning" size="lg">Create</Button>
|
||||
</Link>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
export default Home
|
||||
|
|
|
@ -1,142 +0,0 @@
|
|||
import React, { useEffect, useState } from 'react'
|
||||
import { Link} from 'react-router-dom';
|
||||
import {useNavigate} from 'react-router-dom';
|
||||
import axios from 'axios';
|
||||
|
||||
export default function Update() {
|
||||
|
||||
// Here usestate has been used in order
|
||||
// to set and get values from the jsx
|
||||
const [name, setName] = useState('');
|
||||
const[id,setId] = useState('');
|
||||
|
||||
// used for navigation with logic in javascript
|
||||
let history = useNavigate()
|
||||
|
||||
async function updateItem(e){
|
||||
e.preventDefault();
|
||||
//console.log("Home:updateItem() id: " + id);
|
||||
//console.log("Home:updateItem() name: " + name);
|
||||
const url='https://v1rgncy.api.swingbe.de/entities/'+id+'/update';
|
||||
//console.log('Home:updateItem() url: ' + url);
|
||||
let data = new FormData();
|
||||
data.append('name',name);
|
||||
return fetch(url, {
|
||||
method: "POST",
|
||||
mode: "cors",
|
||||
body: data
|
||||
})
|
||||
.then(response => {
|
||||
if (!response.ok) {
|
||||
console.error('Home:updateItem() rsp error: ' + response);
|
||||
}else{
|
||||
//console.log('Home:updateItem() rsp fine');
|
||||
// We need to re-render the page for getting
|
||||
// the results so redirect to same page.
|
||||
history('/')
|
||||
//console.log('Home:updateItem() Done.');
|
||||
}
|
||||
})
|
||||
.catch((error) => {
|
||||
console.error('Home:updateItem() error: ' + error);
|
||||
// We need to re-render the page for getting
|
||||
// the results so redirect to same page.
|
||||
//console.log('Home:updateItem() Done.');
|
||||
});
|
||||
};
|
||||
|
||||
//TODO Why is this function not working?
|
||||
const postData = (e) => {
|
||||
e.preventDefault();
|
||||
console.log('postData() id: '+id);
|
||||
console.log('postData() name: '+name);
|
||||
const url='https://v1rgncy.api.swingbe.de/entities/'+id+'/update';
|
||||
console.log('postData() url: '+url);
|
||||
let data = new FormData();
|
||||
data.append('name',name);
|
||||
let config = {
|
||||
method: 'post',
|
||||
headers: {
|
||||
'Content-Type': 'text/plain',
|
||||
},
|
||||
maxBodyLength: Infinity,
|
||||
url: url,
|
||||
data : data
|
||||
};
|
||||
axios.request(config)
|
||||
.then(rsp => {
|
||||
if (!rsp.ok) {
|
||||
console.error('Home:postData() rsp error: ' + JSON.stringify(rsp));
|
||||
}else{
|
||||
//console.log('Home:postData() rsp fine');
|
||||
// We need to re-render the page for getting
|
||||
// the results so redirect to same page.
|
||||
history('/')
|
||||
//console.log('Home:postData() Done.');
|
||||
}
|
||||
console.log('postData() rsp: ' + rsp.data)
|
||||
})
|
||||
.catch((error) => {
|
||||
console.error('postData() axios error: '+error);
|
||||
});
|
||||
};
|
||||
//TODO Why is this function not working?
|
||||
const postUpdate = (e) => {
|
||||
e.preventDefault();
|
||||
console.log('postUpdate() id: '+id);
|
||||
console.log('postUpdate() name: '+name);
|
||||
const url='https://v1rgncy.api.swingbe.de/entities/'+id+'/update';
|
||||
console.log('postUpdate() url: '+url);
|
||||
let data = new FormData();
|
||||
data.append('name',name);
|
||||
//const data = { 'name': name};
|
||||
//const data = 'name='+name;
|
||||
console.log('postUpdate() data: '+data);
|
||||
const headers = {
|
||||
'Content-Type': 'text/plain',
|
||||
};
|
||||
axios.post(url, data, {headers})
|
||||
.then(rsp => {
|
||||
console.log('postData() rsp: ' + rsp.data)
|
||||
})
|
||||
.catch((error) => {
|
||||
console.error('postData() axios error: '+error);
|
||||
});
|
||||
};
|
||||
|
||||
useEffect(() => {
|
||||
setName(localStorage.getItem('rgnCycleName'))
|
||||
setId(localStorage.getItem('rgnCycleId'))
|
||||
}, [])
|
||||
return(
|
||||
<div>
|
||||
<h1>Update</h1>
|
||||
<form
|
||||
onSubmit={e => updateItem(e)}
|
||||
>
|
||||
<label>
|
||||
Enter name (input:{name}):
|
||||
<input
|
||||
onChange={e => setName(name => e.target.value)}
|
||||
type="text"
|
||||
value={name}
|
||||
placeholder="Enter Name"
|
||||
/>
|
||||
</label>
|
||||
<button
|
||||
onClick={e => updateItem(e)}
|
||||
type="submit"
|
||||
>
|
||||
Update
|
||||
</button>
|
||||
<Link
|
||||
to='/'
|
||||
>
|
||||
<button>
|
||||
Home
|
||||
</button>
|
||||
</Link>
|
||||
</form>
|
||||
</div>
|
||||
);
|
||||
};
|
|
@ -1,6 +0,0 @@
|
|||
{
|
||||
"presets": [
|
||||
"@babel/preset-env",
|
||||
"@babel/preset-react"
|
||||
]
|
||||
}
|
|
@ -1,107 +0,0 @@
|
|||
# Others
|
||||
build*
|
||||
|
||||
# Logs
|
||||
logs
|
||||
*.log
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
lerna-debug.log*
|
||||
|
||||
# Diagnostic reports (https://nodejs.org/api/report.html)
|
||||
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
|
||||
|
||||
# Runtime data
|
||||
pids
|
||||
*.pid
|
||||
*.seed
|
||||
*.pid.lock
|
||||
|
||||
# Directory for instrumented libs generated by jscoverage/JSCover
|
||||
lib-cov
|
||||
|
||||
# Coverage directory used by tools like istanbul
|
||||
coverage
|
||||
*.lcov
|
||||
|
||||
# nyc test coverage
|
||||
.nyc_output
|
||||
|
||||
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
|
||||
.grunt
|
||||
|
||||
# Bower dependency directory (https://bower.io/)
|
||||
bower_components
|
||||
|
||||
# node-waf configuration
|
||||
.lock-wscript
|
||||
|
||||
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
||||
build/Release
|
||||
|
||||
# Dependency directories
|
||||
node_modules/
|
||||
jspm_packages/
|
||||
|
||||
# TypeScript v1 declaration files
|
||||
typings/
|
||||
|
||||
# TypeScript cache
|
||||
*.tsbuildinfo
|
||||
|
||||
# Optional npm cache directory
|
||||
.npm
|
||||
|
||||
# Optional eslint cache
|
||||
.eslintcache
|
||||
|
||||
# Microbundle cache
|
||||
.rpt2_cache/
|
||||
.rts2_cache_cjs/
|
||||
.rts2_cache_es/
|
||||
.rts2_cache_umd/
|
||||
|
||||
# Optional REPL history
|
||||
.node_repl_history
|
||||
|
||||
# Output of 'npm pack'
|
||||
*.tgz
|
||||
|
||||
# Yarn Integrity file
|
||||
.yarn-integrity
|
||||
|
||||
# dotenv environment variables file
|
||||
.env
|
||||
.env.test
|
||||
|
||||
# parcel-bundler cache (https://parceljs.org/)
|
||||
.cache
|
||||
|
||||
# Next.js build output
|
||||
.next
|
||||
|
||||
# Nuxt.js build / generate output
|
||||
.nuxt
|
||||
dist
|
||||
|
||||
# Gatsby files
|
||||
.cache/
|
||||
# Comment in the public line in if your project uses Gatsby and *not* Next.js
|
||||
# https://nextjs.org/blog/next-9-1#public-directory-support
|
||||
# public
|
||||
|
||||
# vuepress build output
|
||||
.vuepress/dist
|
||||
|
||||
# Serverless directories
|
||||
.serverless/
|
||||
|
||||
# FuseBox cache
|
||||
.fusebox/
|
||||
|
||||
# DynamoDB Local files
|
||||
.dynamodb/
|
||||
|
||||
# TernJS port file
|
||||
.tern-port
|
|
@ -1,18 +0,0 @@
|
|||
# React.js Example
|
||||
|
||||
## Table of Contents
|
||||
0. [General](#general)
|
||||
1. [Links](#links)
|
||||
|
||||
# General
|
||||
|
||||
# Links
|
||||
|
||||
* [React setup with webpack for beginners](https://dev.to/deepanjangh/react-setup-with-webpack-for-beginners-2a8k)
|
||||
* [Production](https://webpack.js.org/guides/production/)
|
||||
* [Setup Development and Production Environment for React App](https://medium.com/freestoneinfotech/setup-development-and-production-environment-for-react-app-397c4cc9e382)
|
||||
* [HtmlWebpackPlugin](https://webpack.js.org/plugins/html-webpack-plugin/)
|
||||
* [load CSS](https://masteringjs.io/tutorials/webpack/css-loader)
|
||||
* [load CSS](https://webpack.js.org/loaders/css-loader/)
|
||||
* [load CSS](https://blog.jakoblind.no/css-modules-webpack/)
|
||||
* [How to Read CSV files in React.js ?](https://www.geeksforgeeks.org/how-to-read-csv-files-in-react-js/)
|
|
@ -1,10 +0,0 @@
|
|||
import React from 'react';
|
||||
import Home from './pages/home';
|
||||
export default function App() {
|
||||
return (
|
||||
<div>
|
||||
<h1>App</h1>
|
||||
<Home />
|
||||
</div>
|
||||
)
|
||||
}
|
|
@ -1,87 +0,0 @@
|
|||
import React, { useState } from "react";
|
||||
import Papa from "papaparse";
|
||||
|
||||
// Allowed extensions for input file
|
||||
const allowedExtensions = ["csv"];
|
||||
|
||||
const Csv = () => {
|
||||
|
||||
// This state will store the parsed data
|
||||
const [data, setData] = useState([]);
|
||||
|
||||
// This state will contain the error when
|
||||
// correct file extension is not used
|
||||
const [error, setError] = useState("");
|
||||
|
||||
// It will store the file uploaded by the user
|
||||
const [file, setFile] = useState("");
|
||||
|
||||
// This function will be called when
|
||||
// the file input changes
|
||||
const handleFileChange = (e) => {
|
||||
setError("");
|
||||
|
||||
// Check if user has entered the file
|
||||
if (e.target.files.length) {
|
||||
const inputFile = e.target.files[0];
|
||||
|
||||
// Check the file extensions, if it not
|
||||
// included in the allowed extensions
|
||||
// we show the error
|
||||
const fileExtension = inputFile?.type.split("/")[1];
|
||||
if (!allowedExtensions.includes(fileExtension)) {
|
||||
setError("Please input a csv file");
|
||||
return;
|
||||
}
|
||||
|
||||
// If input type is correct set the state
|
||||
setFile(inputFile);
|
||||
}
|
||||
};
|
||||
const handleParse = () => {
|
||||
|
||||
// If user clicks the parse button without
|
||||
// a file we show a error
|
||||
if (!file) return setError("Enter a valid file");
|
||||
|
||||
// Initialize a reader which allows user
|
||||
// to read any file or blob.
|
||||
const reader = new FileReader();
|
||||
|
||||
// Event listener on reader when the file
|
||||
// loads, we parse it and set the data.
|
||||
reader.onload = async ({ target }) => {
|
||||
const csv = Papa.parse(target.result, { header: true });
|
||||
const parsedData = csv?.data;
|
||||
const columns = Object.keys(parsedData[0]);
|
||||
setData(columns);
|
||||
};
|
||||
reader.readAsText(file);
|
||||
};
|
||||
|
||||
return (
|
||||
<div>
|
||||
<label
|
||||
htmlFor="csvInput"
|
||||
style={{ display: "block" }}
|
||||
>
|
||||
Enter CSV File:
|
||||
</label>
|
||||
<input
|
||||
onChange={handleFileChange}
|
||||
id="csvInput"
|
||||
name="file"
|
||||
type="File"
|
||||
/>
|
||||
<div>
|
||||
<button onClick={handleParse}>Parse</button>
|
||||
</div>
|
||||
<div style={{ marginTop: "3rem" }}>
|
||||
{error ? error : data.map((col,
|
||||
idx) => <div key={idx}>{col}</div>)}
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
};
|
||||
|
||||
export default Csv;
|
|
@ -1,17 +0,0 @@
|
|||
import React from 'react';
|
||||
import ReactDOM from 'react-dom';
|
||||
import App from './app';
|
||||
//TODO remove debugging
|
||||
if (process.env.NODE_ENV !== 'production') {
|
||||
console.log('development mode');
|
||||
}
|
||||
//since react 18
|
||||
import { createRoot } from 'react-dom/client';
|
||||
//create root container
|
||||
const root = createRoot(document.getElementById("root"));
|
||||
//render root app
|
||||
root.render(
|
||||
<React.StrictMode>
|
||||
<App />
|
||||
</React.StrictMode>
|
||||
);
|
|
@ -1,15 +0,0 @@
|
|||
import React from 'react';
|
||||
|
||||
import Csv from '../components/csv';
|
||||
import '../style.css';
|
||||
|
||||
const Home = () => {
|
||||
return (
|
||||
<>
|
||||
<h2>Home</h2>
|
||||
<Csv />
|
||||
</>
|
||||
);
|
||||
}
|
||||
|
||||
export default Home
|
|
@ -1,3 +0,0 @@
|
|||
h1 { color: red; }
|
||||
h2 { color: green; }
|
||||
h3 { color: blue; }
|
|
@ -1,41 +0,0 @@
|
|||
//generate a HTML5 file including all webpack bundles in the body using script tags
|
||||
const HtmlWebpackPlugin = require('html-webpack-plugin');
|
||||
//path is used to resolve properly across the OS
|
||||
const path = require('path');
|
||||
module.exports = {
|
||||
//bundle *.js from this entry point
|
||||
entry: path.resolve(__dirname, '../app/index.jsx'),
|
||||
//create output file to be linked to index.html
|
||||
output: {
|
||||
filename: '[name].bundle.js',
|
||||
path: path.resolve(__dirname, '../dist'),
|
||||
clean: true,
|
||||
},
|
||||
module: {
|
||||
rules: [
|
||||
{
|
||||
//test all *.js using babel-loader
|
||||
//test all *.jsx (e.g. React.js) using babel-loader
|
||||
test: /\.(js|jsx)$/,
|
||||
exclude: /node_modules/,
|
||||
include: path.resolve(__dirname, '../app'),
|
||||
use: ['babel-loader'],
|
||||
},
|
||||
{
|
||||
//test all *.css using style-loader and css-loader
|
||||
test: /\.css$/i,
|
||||
use: ["style-loader", "css-loader"],
|
||||
},
|
||||
]
|
||||
},
|
||||
resolve: {
|
||||
extensions: ['*', '.js', '.jsx'],
|
||||
},
|
||||
plugins: [
|
||||
// create a plugin instance so that you can use it several times anywhere
|
||||
new HtmlWebpackPlugin({
|
||||
title: 'Production',
|
||||
template: path.resolve(__dirname, "../public/index.html")
|
||||
}),
|
||||
],
|
||||
};
|
|
@ -1,14 +0,0 @@
|
|||
//path is used to resolve properly across the OS
|
||||
const path = require('path');
|
||||
const { merge } = require('webpack-merge');
|
||||
const common = require('./webpack.common.js');
|
||||
//merge() calls in the environment-specific configuration to include commons
|
||||
module.exports = merge(common, {
|
||||
//set development mode
|
||||
mode: 'development',
|
||||
//enable strong source mapping
|
||||
devtool: 'inline-source-map',
|
||||
devServer: {
|
||||
static: path.resolve(__dirname, '../dist'),
|
||||
},
|
||||
});
|
|
@ -1,8 +0,0 @@
|
|||
const { merge } = require('webpack-merge');
|
||||
const common = require('./webpack.common.js');
|
||||
module.exports = merge(common, {
|
||||
mode: 'production',
|
||||
//source maps encouraged in production
|
||||
//choose mapping with fairly quick build speed like source-map
|
||||
devtool: 'source-map',
|
||||
});
|
File diff suppressed because it is too large
Load Diff
|
@ -1,38 +0,0 @@
|
|||
{
|
||||
"private": true,
|
||||
"name": "react-example",
|
||||
"description": "React.js example",
|
||||
"version": "0.1.0",
|
||||
"main": "index.js",
|
||||
"keywords": [
|
||||
"react",
|
||||
"webpack"
|
||||
],
|
||||
"author": "Software Ingenieur Begerad <dialog@SwIngBe.de>",
|
||||
"license": "GPL-3.0-or-later",
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
},
|
||||
"scripts": {
|
||||
"start": "webpack serve --config config/webpack.dev.js",
|
||||
"build": "webpack --config config/webpack.prod.js"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "7.21.4",
|
||||
"@babel/preset-env": "7.21.4",
|
||||
"@babel/preset-react": "7.18.6",
|
||||
"babel-loader": "9.1.2",
|
||||
"css-loader": "6.7.3",
|
||||
"html-webpack-plugin": "5.5.1",
|
||||
"style-loader": "3.3.2",
|
||||
"webpack": "5.80.0",
|
||||
"webpack-cli": "5.0.1",
|
||||
"webpack-dev-server": "4.13.3",
|
||||
"webpack-merge": "5.8.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"papaparse": "5.4.1",
|
||||
"react": "18.2.0",
|
||||
"react-dom": "18.2.0"
|
||||
}
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>React Example</title>
|
||||
</head>
|
||||
<body>
|
||||
<div id="root"></div>
|
||||
</body>
|
||||
</html>
|
|
@ -1,6 +0,0 @@
|
|||
{
|
||||
"presets": [
|
||||
"@babel/preset-env",
|
||||
"@babel/preset-react"
|
||||
]
|
||||
}
|
|
@ -1,107 +0,0 @@
|
|||
# Others
|
||||
build*
|
||||
|
||||
# Logs
|
||||
logs
|
||||
*.log
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
lerna-debug.log*
|
||||
|
||||
# Diagnostic reports (https://nodejs.org/api/report.html)
|
||||
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
|
||||
|
||||
# Runtime data
|
||||
pids
|
||||
*.pid
|
||||
*.seed
|
||||
*.pid.lock
|
||||
|
||||
# Directory for instrumented libs generated by jscoverage/JSCover
|
||||
lib-cov
|
||||
|
||||
# Coverage directory used by tools like istanbul
|
||||
coverage
|
||||
*.lcov
|
||||
|
||||
# nyc test coverage
|
||||
.nyc_output
|
||||
|
||||
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
|
||||
.grunt
|
||||
|
||||
# Bower dependency directory (https://bower.io/)
|
||||
bower_components
|
||||
|
||||
# node-waf configuration
|
||||
.lock-wscript
|
||||
|
||||
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
||||
build/Release
|
||||
|
||||
# Dependency directories
|
||||
node_modules/
|
||||
jspm_packages/
|
||||
|
||||
# TypeScript v1 declaration files
|
||||
typings/
|
||||
|
||||
# TypeScript cache
|
||||
*.tsbuildinfo
|
||||
|
||||
# Optional npm cache directory
|
||||
.npm
|
||||
|
||||
# Optional eslint cache
|
||||
.eslintcache
|
||||
|
||||
# Microbundle cache
|
||||
.rpt2_cache/
|
||||
.rts2_cache_cjs/
|
||||
.rts2_cache_es/
|
||||
.rts2_cache_umd/
|
||||
|
||||
# Optional REPL history
|
||||
.node_repl_history
|
||||
|
||||
# Output of 'npm pack'
|
||||
*.tgz
|
||||
|
||||
# Yarn Integrity file
|
||||
.yarn-integrity
|
||||
|
||||
# dotenv environment variables file
|
||||
.env
|
||||
.env.test
|
||||
|
||||
# parcel-bundler cache (https://parceljs.org/)
|
||||
.cache
|
||||
|
||||
# Next.js build output
|
||||
.next
|
||||
|
||||
# Nuxt.js build / generate output
|
||||
.nuxt
|
||||
dist
|
||||
|
||||
# Gatsby files
|
||||
.cache/
|
||||
# Comment in the public line in if your project uses Gatsby and *not* Next.js
|
||||
# https://nextjs.org/blog/next-9-1#public-directory-support
|
||||
# public
|
||||
|
||||
# vuepress build output
|
||||
.vuepress/dist
|
||||
|
||||
# Serverless directories
|
||||
.serverless/
|
||||
|
||||
# FuseBox cache
|
||||
.fusebox/
|
||||
|
||||
# DynamoDB Local files
|
||||
.dynamodb/
|
||||
|
||||
# TernJS port file
|
||||
.tern-port
|
|
@ -1,18 +0,0 @@
|
|||
# React.js Example
|
||||
|
||||
## Table of Contents
|
||||
0. [General](#general)
|
||||
1. [Links](#links)
|
||||
|
||||
# General
|
||||
|
||||
# Links
|
||||
|
||||
* [React setup with webpack for beginners](https://dev.to/deepanjangh/react-setup-with-webpack-for-beginners-2a8k)
|
||||
* [Production](https://webpack.js.org/guides/production/)
|
||||
* [Setup Development and Production Environment for React App](https://medium.com/freestoneinfotech/setup-development-and-production-environment-for-react-app-397c4cc9e382)
|
||||
* [HtmlWebpackPlugin](https://webpack.js.org/plugins/html-webpack-plugin/)
|
||||
* [load CSS](https://masteringjs.io/tutorials/webpack/css-loader)
|
||||
* [load CSS](https://webpack.js.org/loaders/css-loader/)
|
||||
* [load CSS](https://blog.jakoblind.no/css-modules-webpack/)
|
||||
* [How to upload and read CSV files in React.js?](https://stackoverflow.com/questions/44769051/how-to-upload-and-read-csv-files-in-react-js)
|
|
@ -1,10 +0,0 @@
|
|||
import React from 'react';
|
||||
import Home from './pages/home';
|
||||
export default function App() {
|
||||
return (
|
||||
<div>
|
||||
<h1>App</h1>
|
||||
<Home />
|
||||
</div>
|
||||
)
|
||||
}
|
|
@ -1,27 +0,0 @@
|
|||
import React from 'react';
|
||||
|
||||
const Input = () => {
|
||||
const handleChange = (e) => {
|
||||
const reader = new FileReader();
|
||||
reader.onload = () => {
|
||||
// @ts-ignore
|
||||
document.getElementById('out').innerHTML = reader.result;
|
||||
};
|
||||
// start reading the file. When it is done, calls the onload event defined above.
|
||||
// @ts-ignore
|
||||
reader.readAsBinaryString(document.getElementById('csv-input').files[0]);
|
||||
};
|
||||
return (
|
||||
<>
|
||||
<h3>Input</h3>
|
||||
<input
|
||||
accept=".csv"
|
||||
id="csv-input"
|
||||
onChange={handleChange}
|
||||
type="file"
|
||||
/>
|
||||
<pre id="out"><p>File contents will appear here</p></pre>
|
||||
</>
|
||||
);
|
||||
};
|
||||
export default Input;
|
|
@ -1,17 +0,0 @@
|
|||
import React from 'react';
|
||||
import ReactDOM from 'react-dom';
|
||||
import App from './app';
|
||||
//TODO remove debugging
|
||||
if (process.env.NODE_ENV !== 'production') {
|
||||
console.log('development mode');
|
||||
}
|
||||
//since react 18
|
||||
import { createRoot } from 'react-dom/client';
|
||||
//create root container
|
||||
const root = createRoot(document.getElementById("root"));
|
||||
//render root app
|
||||
root.render(
|
||||
<React.StrictMode>
|
||||
<App />
|
||||
</React.StrictMode>
|
||||
);
|
|
@ -1,15 +0,0 @@
|
|||
import React from 'react';
|
||||
|
||||
import Input from '../components/input';
|
||||
import '../style.css';
|
||||
|
||||
const Home = () => {
|
||||
return (
|
||||
<>
|
||||
<h2>Home</h2>
|
||||
<Input />
|
||||
</>
|
||||
);
|
||||
}
|
||||
|
||||
export default Home
|
|
@ -1,3 +0,0 @@
|
|||
h1 { color: red; }
|
||||
h2 { color: green; }
|
||||
h3 { color: blue; }
|
|
@ -1,41 +0,0 @@
|
|||
//generate a HTML5 file including all webpack bundles in the body using script tags
|
||||
const HtmlWebpackPlugin = require('html-webpack-plugin');
|
||||
//path is used to resolve properly across the OS
|
||||
const path = require('path');
|
||||
module.exports = {
|
||||
//bundle *.js from this entry point
|
||||
entry: path.resolve(__dirname, '../app/index.jsx'),
|
||||
//create output file to be linked to index.html
|
||||
output: {
|
||||
filename: '[name].bundle.js',
|
||||
path: path.resolve(__dirname, '../dist'),
|
||||
clean: true,
|
||||
},
|
||||
module: {
|
||||
rules: [
|
||||
{
|
||||
//test all *.js using babel-loader
|
||||
//test all *.jsx (e.g. React.js) using babel-loader
|
||||
test: /\.(js|jsx)$/,
|
||||
exclude: /node_modules/,
|
||||
include: path.resolve(__dirname, '../app'),
|
||||
use: ['babel-loader'],
|
||||
},
|
||||
{
|
||||
//test all *.css using style-loader and css-loader
|
||||
test: /\.css$/i,
|
||||
use: ["style-loader", "css-loader"],
|
||||
},
|
||||
]
|
||||
},
|
||||
resolve: {
|
||||
extensions: ['*', '.js', '.jsx'],
|
||||
},
|
||||
plugins: [
|
||||
// create a plugin instance so that you can use it several times anywhere
|
||||
new HtmlWebpackPlugin({
|
||||
title: 'Production',
|
||||
template: path.resolve(__dirname, "../public/index.html")
|
||||
}),
|
||||
],
|
||||
};
|
|
@ -1,14 +0,0 @@
|
|||
//path is used to resolve properly across the OS
|
||||
const path = require('path');
|
||||
const { merge } = require('webpack-merge');
|
||||
const common = require('./webpack.common.js');
|
||||
//merge() calls in the environment-specific configuration to include commons
|
||||
module.exports = merge(common, {
|
||||
//set development mode
|
||||
mode: 'development',
|
||||
//enable strong source mapping
|
||||
devtool: 'inline-source-map',
|
||||
devServer: {
|
||||
static: path.resolve(__dirname, '../dist'),
|
||||
},
|
||||
});
|
|
@ -1,8 +0,0 @@
|
|||
const { merge } = require('webpack-merge');
|
||||
const common = require('./webpack.common.js');
|
||||
module.exports = merge(common, {
|
||||
mode: 'production',
|
||||
//source maps encouraged in production
|
||||
//choose mapping with fairly quick build speed like source-map
|
||||
devtool: 'source-map',
|
||||
});
|
File diff suppressed because it is too large
Load Diff
|
@ -1,37 +0,0 @@
|
|||
{
|
||||
"private": true,
|
||||
"name": "react-example",
|
||||
"description": "React.js example",
|
||||
"version": "0.1.0",
|
||||
"main": "index.js",
|
||||
"keywords": [
|
||||
"react",
|
||||
"webpack"
|
||||
],
|
||||
"author": "Software Ingenieur Begerad <dialog@SwIngBe.de>",
|
||||
"license": "GPL-3.0-or-later",
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
},
|
||||
"scripts": {
|
||||
"start": "webpack serve --config config/webpack.dev.js",
|
||||
"build": "webpack --config config/webpack.prod.js"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "7.21.4",
|
||||
"@babel/preset-env": "7.21.4",
|
||||
"@babel/preset-react": "7.18.6",
|
||||
"babel-loader": "9.1.2",
|
||||
"css-loader": "6.7.3",
|
||||
"html-webpack-plugin": "5.5.1",
|
||||
"style-loader": "3.3.2",
|
||||
"webpack": "5.80.0",
|
||||
"webpack-cli": "5.0.1",
|
||||
"webpack-dev-server": "4.13.3",
|
||||
"webpack-merge": "5.8.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"react": "18.2.0",
|
||||
"react-dom": "18.2.0"
|
||||
}
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>React Example</title>
|
||||
</head>
|
||||
<body>
|
||||
<div id="root"></div>
|
||||
</body>
|
||||
</html>
|
|
@ -1,6 +0,0 @@
|
|||
{
|
||||
"presets": [
|
||||
"@babel/preset-env",
|
||||
"@babel/preset-react"
|
||||
]
|
||||
}
|
|
@ -1,107 +0,0 @@
|
|||
# Others
|
||||
build*
|
||||
|
||||
# Logs
|
||||
logs
|
||||
*.log
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
lerna-debug.log*
|
||||
|
||||
# Diagnostic reports (https://nodejs.org/api/report.html)
|
||||
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
|
||||
|
||||
# Runtime data
|
||||
pids
|
||||
*.pid
|
||||
*.seed
|
||||
*.pid.lock
|
||||
|
||||
# Directory for instrumented libs generated by jscoverage/JSCover
|
||||
lib-cov
|
||||
|
||||
# Coverage directory used by tools like istanbul
|
||||
coverage
|
||||
*.lcov
|
||||
|
||||
# nyc test coverage
|
||||
.nyc_output
|
||||
|
||||
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
|
||||
.grunt
|
||||
|
||||
# Bower dependency directory (https://bower.io/)
|
||||
bower_components
|
||||
|
||||
# node-waf configuration
|
||||
.lock-wscript
|
||||
|
||||
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
||||
build/Release
|
||||
|
||||
# Dependency directories
|
||||
node_modules/
|
||||
jspm_packages/
|
||||
|
||||
# TypeScript v1 declaration files
|
||||
typings/
|
||||
|
||||
# TypeScript cache
|
||||
*.tsbuildinfo
|
||||
|
||||
# Optional npm cache directory
|
||||
.npm
|
||||
|
||||
# Optional eslint cache
|
||||
.eslintcache
|
||||
|
||||
# Microbundle cache
|
||||
.rpt2_cache/
|
||||
.rts2_cache_cjs/
|
||||
.rts2_cache_es/
|
||||
.rts2_cache_umd/
|
||||
|
||||
# Optional REPL history
|
||||
.node_repl_history
|
||||
|
||||
# Output of 'npm pack'
|
||||
*.tgz
|
||||
|
||||
# Yarn Integrity file
|
||||
.yarn-integrity
|
||||
|
||||
# dotenv environment variables file
|
||||
.env
|
||||
.env.test
|
||||
|
||||
# parcel-bundler cache (https://parceljs.org/)
|
||||
.cache
|
||||
|
||||
# Next.js build output
|
||||
.next
|
||||
|
||||
# Nuxt.js build / generate output
|
||||
.nuxt
|
||||
dist
|
||||
|
||||
# Gatsby files
|
||||
.cache/
|
||||
# Comment in the public line in if your project uses Gatsby and *not* Next.js
|
||||
# https://nextjs.org/blog/next-9-1#public-directory-support
|
||||
# public
|
||||
|
||||
# vuepress build output
|
||||
.vuepress/dist
|
||||
|
||||
# Serverless directories
|
||||
.serverless/
|
||||
|
||||
# FuseBox cache
|
||||
.fusebox/
|
||||
|
||||
# DynamoDB Local files
|
||||
.dynamodb/
|
||||
|
||||
# TernJS port file
|
||||
.tern-port
|
|
@ -1,18 +0,0 @@
|
|||
# React.js Example
|
||||
|
||||
## Table of Contents
|
||||
0. [General](#general)
|
||||
1. [Links](#links)
|
||||
|
||||
# General
|
||||
|
||||
# Links
|
||||
|
||||
* [React setup with webpack for beginners](https://dev.to/deepanjangh/react-setup-with-webpack-for-beginners-2a8k)
|
||||
* [Production](https://webpack.js.org/guides/production/)
|
||||
* [Setup Development and Production Environment for React App](https://medium.com/freestoneinfotech/setup-development-and-production-environment-for-react-app-397c4cc9e382)
|
||||
* [HtmlWebpackPlugin](https://webpack.js.org/plugins/html-webpack-plugin/)
|
||||
* [load CSS](https://masteringjs.io/tutorials/webpack/css-loader)
|
||||
* [load CSS](https://webpack.js.org/loaders/css-loader/)
|
||||
* [load CSS](https://blog.jakoblind.no/css-modules-webpack/)
|
||||
* [How to Read CSV files in React.js ?](https://www.geeksforgeeks.org/how-to-read-csv-files-in-react-js/)
|
|
@ -1,10 +0,0 @@
|
|||
import React from 'react';
|
||||
import Home from './pages/home';
|
||||
export default function App() {
|
||||
return (
|
||||
<div>
|
||||
<h1>App</h1>
|
||||
<Home />
|
||||
</div>
|
||||
)
|
||||
}
|
|
@ -1,90 +0,0 @@
|
|||
import React, { useState } from "react";
|
||||
import Papa from "papaparse";
|
||||
import axios from 'axios';
|
||||
|
||||
const allowedExtensions = ["csv"];
|
||||
|
||||
const CsvReader = () => {
|
||||
const [data, setData] = useState([]);
|
||||
const [error, setError] = useState("");
|
||||
const [file, setFile] = useState("");
|
||||
const handleChange = (e) => {
|
||||
setError("");
|
||||
|
||||
//check if user has entered the file
|
||||
if (e.target.files.length) {
|
||||
const inputFile = e.target.files[0];
|
||||
|
||||
//check the file extensions
|
||||
const fileExtension = inputFile?.type.split("/")[1];
|
||||
if (!allowedExtensions.includes(fileExtension)) {
|
||||
setError("Please input a csv file");
|
||||
}else{
|
||||
setFile(inputFile);
|
||||
console.log('handleChange() file updated');
|
||||
}
|
||||
}
|
||||
};
|
||||
const post = async (requestBody) => {
|
||||
console.log('post() start...');
|
||||
console.log('post() requestBody: ' + JSON.stringify(requestBody));
|
||||
console.log('post() before post');
|
||||
/*If you pass a JavaScript object as the 2nd parameter to the axios.post() function, Axios will automatically serialize the object to JSON for you. Axios will also set the Content-Type header to 'application/json', so web frameworks like Express can automatically parse it.*/
|
||||
const data = await axios.post('http://localhost:3000/', requestBody).then(res => res.data);
|
||||
console.log('post() after post');
|
||||
console.log('post() json data: ' + JSON.stringify(data));
|
||||
console.log('post() done.');
|
||||
};
|
||||
const handleParse = () => {
|
||||
console.log('handleParse() start ...');
|
||||
if (!file) {
|
||||
console.log('handleParse() file NOT valid');
|
||||
return setError("Enter a valid file");
|
||||
} else {
|
||||
console.log('handleParse() file valid');
|
||||
Papa.parse(file, {
|
||||
complete: updateData,
|
||||
header: false,
|
||||
encoding: 'ISO-8859-1'
|
||||
});
|
||||
}
|
||||
console.log('handleParse() done.');
|
||||
};
|
||||
const updateData = (result) => {
|
||||
console.log('updateData() start...');
|
||||
let data = result.data;
|
||||
setData(data);
|
||||
post(data);
|
||||
console.log('updateData() done.');
|
||||
};
|
||||
return(
|
||||
<div className="csv-reader">
|
||||
<h3>CsvReader</h3>
|
||||
<label
|
||||
htmlFor="csv-input"
|
||||
>
|
||||
Enter CSV File:
|
||||
</label>
|
||||
<input
|
||||
className="csv-input"
|
||||
id="csv-input"
|
||||
type="file"
|
||||
name="file"
|
||||
placeholfer={null}
|
||||
onChange={handleChange}
|
||||
/>
|
||||
<div>
|
||||
<button onClick={handleParse}>Parse</button>
|
||||
</div>
|
||||
<div>
|
||||
{error ? error : data.map((value, idx) => {
|
||||
return <div key={idx}>
|
||||
{JSON.stringify(value)}
|
||||
</div>}
|
||||
)}
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
};
|
||||
|
||||
export default CsvReader;
|
|
@ -1,17 +0,0 @@
|
|||
import React from 'react';
|
||||
import ReactDOM from 'react-dom';
|
||||
import App from './app';
|
||||
//TODO remove debugging
|
||||
if (process.env.NODE_ENV !== 'production') {
|
||||
console.log('development mode');
|
||||
}
|
||||
//since react 18
|
||||
import { createRoot } from 'react-dom/client';
|
||||
//create root container
|
||||
const root = createRoot(document.getElementById("root"));
|
||||
//render root app
|
||||
root.render(
|
||||
<React.StrictMode>
|
||||
<App />
|
||||
</React.StrictMode>
|
||||
);
|
|
@ -1,15 +0,0 @@
|
|||
import React from 'react';
|
||||
|
||||
import Csv from '../components/csv-reader';
|
||||
import '../style.css';
|
||||
|
||||
const Home = () => {
|
||||
return (
|
||||
<>
|
||||
<h2>Home</h2>
|
||||
<Csv />
|
||||
</>
|
||||
);
|
||||
}
|
||||
|
||||
export default Home
|
|
@ -1,3 +0,0 @@
|
|||
h1 { color: red; }
|
||||
h2 { color: green; }
|
||||
h3 { color: blue; }
|
|
@ -1,41 +0,0 @@
|
|||
//generate a HTML5 file including all webpack bundles in the body using script tags
|
||||
const HtmlWebpackPlugin = require('html-webpack-plugin');
|
||||
//path is used to resolve properly across the OS
|
||||
const path = require('path');
|
||||
module.exports = {
|
||||
//bundle *.js from this entry point
|
||||
entry: path.resolve(__dirname, '../app/index.jsx'),
|
||||
//create output file to be linked to index.html
|
||||
output: {
|
||||
filename: '[name].bundle.js',
|
||||
path: path.resolve(__dirname, '../dist'),
|
||||
clean: true,
|
||||
},
|
||||
module: {
|
||||
rules: [
|
||||
{
|
||||
//test all *.js using babel-loader
|
||||
//test all *.jsx (e.g. React.js) using babel-loader
|
||||
test: /\.(js|jsx)$/,
|
||||
exclude: /node_modules/,
|
||||
include: path.resolve(__dirname, '../app'),
|
||||
use: ['babel-loader'],
|
||||
},
|
||||
{
|
||||
//test all *.css using style-loader and css-loader
|
||||
test: /\.css$/i,
|
||||
use: ["style-loader", "css-loader"],
|
||||
},
|
||||
]
|
||||
},
|
||||
resolve: {
|
||||
extensions: ['*', '.js', '.jsx'],
|
||||
},
|
||||
plugins: [
|
||||
// create a plugin instance so that you can use it several times anywhere
|
||||
new HtmlWebpackPlugin({
|
||||
title: 'Production',
|
||||
template: path.resolve(__dirname, "../public/index.html")
|
||||
}),
|
||||
],
|
||||
};
|
|
@ -1,14 +0,0 @@
|
|||
//path is used to resolve properly across the OS
|
||||
const path = require('path');
|
||||
const { merge } = require('webpack-merge');
|
||||
const common = require('./webpack.common.js');
|
||||
//merge() calls in the environment-specific configuration to include commons
|
||||
module.exports = merge(common, {
|
||||
//set development mode
|
||||
mode: 'development',
|
||||
//enable strong source mapping
|
||||
devtool: 'inline-source-map',
|
||||
devServer: {
|
||||
static: path.resolve(__dirname, '../dist'),
|
||||
},
|
||||
});
|
|
@ -1,8 +0,0 @@
|
|||
const { merge } = require('webpack-merge');
|
||||
const common = require('./webpack.common.js');
|
||||
module.exports = merge(common, {
|
||||
mode: 'production',
|
||||
//source maps encouraged in production
|
||||
//choose mapping with fairly quick build speed like source-map
|
||||
devtool: 'source-map',
|
||||
});
|
File diff suppressed because it is too large
Load Diff
|
@ -1,39 +0,0 @@
|
|||
{
|
||||
"private": true,
|
||||
"name": "react-example",
|
||||
"description": "React.js example",
|
||||
"version": "0.1.0",
|
||||
"main": "index.js",
|
||||
"keywords": [
|
||||
"react",
|
||||
"webpack"
|
||||
],
|
||||
"author": "Software Ingenieur Begerad <dialog@SwIngBe.de>",
|
||||
"license": "GPL-3.0-or-later",
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
},
|
||||
"scripts": {
|
||||
"start": "webpack serve --config config/webpack.dev.js",
|
||||
"build": "webpack --config config/webpack.prod.js"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "7.21.4",
|
||||
"@babel/preset-env": "7.21.4",
|
||||
"@babel/preset-react": "7.18.6",
|
||||
"babel-loader": "9.1.2",
|
||||
"css-loader": "6.7.3",
|
||||
"html-webpack-plugin": "5.5.1",
|
||||
"style-loader": "3.3.2",
|
||||
"webpack": "5.80.0",
|
||||
"webpack-cli": "5.0.1",
|
||||
"webpack-dev-server": "4.13.3",
|
||||
"webpack-merge": "5.8.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"axios": "1.4.0",
|
||||
"papaparse": "5.4.1",
|
||||
"react": "18.2.0",
|
||||
"react-dom": "18.2.0"
|
||||
}
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>React Example</title>
|
||||
</head>
|
||||
<body>
|
||||
<div id="root"></div>
|
||||
</body>
|
||||
</html>
|
|
@ -1,6 +0,0 @@
|
|||
{
|
||||
"presets": [
|
||||
"@babel/preset-env",
|
||||
"@babel/preset-react"
|
||||
]
|
||||
}
|
|
@ -1,107 +0,0 @@
|
|||
# Others
|
||||
build*
|
||||
|
||||
# Logs
|
||||
logs
|
||||
*.log
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
lerna-debug.log*
|
||||
|
||||
# Diagnostic reports (https://nodejs.org/api/report.html)
|
||||
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
|
||||
|
||||
# Runtime data
|
||||
pids
|
||||
*.pid
|
||||
*.seed
|
||||
*.pid.lock
|
||||
|
||||
# Directory for instrumented libs generated by jscoverage/JSCover
|
||||
lib-cov
|
||||
|
||||
# Coverage directory used by tools like istanbul
|
||||
coverage
|
||||
*.lcov
|
||||
|
||||
# nyc test coverage
|
||||
.nyc_output
|
||||
|
||||
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
|
||||
.grunt
|
||||
|
||||
# Bower dependency directory (https://bower.io/)
|
||||
bower_components
|
||||
|
||||
# node-waf configuration
|
||||
.lock-wscript
|
||||
|
||||
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
||||
build/Release
|
||||
|
||||
# Dependency directories
|
||||
node_modules/
|
||||
jspm_packages/
|
||||
|
||||
# TypeScript v1 declaration files
|
||||
typings/
|
||||
|
||||
# TypeScript cache
|
||||
*.tsbuildinfo
|
||||
|
||||
# Optional npm cache directory
|
||||
.npm
|
||||
|
||||
# Optional eslint cache
|
||||
.eslintcache
|
||||
|
||||
# Microbundle cache
|
||||
.rpt2_cache/
|
||||
.rts2_cache_cjs/
|
||||
.rts2_cache_es/
|
||||
.rts2_cache_umd/
|
||||
|
||||
# Optional REPL history
|
||||
.node_repl_history
|
||||
|
||||
# Output of 'npm pack'
|
||||
*.tgz
|
||||
|
||||
# Yarn Integrity file
|
||||
.yarn-integrity
|
||||
|
||||
# dotenv environment variables file
|
||||
.env
|
||||
.env.test
|
||||
|
||||
# parcel-bundler cache (https://parceljs.org/)
|
||||
.cache
|
||||
|
||||
# Next.js build output
|
||||
.next
|
||||
|
||||
# Nuxt.js build / generate output
|
||||
.nuxt
|
||||
dist
|
||||
|
||||
# Gatsby files
|
||||
.cache/
|
||||
# Comment in the public line in if your project uses Gatsby and *not* Next.js
|
||||
# https://nextjs.org/blog/next-9-1#public-directory-support
|
||||
# public
|
||||
|
||||
# vuepress build output
|
||||
.vuepress/dist
|
||||
|
||||
# Serverless directories
|
||||
.serverless/
|
||||
|
||||
# FuseBox cache
|
||||
.fusebox/
|
||||
|
||||
# DynamoDB Local files
|
||||
.dynamodb/
|
||||
|
||||
# TernJS port file
|
||||
.tern-port
|
|
@ -1,11 +0,0 @@
|
|||
# React.js Example
|
||||
|
||||
## Table of Contents
|
||||
0. [General](#general)
|
||||
1. [Links](#links)
|
||||
|
||||
# General
|
||||
|
||||
# Links
|
||||
|
||||
* [Learn Reactjs Date picker with examples](https://www.cloudhadoop.com/react-js-date-picker/)
|
|
@ -1,31 +0,0 @@
|
|||
import React, { useState } from "react";
|
||||
import DatePicker from "react-datepicker";
|
||||
|
||||
import "react-datepicker/dist/react-datepicker.css";
|
||||
|
||||
// CSS Modules, react-datepicker-cssmodules.css
|
||||
//import 'react-datepicker/dist/react-datepicker-cssmodules.css';
|
||||
|
||||
const DatepickerhooksCss = () => {
|
||||
const [startDate, setStartDate] = useState(new Date());
|
||||
const handleCalendarClose = () => console.log("Calendar closed");
|
||||
const handleCalendarOpen = () => console.log("Calendar opened");
|
||||
|
||||
return (
|
||||
<div>
|
||||
<DatePicker
|
||||
closeOnScroll={true}
|
||||
selected={startDate}
|
||||
onChange={(date) => setStartDate(date)}
|
||||
onCalendarClose={handleCalendarClose}
|
||||
onCalendarOpen={handleCalendarOpen}>
|
||||
<div style={{ color: "red" }}>
|
||||
Please select a day from the calendar!
|
||||
</div>
|
||||
</DatePicker>
|
||||
current date: {startDate.toString()}
|
||||
</div>
|
||||
);
|
||||
};
|
||||
|
||||
export default DatepickerhooksCss;
|
|
@ -1,15 +0,0 @@
|
|||
import React, { useState } from 'react';
|
||||
import DatePicker from "react-datepicker";
|
||||
|
||||
const Datepickerhooks = () => {
|
||||
const [currentDate, setCurrentDate] = useState(new Date());
|
||||
|
||||
return (
|
||||
<div>
|
||||
<DatePicker selected={currentDate} onChange={date => setCurrentDate(date)} />
|
||||
current date: {currentDate.toString()}
|
||||
</div>
|
||||
);
|
||||
};
|
||||
|
||||
export default Datepickerhooks;
|
|
@ -1,23 +0,0 @@
|
|||
import React from "react";
|
||||
import PropTypes from 'prop-types';
|
||||
import DatePicker from "react-datepicker";
|
||||
import "react-datepicker/dist/react-datepicker.css";
|
||||
|
||||
//destructure props
|
||||
const Datepicker = ({date,onChange}) => {
|
||||
return <DatePicker
|
||||
closeOnScroll={true}
|
||||
selected={date}
|
||||
onChange={onChange}
|
||||
>
|
||||
<div style={{ color: "red" }}>
|
||||
Please select a day from the calendar!
|
||||
</div>
|
||||
</DatePicker>;
|
||||
};
|
||||
|
||||
export default Datepicker;
|
||||
Datepicker.propTypes = {
|
||||
date: PropTypes.object,
|
||||
onChange: PropTypes.func
|
||||
};
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue