mysqlsyncr 1.0.44 → 1.0.48

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/package.json +44 -44
  2. package/src/compare.js +2 -2
  3. package/src/index.js +7 -2
  4. package/ui/.editorconfig +7 -7
  5. package/ui/.prettierrc.json +5 -5
  6. package/ui/README.md +40 -40
  7. package/ui/dist/spa/assets/{MainLayout-CJQ1jgg8.js → MainLayout-Cft1OeWe.js} +1 -1
  8. package/ui/dist/spa/assets/axios-CNk6rzlZ.js +1 -0
  9. package/ui/dist/spa/assets/index-DomDZ6ci.js +30 -0
  10. package/ui/dist/spa/assets/{index-BvnAI_tZ.css → index-kXpA8n8r.css} +2 -2
  11. package/ui/dist/spa/index.html +2 -2
  12. package/ui/eslint.config.js +73 -73
  13. package/ui/index.html +21 -21
  14. package/ui/jsconfig.json +2 -2
  15. package/ui/package.json +42 -42
  16. package/ui/postcss.config.js +29 -29
  17. package/ui/quasar.config.js +216 -216
  18. package/ui/src/App.vue +7 -7
  19. package/ui/src/assets/quasar-logo-vertical.svg +14 -14
  20. package/ui/src/boot/axios.js +6 -14
  21. package/ui/src/components/EssentialLink.vue +44 -44
  22. package/ui/src/components/FolderBrowser.vue +2 -3
  23. package/ui/src/css/app.scss +1 -1
  24. package/ui/src/css/quasar.variables.scss +25 -25
  25. package/ui/src/layouts/MainLayout.vue +13 -13
  26. package/ui/src/pages/ApplyChanges.vue +46 -46
  27. package/ui/src/pages/CompareDatabase.vue +57 -57
  28. package/ui/src/pages/DatabaseManager.vue +42 -42
  29. package/ui/src/pages/DumpDatabase.vue +41 -41
  30. package/ui/src/pages/ErrorNotFound.vue +27 -27
  31. package/ui/src/pages/MainComponent copy.vue +322 -322
  32. package/ui/src/pages/MainComponent.vue +36 -23
  33. package/ui/src/router/index.js +30 -30
  34. package/ui/src/router/routes.js +20 -20
  35. package/ui/src/stores/example-store.js +21 -21
  36. package/ui/src/stores/index.js +20 -20
  37. package/ui/dist/spa/assets/axios-DrqNXj9v.js +0 -1
  38. package/ui/dist/spa/assets/index-NGPmhjJD.js +0 -30
@@ -1,25 +1,25 @@
1
- // Quasar SCSS (& Sass) Variables
2
- // --------------------------------------------------
3
- // To customize the look and feel of this app, you can override
4
- // the Sass/SCSS variables found in Quasar's source Sass/SCSS files.
5
-
6
- // Check documentation for full list of Quasar variables
7
-
8
- // Your own variables (that are declared here) and Quasar's own
9
- // ones will be available out of the box in your .vue/.scss/.sass files
10
-
11
- // It's highly recommended to change the default colors
12
- // to match your app's branding.
13
- // Tip: Use the "Theme Builder" on Quasar's documentation website.
14
-
15
- $primary : #1976D2;
16
- $secondary : #26A69A;
17
- $accent : #9C27B0;
18
-
19
- $dark : #1D1D1D;
20
- $dark-page : #121212;
21
-
22
- $positive : #21BA45;
23
- $negative : #C10015;
24
- $info : #31CCEC;
25
- $warning : #F2C037;
1
+ // Quasar SCSS (& Sass) Variables
2
+ // --------------------------------------------------
3
+ // To customize the look and feel of this app, you can override
4
+ // the Sass/SCSS variables found in Quasar's source Sass/SCSS files.
5
+
6
+ // Check documentation for full list of Quasar variables
7
+
8
+ // Your own variables (that are declared here) and Quasar's own
9
+ // ones will be available out of the box in your .vue/.scss/.sass files
10
+
11
+ // It's highly recommended to change the default colors
12
+ // to match your app's branding.
13
+ // Tip: Use the "Theme Builder" on Quasar's documentation website.
14
+
15
+ $primary : #1976D2;
16
+ $secondary : #26A69A;
17
+ $accent : #9C27B0;
18
+
19
+ $dark : #1D1D1D;
20
+ $dark-page : #121212;
21
+
22
+ $positive : #21BA45;
23
+ $negative : #C10015;
24
+ $info : #31CCEC;
25
+ $warning : #F2C037;
@@ -1,13 +1,13 @@
1
- <template>
2
- <q-layout view="lHh Lpr lFf">
3
-
4
-
5
- <q-page-container>
6
- <router-view />
7
- </q-page-container>
8
- </q-layout>
9
- </template>
10
-
11
- <script setup>
12
-
13
- </script>
1
+ <template>
2
+ <q-layout view="lHh Lpr lFf">
3
+
4
+
5
+ <q-page-container>
6
+ <router-view />
7
+ </q-page-container>
8
+ </q-layout>
9
+ </template>
10
+
11
+ <script setup>
12
+
13
+ </script>
@@ -1,46 +1,46 @@
1
- <template>
2
- <q-page>
3
- <q-btn @click="applyChanges" label="Apply Changes" color="primary" />
4
- <q-spinner v-if="loading" />
5
- <div v-if="message">{{ message }}</div>
6
- </q-page>
7
- </template>
8
-
9
- <script>
10
- import axios from 'axios';
11
-
12
- export default {
13
- data() {
14
- return {
15
- loading: false,
16
- message: '',
17
- };
18
- },
19
- methods: {
20
- async applyChanges() {
21
- this.loading = true;
22
- try {
23
- const response = await axios.post('http://localhost:3000/api/apply', {
24
- config: {
25
- host: this.$store.state.db.host,
26
- port: this.$store.state.db.port,
27
- user: this.$store.state.db.user,
28
- password: this.$store.state.db.password,
29
- },
30
- database: this.$store.state.db.database,
31
- diffs: this.getSelectedDiffs(), // Get selected differences to apply
32
- });
33
- this.message = response.data.message;
34
- } catch (error) {
35
- this.message = error.response.data.message;
36
- } finally {
37
- this.loading = false;
38
- }
39
- },
40
- getSelectedDiffs() {
41
- // Logic to get selected differences from the comparison view
42
- return []; // Placeholder
43
- },
44
- },
45
- };
46
- </script>
1
+ <template>
2
+ <q-page>
3
+ <q-btn @click="applyChanges" label="Apply Changes" color="primary" />
4
+ <q-spinner v-if="loading" />
5
+ <div v-if="message">{{ message }}</div>
6
+ </q-page>
7
+ </template>
8
+
9
+ <script>
10
+ import axios from 'axios';
11
+
12
+ export default {
13
+ data() {
14
+ return {
15
+ loading: false,
16
+ message: '',
17
+ };
18
+ },
19
+ methods: {
20
+ async applyChanges() {
21
+ this.loading = true;
22
+ try {
23
+ const response = await axios.post('http://localhost:3000/api/apply', {
24
+ config: {
25
+ host: this.$store.state.db.host,
26
+ port: this.$store.state.db.port,
27
+ user: this.$store.state.db.user,
28
+ password: this.$store.state.db.password,
29
+ },
30
+ database: this.$store.state.db.database,
31
+ diffs: this.getSelectedDiffs(), // Get selected differences to apply
32
+ });
33
+ this.message = response.data.message;
34
+ } catch (error) {
35
+ this.message = error.response.data.message;
36
+ } finally {
37
+ this.loading = false;
38
+ }
39
+ },
40
+ getSelectedDiffs() {
41
+ // Logic to get selected differences from the comparison view
42
+ return []; // Placeholder
43
+ },
44
+ },
45
+ };
46
+ </script>
@@ -1,57 +1,57 @@
1
- <template>
2
- <q-page>
3
- <q-btn @click="compareDatabases" label="Compare Databases" color="primary" />
4
- <q-table v-if="differences.length" :rows="differences" :columns="columns" />
5
- <q-spinner v-if="loading" />
6
- <div v-if="message">{{ message }}</div>
7
- </q-page>
8
- </template>
9
-
10
- <script>
11
- import axios from 'axios';
12
-
13
- export default {
14
- data() {
15
- return {
16
- loading: false,
17
- message: '',
18
- differences: [],
19
- columns: [
20
- { name: 'table', label: 'Table', align: 'left', field: 'table' },
21
- { name: 'difference', label: 'Difference', align: 'left', field: 'difference' },
22
- { name: 'action', label: 'Action', align: 'center', field: 'action', sortable: false },
23
- ],
24
- };
25
- },
26
- methods: {
27
- async compareDatabases() {
28
- this.loading = true;
29
- try {
30
- const response = await axios.post('http://localhost:3000/api/compare', {
31
- config: {
32
- host: this.$store.state.db.host,
33
- port: this.$store.state.db.port,
34
- user: this.$store.state.db.user,
35
- password: this.$store.state.db.password,
36
- },
37
- database: this.$store.state.db.database,
38
- output: 'outputDir', // Specify output directory
39
- });
40
- this.differences = response.data.map(diff => ({
41
- table: diff.table,
42
- difference: diff.difference,
43
- action: 'Apply', // Placeholder for action
44
- }));
45
- } catch (error) {
46
- this.message = error.response.data.message;
47
- } finally {
48
- this.loading = false;
49
- }
50
- },
51
- applyDifference(difference) {
52
- // Logic to apply the individual difference
53
- console.log('Applying difference:', difference);
54
- },
55
- },
56
- };
57
- </script>
1
+ <template>
2
+ <q-page>
3
+ <q-btn @click="compareDatabases" label="Compare Databases" color="primary" />
4
+ <q-table v-if="differences.length" :rows="differences" :columns="columns" />
5
+ <q-spinner v-if="loading" />
6
+ <div v-if="message">{{ message }}</div>
7
+ </q-page>
8
+ </template>
9
+
10
+ <script>
11
+ import axios from 'axios';
12
+
13
+ export default {
14
+ data() {
15
+ return {
16
+ loading: false,
17
+ message: '',
18
+ differences: [],
19
+ columns: [
20
+ { name: 'table', label: 'Table', align: 'left', field: 'table' },
21
+ { name: 'difference', label: 'Difference', align: 'left', field: 'difference' },
22
+ { name: 'action', label: 'Action', align: 'center', field: 'action', sortable: false },
23
+ ],
24
+ };
25
+ },
26
+ methods: {
27
+ async compareDatabases() {
28
+ this.loading = true;
29
+ try {
30
+ const response = await axios.post('http://localhost:3000/api/compare', {
31
+ config: {
32
+ host: this.$store.state.db.host,
33
+ port: this.$store.state.db.port,
34
+ user: this.$store.state.db.user,
35
+ password: this.$store.state.db.password,
36
+ },
37
+ database: this.$store.state.db.database,
38
+ output: 'outputDir', // Specify output directory
39
+ });
40
+ this.differences = response.data.map(diff => ({
41
+ table: diff.table,
42
+ difference: diff.difference,
43
+ action: 'Apply', // Placeholder for action
44
+ }));
45
+ } catch (error) {
46
+ this.message = error.response.data.message;
47
+ } finally {
48
+ this.loading = false;
49
+ }
50
+ },
51
+ applyDifference(difference) {
52
+ // Logic to apply the individual difference
53
+ console.log('Applying difference:', difference);
54
+ },
55
+ },
56
+ };
57
+ </script>
@@ -1,42 +1,42 @@
1
- <template>
2
- <q-page>
3
- <q-form @submit.prevent="connectToDatabase">
4
- <q-input v-model="host" label="Database Host" required />
5
- <q-input v-model="port" label="Database Port" type="number" required />
6
- <q-input v-model="user" label="Database User" required />
7
- <q-input v-model="password" label="Database Password" type="password" required />
8
- <q-input v-model="database" label="Database Name" required />
9
- <q-btn type="submit" label="Connect" color="primary" />
10
- </q-form>
11
-
12
- <q-btn @click="goToDump" label="Dump Database" color="secondary" />
13
- <q-btn @click="goToCompare" label="Compare Database" color="secondary" />
14
- </q-page>
15
- </template>
16
-
17
- <script>
18
- export default {
19
- data() {
20
- return {
21
- host: '',
22
- port: 3306,
23
- user: '',
24
- password: '',
25
- database: '',
26
- };
27
- },
28
- methods: {
29
- connectToDatabase() {
30
- // Logic to connect to the database using the provided credentials
31
- console.log('Connecting to database:', this.host, this.port, this.user, this.password, this.database);
32
- // Emit connection details to the socket server if needed
33
- },
34
- goToDump() {
35
- this.$router.push('/dump');
36
- },
37
- goToCompare() {
38
- this.$router.push('/compare');
39
- },
40
- },
41
- };
42
- </script>
1
+ <template>
2
+ <q-page>
3
+ <q-form @submit.prevent="connectToDatabase">
4
+ <q-input v-model="host" label="Database Host" required />
5
+ <q-input v-model="port" label="Database Port" type="number" required />
6
+ <q-input v-model="user" label="Database User" required />
7
+ <q-input v-model="password" label="Database Password" type="password" required />
8
+ <q-input v-model="database" label="Database Name" required />
9
+ <q-btn type="submit" label="Connect" color="primary" />
10
+ </q-form>
11
+
12
+ <q-btn @click="goToDump" label="Dump Database" color="secondary" />
13
+ <q-btn @click="goToCompare" label="Compare Database" color="secondary" />
14
+ </q-page>
15
+ </template>
16
+
17
+ <script>
18
+ export default {
19
+ data() {
20
+ return {
21
+ host: '',
22
+ port: 3306,
23
+ user: '',
24
+ password: '',
25
+ database: '',
26
+ };
27
+ },
28
+ methods: {
29
+ connectToDatabase() {
30
+ // Logic to connect to the database using the provided credentials
31
+ console.log('Connecting to database:', this.host, this.port, this.user, this.password, this.database);
32
+ // Emit connection details to the socket server if needed
33
+ },
34
+ goToDump() {
35
+ this.$router.push('/dump');
36
+ },
37
+ goToCompare() {
38
+ this.$router.push('/compare');
39
+ },
40
+ },
41
+ };
42
+ </script>
@@ -1,41 +1,41 @@
1
- <template>
2
- <q-page>
3
- <q-btn @click="dumpDatabase" label="Dump Database" color="primary" />
4
- <q-spinner v-if="loading" />
5
- <div v-if="message">{{ message }}</div>
6
- </q-page>
7
- </template>
8
-
9
- <script>
10
- import axios from 'axios';
11
-
12
- export default {
13
- data() {
14
- return {
15
- loading: false,
16
- message: '',
17
- };
18
- },
19
- methods: {
20
- async dumpDatabase() {
21
- this.loading = true;
22
- try {
23
- const response = await axios.post('http://localhost:3000/api/dump', {
24
- config: {
25
- host: this.$store.state.db.host,
26
- port: this.$store.state.db.port,
27
- user: this.$store.state.db.user,
28
- password: this.$store.state.db.password,
29
- },
30
- database: this.$store.state.db.database,
31
- });
32
- this.message = response.data.message;
33
- } catch (error) {
34
- this.message = error.response.data.message;
35
- } finally {
36
- this.loading = false;
37
- }
38
- },
39
- },
40
- };
41
- </script>
1
+ <template>
2
+ <q-page>
3
+ <q-btn @click="dumpDatabase" label="Dump Database" color="primary" />
4
+ <q-spinner v-if="loading" />
5
+ <div v-if="message">{{ message }}</div>
6
+ </q-page>
7
+ </template>
8
+
9
+ <script>
10
+ import axios from 'axios';
11
+
12
+ export default {
13
+ data() {
14
+ return {
15
+ loading: false,
16
+ message: '',
17
+ };
18
+ },
19
+ methods: {
20
+ async dumpDatabase() {
21
+ this.loading = true;
22
+ try {
23
+ const response = await axios.post('http://localhost:3000/api/dump', {
24
+ config: {
25
+ host: this.$store.state.db.host,
26
+ port: this.$store.state.db.port,
27
+ user: this.$store.state.db.user,
28
+ password: this.$store.state.db.password,
29
+ },
30
+ database: this.$store.state.db.database,
31
+ });
32
+ this.message = response.data.message;
33
+ } catch (error) {
34
+ this.message = error.response.data.message;
35
+ } finally {
36
+ this.loading = false;
37
+ }
38
+ },
39
+ },
40
+ };
41
+ </script>
@@ -1,27 +1,27 @@
1
- <template>
2
- <div class="fullscreen bg-blue text-white text-center q-pa-md flex flex-center">
3
- <div>
4
- <div style="font-size: 30vh">
5
- 404
6
- </div>
7
-
8
- <div class="text-h2" style="opacity:.4">
9
- Oops. Nothing here...
10
- </div>
11
-
12
- <q-btn
13
- class="q-mt-xl"
14
- color="white"
15
- text-color="blue"
16
- unelevated
17
- to="/"
18
- label="Go Home"
19
- no-caps
20
- />
21
- </div>
22
- </div>
23
- </template>
24
-
25
- <script setup>
26
- //
27
- </script>
1
+ <template>
2
+ <div class="fullscreen bg-blue text-white text-center q-pa-md flex flex-center">
3
+ <div>
4
+ <div style="font-size: 30vh">
5
+ 404
6
+ </div>
7
+
8
+ <div class="text-h2" style="opacity:.4">
9
+ Oops. Nothing here...
10
+ </div>
11
+
12
+ <q-btn
13
+ class="q-mt-xl"
14
+ color="white"
15
+ text-color="blue"
16
+ unelevated
17
+ to="/"
18
+ label="Go Home"
19
+ no-caps
20
+ />
21
+ </div>
22
+ </div>
23
+ </template>
24
+
25
+ <script setup>
26
+ //
27
+ </script>