Merge pull request #157 from provectus/i137/mock_server
Mock server removal
This commit is contained in:
commit
cc7a933ba2
12 changed files with 0 additions and 1319 deletions
|
@ -20,14 +20,6 @@ Set correct URL to your API server in `.env`.
|
||||||
```
|
```
|
||||||
REACT_APP_API_URL=http://api.your-kafka-rest-api.com:3004
|
REACT_APP_API_URL=http://api.your-kafka-rest-api.com:3004
|
||||||
```
|
```
|
||||||
If you plan to use full fake REST API you have to update `.env`.
|
|
||||||
```
|
|
||||||
REACT_APP_API_URL=http://localhost:3004
|
|
||||||
```
|
|
||||||
Start JSON Server if you prefer to use default full fake REST API.
|
|
||||||
```
|
|
||||||
npm run mock
|
|
||||||
```
|
|
||||||
Start application
|
Start application
|
||||||
```
|
```
|
||||||
npm start
|
npm start
|
||||||
|
@ -35,6 +27,5 @@ npm start
|
||||||
|
|
||||||
## Links
|
## Links
|
||||||
|
|
||||||
* [JSON Server](https://github.com/typicode/json-server) - Fake REST API.
|
|
||||||
* [Bulma](https://bulma.io/documentation/) - free, open source CSS framework based on Flexbox
|
* [Bulma](https://bulma.io/documentation/) - free, open source CSS framework based on Flexbox
|
||||||
* [Create React App](https://github.com/facebook/create-react-app)
|
* [Create React App](https://github.com/facebook/create-react-app)
|
||||||
|
|
|
@ -1,47 +0,0 @@
|
||||||
const jsonServer = require('json-server');
|
|
||||||
const clusters = require('./payload/clusters.json');
|
|
||||||
const brokers = require('./payload/brokers.json');
|
|
||||||
const brokerMetrics = require('./payload/brokerMetrics.json');
|
|
||||||
const topics = require('./payload/topics.json');
|
|
||||||
const topicDetails = require('./payload/topicDetails.json');
|
|
||||||
const topicConfigs = require('./payload/topicConfigs.json');
|
|
||||||
const consumerGroups = require('./payload/consumerGroups.json');
|
|
||||||
const consumerGroupDetails = require('./payload/consumerGroupDetails.json');
|
|
||||||
|
|
||||||
const db = {
|
|
||||||
clusters,
|
|
||||||
brokers,
|
|
||||||
brokerMetrics: brokerMetrics.map(({clusterName, ...rest}) => ({...rest, id: clusterName})),
|
|
||||||
topics: topics.map((topic) => ({...topic, id: topic.name})),
|
|
||||||
topicDetails,
|
|
||||||
topicConfigs,
|
|
||||||
consumerGroups: consumerGroups.map((group) => ({...group, id: group.consumerGroupId})),
|
|
||||||
consumerGroupDetails
|
|
||||||
};
|
|
||||||
const server = jsonServer.create();
|
|
||||||
const router = jsonServer.router(db);
|
|
||||||
const middlewares = jsonServer.defaults();
|
|
||||||
|
|
||||||
const PORT = 3004;
|
|
||||||
const DELAY = 0;
|
|
||||||
|
|
||||||
server.use(middlewares);
|
|
||||||
server.use((_req, _res, next) => {
|
|
||||||
setTimeout(next, DELAY);
|
|
||||||
});
|
|
||||||
|
|
||||||
server.use(
|
|
||||||
jsonServer.rewriter({
|
|
||||||
'/api/*': '/$1',
|
|
||||||
'/clusters/:clusterName/metrics/broker': '/brokerMetrics/:clusterName',
|
|
||||||
'/clusters/:clusterName/topics/:id': '/topicDetails',
|
|
||||||
'/clusters/:clusterName/topics/:id/config': '/topicConfigs',
|
|
||||||
'/clusters/:clusterName/consumer-groups/:id': '/consumerGroupDetails',
|
|
||||||
})
|
|
||||||
);
|
|
||||||
|
|
||||||
server.use(router);
|
|
||||||
|
|
||||||
server.listen(PORT, () => {
|
|
||||||
console.log('JSON Server is running');
|
|
||||||
});
|
|
|
@ -1,40 +0,0 @@
|
||||||
[
|
|
||||||
{
|
|
||||||
"clusterName": "fake.cluster",
|
|
||||||
"bytesInPerSec": 8027,
|
|
||||||
"brokerCount": 1,
|
|
||||||
"zooKeeperStatus": 1,
|
|
||||||
"activeControllers": 1,
|
|
||||||
"uncleanLeaderElectionCount": 0,
|
|
||||||
"onlinePartitionCount": 19,
|
|
||||||
"underReplicatedPartitionCount": 9,
|
|
||||||
"offlinePartitionCount": 3,
|
|
||||||
"inSyncReplicasCount": 2,
|
|
||||||
"outOfSyncReplicasCount": 3,
|
|
||||||
"diskUsage": [
|
|
||||||
{
|
|
||||||
"brokerId": 1,
|
|
||||||
"segmentSize": 479900675
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"clusterName": "kafka-ui.cluster",
|
|
||||||
"bytesInPerSec": 8194,
|
|
||||||
"brokerCount": 1,
|
|
||||||
"zooKeeperStatus": 1,
|
|
||||||
"activeControllers": 1,
|
|
||||||
"uncleanLeaderElectionCount": 0,
|
|
||||||
"onlinePartitionCount": 70,
|
|
||||||
"underReplicatedPartitionCount": 1,
|
|
||||||
"offlinePartitionCount": 2,
|
|
||||||
"inSyncReplicasCount": 5,
|
|
||||||
"outOfSyncReplicasCount": 1,
|
|
||||||
"diskUsage": [
|
|
||||||
{
|
|
||||||
"brokerId": 1,
|
|
||||||
"segmentSize": 968226532
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
|
@ -1,18 +0,0 @@
|
||||||
[
|
|
||||||
{
|
|
||||||
"brokerId": 1,
|
|
||||||
"name": "fake.cluster",
|
|
||||||
"bytesInPerSec": 1234,
|
|
||||||
"bytesOutPerSec": 3567,
|
|
||||||
"segmentSize": 912360707,
|
|
||||||
"partitionReplicas": 20
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"brokerId": 2,
|
|
||||||
"name": "kafka-ui.cluster",
|
|
||||||
"bytesInPerSec": 9194,
|
|
||||||
"bytesOutPerSec": 7924,
|
|
||||||
"segmentSize": 840060707,
|
|
||||||
"partitionReplicas": 50
|
|
||||||
}
|
|
||||||
]
|
|
|
@ -1,24 +0,0 @@
|
||||||
[
|
|
||||||
{
|
|
||||||
"id": "fake.cluster",
|
|
||||||
"name": "fake.cluster",
|
|
||||||
"defaultCluster": true,
|
|
||||||
"status": "online",
|
|
||||||
"brokerCount": 1,
|
|
||||||
"onlinePartitionCount": 20,
|
|
||||||
"topicCount": 2,
|
|
||||||
"bytesInPerSec": 3201,
|
|
||||||
"bytesOutPerSec": 4320
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "kafka-ui.cluster",
|
|
||||||
"name": "kafka-ui.cluster",
|
|
||||||
"defaultCluster": false,
|
|
||||||
"status": "offline",
|
|
||||||
"brokerCount": 1,
|
|
||||||
"onlinePartitionCount": 20,
|
|
||||||
"topicCount": 2,
|
|
||||||
"bytesInPerSec": 8341,
|
|
||||||
"bytesOutPerSec": 10320
|
|
||||||
}
|
|
||||||
]
|
|
|
@ -1,29 +0,0 @@
|
||||||
{
|
|
||||||
"consumerGroupId": "_fake.cluster.consumer_1",
|
|
||||||
"consumers": [
|
|
||||||
{
|
|
||||||
"consumerId": "_fake.cluster.consumer_1-1-1",
|
|
||||||
"topic": "my-topic",
|
|
||||||
"partition": 0,
|
|
||||||
"messagesBehind": 1246,
|
|
||||||
"currentOffset": 2834,
|
|
||||||
"endOffset": 2835
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"consumerId": "_fake.cluster.consumer_2-2-2",
|
|
||||||
"topic": "docker-connect-status",
|
|
||||||
"partition": 1,
|
|
||||||
"messagesBehind": 678,
|
|
||||||
"currentOffset": 234,
|
|
||||||
"endOffset": 246
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"consumerId": "_fake.cluster.consumer_2-2-2",
|
|
||||||
"topic": "docker-connect-status",
|
|
||||||
"partition": 2,
|
|
||||||
"messagesBehind": 143,
|
|
||||||
"currentOffset": 123,
|
|
||||||
"endOffset": 134
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
|
@ -1,39 +0,0 @@
|
||||||
[
|
|
||||||
{
|
|
||||||
"clusterId": "fake.cluster",
|
|
||||||
"consumerGroupId": "_fake.cluster.consumer_1",
|
|
||||||
"numConsumers": 1,
|
|
||||||
"numTopics": 11
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"clusterId": "fake.cluster",
|
|
||||||
"consumerGroupId": "_fake.cluster.consumer_2",
|
|
||||||
"numConsumers": 2,
|
|
||||||
"numTopics": 22
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"clusterId": "fake.cluster",
|
|
||||||
"consumerGroupId": "_fake.cluster.consumer_3",
|
|
||||||
"numConsumers": 3,
|
|
||||||
"numTopics": 33
|
|
||||||
},
|
|
||||||
|
|
||||||
{
|
|
||||||
"clusterId": "kafka-ui.cluster",
|
|
||||||
"consumerGroupId": "_kafka-ui.cluster.consumer_1",
|
|
||||||
"numConsumers": 4,
|
|
||||||
"numTopics": 44
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"clusterId": "kafka-ui.cluster",
|
|
||||||
"consumerGroupId": "_kafka-ui.cluster.consumer_2",
|
|
||||||
"numConsumers": 5,
|
|
||||||
"numTopics": 55
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"clusterId": "kafka-ui.cluster",
|
|
||||||
"consumerGroupId": "_kafka-ui.cluster.consumer_3",
|
|
||||||
"numConsumers": 6,
|
|
||||||
"numTopics": 66
|
|
||||||
}
|
|
||||||
]
|
|
|
@ -1,132 +0,0 @@
|
||||||
[
|
|
||||||
{
|
|
||||||
"name": "compression.type",
|
|
||||||
"value": "producer",
|
|
||||||
"defaultValue": "producer"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "leader.replication.throttled.replicas",
|
|
||||||
"value": "",
|
|
||||||
"defaultValue": ""
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "message.downconversion.enable",
|
|
||||||
"value": "false",
|
|
||||||
"defaultValue": "true"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "min.insync.replicas",
|
|
||||||
"value": "1",
|
|
||||||
"defaultValue": "1"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "segment.jitter.ms",
|
|
||||||
"value": "0",
|
|
||||||
"defaultValue": "0"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "cleanup.policy",
|
|
||||||
"value": "compact",
|
|
||||||
"defaultValue": "delete"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "flush.ms",
|
|
||||||
"value": "9223372036854775807",
|
|
||||||
"defaultValue": "9223372036854775807"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "follower.replication.throttled.replicas",
|
|
||||||
"value": "",
|
|
||||||
"defaultValue": ""
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "segment.bytes",
|
|
||||||
"value": "1073741824",
|
|
||||||
"defaultValue": "1073741824"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "retention.ms",
|
|
||||||
"value": "43200000",
|
|
||||||
"defaultValue": "43200000"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "flush.messages",
|
|
||||||
"value": "9223372036854775807",
|
|
||||||
"defaultValue": "9223372036854775807"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "message.format.version",
|
|
||||||
"value": "2.3-IV1",
|
|
||||||
"defaultValue": "2.3-IV1"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "file.delete.delay.ms",
|
|
||||||
"value": "60000",
|
|
||||||
"defaultValue": "60000"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "max.compaction.lag.ms",
|
|
||||||
"value": "9223372036854775807",
|
|
||||||
"defaultValue": "9223372036854775807"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "max.message.bytes",
|
|
||||||
"value": "1000012",
|
|
||||||
"defaultValue": "1000012"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "min.compaction.lag.ms",
|
|
||||||
"value": "0",
|
|
||||||
"defaultValue": "0"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "message.timestamp.type",
|
|
||||||
"value": "CreateTime",
|
|
||||||
"defaultValue": "CreateTime"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "preallocate",
|
|
||||||
"value": "false",
|
|
||||||
"defaultValue": "false"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "min.cleanable.dirty.ratio",
|
|
||||||
"value": "0.5",
|
|
||||||
"defaultValue": "0.5"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "index.interval.bytes",
|
|
||||||
"value": "4096",
|
|
||||||
"defaultValue": "4096"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "unclean.leader.election.enable",
|
|
||||||
"value": "true",
|
|
||||||
"defaultValue": "true"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "retention.bytes",
|
|
||||||
"value": "-1",
|
|
||||||
"defaultValue": "-1"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "delete.retention.ms",
|
|
||||||
"value": "86400000",
|
|
||||||
"defaultValue": "86400000"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "segment.ms",
|
|
||||||
"value": "604800000",
|
|
||||||
"defaultValue": "604800000"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "message.timestamp.difference.max.ms",
|
|
||||||
"value": "9223372036854775807",
|
|
||||||
"defaultValue": "9223372036854775807"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "segment.index.bytes",
|
|
||||||
"value": "10485760",
|
|
||||||
"defaultValue": "10485760"
|
|
||||||
}
|
|
||||||
]
|
|
|
@ -1,10 +0,0 @@
|
||||||
{
|
|
||||||
"partitionCount": 25,
|
|
||||||
"replicationFactor": 1,
|
|
||||||
"replicas": 25,
|
|
||||||
"inSyncReplicas": 25,
|
|
||||||
"bytesInPerSec": 0,
|
|
||||||
"segmentSize": 0,
|
|
||||||
"segmentCount": 25,
|
|
||||||
"underReplicatedPartitions": 0
|
|
||||||
}
|
|
|
@ -1,227 +0,0 @@
|
||||||
[
|
|
||||||
{
|
|
||||||
"clusterId": "fake.cluster",
|
|
||||||
"name": "docker-connect-status",
|
|
||||||
"internal": true,
|
|
||||||
"partitions": [
|
|
||||||
{
|
|
||||||
"partition": 0,
|
|
||||||
"leader": 1,
|
|
||||||
"replicas": [
|
|
||||||
{
|
|
||||||
"broker": 1,
|
|
||||||
"leader": true,
|
|
||||||
"inSync": false
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"partition": 1,
|
|
||||||
"leader": 1,
|
|
||||||
"replicas": [
|
|
||||||
{
|
|
||||||
"broker": 1,
|
|
||||||
"leader": true,
|
|
||||||
"inSync": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"partition": 2,
|
|
||||||
"leader": 1,
|
|
||||||
"replicas": [
|
|
||||||
{
|
|
||||||
"broker": 1,
|
|
||||||
"leader": true,
|
|
||||||
"inSync": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"partition": 3,
|
|
||||||
"leader": 1,
|
|
||||||
"replicas": [
|
|
||||||
{
|
|
||||||
"broker": 1,
|
|
||||||
"leader": true,
|
|
||||||
"inSync": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"partition": 4,
|
|
||||||
"leader": 1,
|
|
||||||
"replicas": [
|
|
||||||
{
|
|
||||||
"broker": 1,
|
|
||||||
"leader": true,
|
|
||||||
"inSync": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"clusterId": "fake.cluster",
|
|
||||||
"name": "dsadsda",
|
|
||||||
"internal": false,
|
|
||||||
"partitions": [
|
|
||||||
{
|
|
||||||
"partition": 0,
|
|
||||||
"leader": 1,
|
|
||||||
"replicas": [
|
|
||||||
{
|
|
||||||
"broker": 1,
|
|
||||||
"leader": true,
|
|
||||||
"inSync": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"clusterId": "fake.cluster",
|
|
||||||
"name": "my-topic",
|
|
||||||
"internal": false,
|
|
||||||
"partitions": [
|
|
||||||
{
|
|
||||||
"partition": 0,
|
|
||||||
"leader": 1,
|
|
||||||
"replicas": [
|
|
||||||
{
|
|
||||||
"broker": 1,
|
|
||||||
"leader": true,
|
|
||||||
"inSync": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"clusterId": "fake.cluster",
|
|
||||||
"name": "docker-connect-offsets",
|
|
||||||
"internal": false,
|
|
||||||
"partitions": [
|
|
||||||
{
|
|
||||||
"partition": 0,
|
|
||||||
"leader": 1,
|
|
||||||
"replicas": [
|
|
||||||
{
|
|
||||||
"broker": 1,
|
|
||||||
"leader": true,
|
|
||||||
"inSync": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"partition": 1,
|
|
||||||
"leader": 1,
|
|
||||||
"replicas": [
|
|
||||||
{
|
|
||||||
"broker": 1,
|
|
||||||
"leader": true,
|
|
||||||
"inSync": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"partition": 2,
|
|
||||||
"leader": 1,
|
|
||||||
"replicas": [
|
|
||||||
{
|
|
||||||
"broker": 1,
|
|
||||||
"leader": true,
|
|
||||||
"inSync": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"partition": 3,
|
|
||||||
"leader": 1,
|
|
||||||
"replicas": [
|
|
||||||
{
|
|
||||||
"broker": 1,
|
|
||||||
"leader": true,
|
|
||||||
"inSync": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"partition": 4,
|
|
||||||
"leader": 1,
|
|
||||||
"replicas": [
|
|
||||||
{
|
|
||||||
"broker": 1,
|
|
||||||
"leader": true,
|
|
||||||
"inSync": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"partition": 5,
|
|
||||||
"leader": 1,
|
|
||||||
"replicas": [
|
|
||||||
{
|
|
||||||
"broker": 1,
|
|
||||||
"leader": true,
|
|
||||||
"inSync": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"clusterId": "kafka-ui.cluster",
|
|
||||||
"name": "_schemas",
|
|
||||||
"internal": false,
|
|
||||||
"partitions": [
|
|
||||||
{
|
|
||||||
"partition": 0,
|
|
||||||
"leader": 1,
|
|
||||||
"replicas": [
|
|
||||||
{
|
|
||||||
"broker": 1,
|
|
||||||
"leader": true,
|
|
||||||
"inSync": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"clusterId": "kafka-ui.cluster",
|
|
||||||
"name": "docker-connect-configs",
|
|
||||||
"internal": false,
|
|
||||||
"partitions": [
|
|
||||||
{
|
|
||||||
"partition": 0,
|
|
||||||
"leader": 1,
|
|
||||||
"replicas": [
|
|
||||||
{
|
|
||||||
"broker": 1,
|
|
||||||
"leader": true,
|
|
||||||
"inSync": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"clusterId": "kafka-ui.cluster",
|
|
||||||
"name": "_kafka-ui-test-topic-monitoring-message-rekey-store",
|
|
||||||
"internal": false,
|
|
||||||
"partitions": [
|
|
||||||
{
|
|
||||||
"partition": 0,
|
|
||||||
"leader": 1,
|
|
||||||
"replicas": [
|
|
||||||
{
|
|
||||||
"broker": 1,
|
|
||||||
"leader": true,
|
|
||||||
"inSync": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
742
kafka-ui-react-app/package-lock.json
generated
742
kafka-ui-react-app/package-lock.json
generated
File diff suppressed because it is too large
Load diff
|
@ -42,7 +42,6 @@
|
||||||
"lint:fix": "eslint --ext .tsx,.ts src/ --fix",
|
"lint:fix": "eslint --ext .tsx,.ts src/ --fix",
|
||||||
"test": "react-scripts test",
|
"test": "react-scripts test",
|
||||||
"eject": "react-scripts eject",
|
"eject": "react-scripts eject",
|
||||||
"mock": "node ./mock/index.js",
|
|
||||||
"tsc": "tsc"
|
"tsc": "tsc"
|
||||||
},
|
},
|
||||||
"husky": {
|
"husky": {
|
||||||
|
@ -93,7 +92,6 @@
|
||||||
"eslint-plugin-react-hooks": "^2.5.1",
|
"eslint-plugin-react-hooks": "^2.5.1",
|
||||||
"esprint": "^0.6.0",
|
"esprint": "^0.6.0",
|
||||||
"husky": "^4.3.0",
|
"husky": "^4.3.0",
|
||||||
"json-server": "^0.15.1",
|
|
||||||
"lint-staged": "^10.5.2",
|
"lint-staged": "^10.5.2",
|
||||||
"node-sass": "^4.14.1",
|
"node-sass": "^4.14.1",
|
||||||
"prettier": "^2.2.1",
|
"prettier": "^2.2.1",
|
||||||
|
|
Loading…
Add table
Reference in a new issue