Compare commits

...

1626 Commits

Author SHA1 Message Date
Fabio Di Stasio 0ec9d3cfc1
Merge pull request #807 from antares-sql/all-contributors/add-mangas
docs: add mangas as a contributor for code
2024-05-26 17:20:52 +02:00
allcontributors[bot] 4f615b26cf
docs: update .all-contributorsrc [skip ci] 2024-05-26 15:19:12 +00:00
allcontributors[bot] 86a1e05197
docs: update README.md [skip ci] 2024-05-26 15:19:11 +00:00
Fabio Di Stasio bd4502ee47
Merge pull request #800 from antares-sql/all-contributors/add-penguinlab
docs: add penguinlab as a contributor for translation
2024-05-07 16:31:40 +02:00
allcontributors[bot] 93de974b09
docs: update .all-contributorsrc [skip ci] 2024-05-07 14:29:50 +00:00
allcontributors[bot] 949bf4cbcb
docs: update README.md [skip ci] 2024-05-07 14:29:49 +00:00
Fabio Di Stasio 40bf9a040a
Merge pull request #797 from jimcat8/cn_trans
Update zh-CN.ts file and update translation
2024-05-05 20:56:29 +02:00
tianci 978b55fdb1
Update again 2024-05-05 18:11:22 +08:00
tianci 098d4e96d6
Update zh-CN.ts file and update translation 2024-05-05 18:07:02 +08:00
Fabio Di Stasio 957cb9e1a5 chore(release): 0.7.24 2024-05-03 14:21:14 +02:00
Fabio Di Stasio 09c274a724 fix: missing accent color change 2024-05-02 18:00:07 +02:00
Fabio Di Stasio 9bcd874e80 chore(release): 0.7.24-beta.1 2024-04-30 18:09:52 +02:00
Fabio Di Stasio ece2ee05cc perf(UI): improvements on light theme 2024-04-30 18:08:07 +02:00
Fabio Di Stasio 058fc2fc0b feat: accent color based on folder color, closes #762 2024-04-30 18:07:08 +02:00
Fabio Di Stasio 33bbc0e7e6 fix(PostgreSQL): better handle connection errors, should fix #794 2024-04-30 18:06:11 +02:00
Fabio Di Stasio 23c59b4d4e fix(PostgreSQL): issue with similar tabs on differend databases 2024-04-18 18:22:29 +02:00
Fabio Di Stasio 6600197b82 perf(UI): hide "insert row" button in read-only mode, closes #695 2024-04-14 16:23:56 +02:00
Fabio Di Stasio 33203aeb04 refactor(UI): change query tab buttons order 2024-04-12 18:03:17 +02:00
Fabio Di Stasio f4f385589f chore(release): 0.7.24-beta.0 2024-04-12 08:44:08 +02:00
Fabio Di Stasio 0565ae1204 fix(translation): missing translation for "Open notes" shortcut 2024-04-08 18:33:37 +02:00
Fabio Di Stasio 258fbc81f7 Merge branch 'master' of https://github.com/antares-sql/antares into develop 2024-04-08 18:30:23 +02:00
Fabio Di Stasio 8d8650fbe7 feat: unsaved file reminder closing file tabs 2024-04-08 18:29:05 +02:00
Fabio Di Stasio af2812f2b0
Merge pull request #788 from antares-sql/all-contributors/add-bagusindrayana
docs: add bagusindrayana as a contributor for code
2024-04-08 12:49:46 +02:00
allcontributors[bot] d163cbfac8
docs: update .all-contributorsrc [skip ci] 2024-04-08 10:49:32 +00:00
allcontributors[bot] 4537d96f3e
docs: update README.md [skip ci] 2024-04-08 10:49:31 +00:00
Fabio Di Stasio 099a71a189
Merge pull request #785 from bagusindrayana/feat-open-edit-save-file
Feat open, edit, and save file in query tab
2024-04-08 12:49:01 +02:00
Fabio Di Stasio e7efb9c616 refactor(UI): change to query tab icons to avoid ambiguity with new features 2024-04-08 09:52:46 +02:00
Fabio Di Stasio a752dcb6a9 chore(release): 0.7.23 2024-04-07 16:54:05 +02:00
bagusindrayana c1e58eb695 feat: open,save, and save as file in query tab 2024-04-06 15:34:42 +08:00
bagusindrayana f7204dc0ae feat: add translation for open,save, and save as file 2024-04-06 15:34:18 +08:00
bagusindrayana 6b56c60b68 feat: add shortcut open,save, and save as file 2024-04-06 15:33:01 +08:00
Fabio Di Stasio 1875e895ae chore(release): 0.7.23-beta.1 2024-04-02 09:10:17 +02:00
Fabio Di Stasio 2064294119 feat: add the page reference in the export file name, closes #772 2024-03-25 09:08:30 +01:00
Fabio Di Stasio 62e3115860 feat: move connections out of folder from context menu, related to #773 2024-03-24 11:10:00 +01:00
Fabio Di Stasio 9aef287a98 feat: move connections to folders from context menu, related to #773 2024-03-23 18:45:38 +01:00
Fabio Di Stasio 65ec4c5da6 fix: bad format of timestamp fields on CSV export, fixes 776 2024-03-23 16:33:19 +01:00
Fabio Di Stasio e19118982b chore(release): 0.7.23-beta.0 2024-03-21 23:09:09 +01:00
Fabio Di Stasio 11f130d91c
Merge pull request #778 from dyaskur/fix_shortcut_on_macos
fix: shortcut not working on mac os
2024-03-14 09:05:07 +01:00
Yaskur 0bb5cedda6 fix: shortcut not working on mac os 2024-03-13 15:48:59 +07:00
Fabio Di Stasio de9dac3e8a fix: query result sort not working with aliased tables, fixes #765 2024-03-10 16:04:24 +01:00
Fabio Di Stasio dd5b41716a fix: CSV export does not escape strings when needed, fixes #770 2024-03-09 15:42:36 +01:00
Fabio Di Stasio 86acb390ac build: add husky and commitlint 2024-03-09 15:05:55 +01:00
Fabio Di Stasio 2884ec3dd6 chore(release): 0.7.22 2024-02-26 18:20:31 +01:00
Fabio Di Stasio b542a09c01 Merge branch 'beta' of https://github.com/antares-sql/antares 2024-02-26 18:19:35 +01:00
Fabio Di Stasio 6d94a04b67 Merge branch 'develop' of https://github.com/antares-sql/antares into beta 2024-02-26 18:19:14 +01:00
Fabio Di Stasio 8500fc40a1 refactor: improved note tab selection 2024-02-26 18:17:15 +01:00
Fabio Di Stasio 586f901bae fix: delete record modal pressing del when editing a field, fixes #767 2024-02-23 18:08:02 +01:00
Fabio Di Stasio 04e4d21e20 chore(release): 0.7.22-beta.2 2024-02-18 14:49:58 +01:00
Fabio Di Stasio fd3dd03eb2 chore: moved electron in devDependencies 2024-02-18 14:47:56 +01:00
Fabio Di Stasio d3f71e65ce feat(MySQL): option to enable single connection mode 2024-02-18 14:37:45 +01:00
Fabio Di Stasio 90b9b87b1d chore(deps): update various dependencies 2024-02-18 13:44:22 +01:00
Fabio Di Stasio e9b42c3edb chore(release): 0.7.22-beta.1 2024-02-12 18:31:01 +01:00
Fabio Di Stasio 259d051a21 fix: some issues related to previous commit 2024-02-12 18:30:07 +01:00
Fabio Di Stasio 876d5ea481 perf(MySQL): improvements in connection handling 2024-02-11 16:38:06 +01:00
Fabio Di Stasio 6d002efaf5
Update FUNDING.yml 2024-02-09 12:07:16 +01:00
Fabio Di Stasio 58be1abf5f
Update README.md 2024-02-09 09:27:16 +01:00
Fabio Di Stasio da56905572 refactor: improved SET field edit 2024-02-07 17:37:19 +01:00
Fabio Di Stasio d698f2798a fix: unable to edit tables containing SET fields, fixes #755 2024-02-06 18:16:26 +01:00
Fabio Di Stasio 9a41511c42
Merge pull request #758 from 64knl/feat/translation-spelling
feat: update dutch translation + fix spelling mistake
2024-02-06 16:45:29 +01:00
Rene 30ada13663
feat: update dutch translation + fix spelling mistake 2024-02-06 15:38:42 +01:00
Fabio Di Stasio 14eeaccb07 chore(release): 0.7.22-beta.0 2024-02-04 14:40:24 +01:00
Fabio Di Stasio 1a0c5da2f1 feat(UI): resizable textarea in new/edito note, closes #747 2024-02-04 14:38:15 +01:00
Fabio Di Stasio bb36e98beb perf(UI): improved notes, fixes #746 2024-01-20 10:11:49 +01:00
Fabio Di Stasio 8928510fb5 refactor: use Record to type objects 2024-01-19 18:03:20 +01:00
Fabio Di Stasio eb5d3f14f1 chore(release): 0.7.21 2024-01-13 16:31:14 +01:00
Fabio Di Stasio 33c127b090 Merge branch 'master' of https://github.com/antares-sql/antares 2024-01-13 16:30:23 +01:00
Fabio Di Stasio 4e98dc21d8 Merge branch 'beta' of https://github.com/antares-sql/antares 2024-01-13 16:30:21 +01:00
Fabio Di Stasio 20b27343cd feat(SQLite): enable schema reloat button on sidebar 2024-01-13 16:28:55 +01:00
Fabio Di Stasio 3b9228a723 fix(SQLite): unable to change integer fields length to 0, fixes #732 2024-01-13 16:28:31 +01:00
Fabio Di Stasio ab0f91b448 chore: remove Twitter links 2024-01-11 14:09:34 +01:00
Fabio286 0b6307c738 chore(release): 0.7.21-beta.1 2024-01-06 19:04:36 +01:00
Fabio286 dbf38fd99c ci: update create-generated-sources.yml 2024-01-06 18:53:47 +01:00
Fabio286 169fcb13da build(deps): downgrade better-sqlite3 2024-01-06 18:17:58 +01:00
Fabio Di Stasio 97ece32988 ci: action to generate generated-sources.json 2024-01-05 11:14:58 +01:00
Fabio Di Stasio c946c3fcda ci: update node version 2024-01-05 11:14:05 +01:00
Fabio Di Stasio cdd2a11f8e fix(PostgreSQL): unhandled error on connection lost, fixes #740 2023-12-29 14:42:12 +01:00
Fabio Di Stasio 23946ff2ce fix(PostgreSQL): exception deleting a table with one or less tabs open 2023-12-28 10:44:11 +01:00
Fabio Di Stasio 0f8d2cb4ef fix(PostgreSQL): error adding MONEY fields to a table 2023-12-28 10:13:28 +01:00
Fabio Di Stasio 219f89aa60 chore(release): 0.7.21-beta.0 2023-12-25 11:46:27 +01:00
Fabio Di Stasio eec29e99cc Merge branch 'master' of https://github.com/antares-sql/antares into beta 2023-12-25 11:46:13 +01:00
Fabio Di Stasio 171caed8b5 chore: minor docs changes 2023-12-25 11:40:52 +01:00
Fabio Di Stasio 88ec71c943
Merge pull request #735 from antares-sql/feat/new-scratchpad
Feat/new scratchpad
2023-12-25 11:19:42 +01:00
Fabio Di Stasio 532002ca01 refactor: migrate old scratchpad into notes 2023-12-25 11:19:23 +01:00
Fabio Di Stasio 9a732ea197 feat: open saved queries in a tab 2023-12-25 10:54:41 +01:00
Fabio Di Stasio b734b24679 fix: JavaScript error at first startup, fixes #736 2023-12-25 09:35:43 +01:00
Fabio Di Stasio a52fc3fd92 feat: buttons to save and access to saved queryes from query tab 2023-12-22 18:48:16 +01:00
Fabio Di Stasio bfa3924d57 feat: highlithg sql in notes, history and console 2023-12-22 18:06:27 +01:00
Fabio Di Stasio 08e5a13f72 feat: ability to edit notes 2023-12-21 18:10:51 +01:00
Fabio Di Stasio eaaf1b756a feat: new notes system 2023-12-21 10:16:46 +01:00
Fabio Di Stasio 84d221aaa7 chore: utility commit 2023-12-13 18:29:45 +01:00
Fabio Di Stasio ba6063e636 chore(release): 0.7.20 2023-12-08 13:08:29 +01:00
Fabio Di Stasio b055350726 fix: missing update indicator on setting icon 2023-12-08 13:02:15 +01:00
Fabio Di Stasio dbd533b229 Merge branch 'develop' of https://github.com/antares-sql/antares into feat/new-scratchpad 2023-12-06 08:53:35 +01:00
Fabio Di Stasio b5b35be45c chore(release): 0.7.20-beta.2 2023-12-06 08:52:48 +01:00
Fabio Di Stasio 6a72f6b4ae fix: communication with worker thread not working 2023-12-06 08:51:48 +01:00
Fabio Di Stasio 756786d72e chore: utility commit 2023-12-06 08:44:07 +01:00
Fabio Di Stasio 861b704344 chore(release): 0.7.20-beta.1 2023-12-02 14:22:32 +01:00
Fabio Di Stasio 9ce53165e8 chore: post merge cleanup 2023-12-02 14:21:34 +01:00
Fabio Di Stasio 62614dceb9
Merge pull request #727 from antares-sql/flatpak-experiments
Flatpak experiments
2023-12-02 14:12:51 +01:00
Fabio Di Stasio 8774dd44e6
Merge branch 'develop' into flatpak-experiments 2023-12-02 14:12:18 +01:00
Fabio Di Stasio f0ae01ca5e Merge branch 'develop' of https://github.com/antares-sql/antares into develop 2023-12-02 12:11:35 +01:00
Fabio286 03be777c2a refactor: worker threads to import sql dump instead of process 2023-12-02 11:35:20 +01:00
Fabio286 45a695ac0a refactor: improvements in worker implementation 2023-12-02 11:21:48 +01:00
Fabio286 c176841b75 refactor: worker threads to export sql dump instead of process 2023-12-02 09:31:54 +01:00
Fabio286 329246e2d8 refactor: minor refactor 2023-12-01 20:05:30 +01:00
Fabio Di Stasio e26809f260 fix(Flatpak): import/export schema not working 2023-12-01 14:18:40 +01:00
Fabio Di Stasio f13d4e6dce feat: copy element names on sidebar from context menu, closes #718 2023-11-29 18:15:22 +01:00
Fabio286 879de91516 refactor: minor refactor 2023-11-27 18:35:56 +01:00
Fabio Di Stasio 38b32bfb28 build: process.exit on devtoolsInstaller 2023-11-27 13:37:24 +01:00
Fabio Di Stasio 315d9d84c2 feat: logging errors on log file 2023-11-27 13:36:56 +01:00
Fabio286 c3d96cb35b refactor(Flatpak): temporarily disable import/export feature 2023-11-26 17:49:12 +01:00
Fabio286 05bd7672e1 chore: update package-lock.json 2023-11-26 17:28:45 +01:00
Fabio286 390bf88bb8 refactor: inport/export change for flatpak 2023-11-26 16:42:30 +01:00
Fabio Di Stasio 984aa893d3 refactor: temporary disable windows process validation 2023-11-24 10:18:44 +01:00
Fabio Di Stasio 1ac816eaa9 Merge branch 'master' of https://github.com/antares-sql/antares into develop 2023-11-16 18:30:05 +01:00
Fabio Di Stasio 6f25fcbc05 ci: update workflow files 2023-11-16 18:16:41 +01:00
Fabio Di Stasio bc44465132 Merge branch 'master' of https://github.com/antares-sql/antares into develop 2023-11-16 18:09:51 +01:00
Fabio Di Stasio 634a442213 ci: update workflow files 2023-11-16 18:01:40 +01:00
Fabio Di Stasio 93fe28d07d chore(release): 0.7.20-beta.0 2023-11-15 21:36:27 +01:00
Fabio Di Stasio 77a78078b2 chore(deps): update electron-builder 2023-11-14 15:14:59 +01:00
Fabio Di Stasio 0da31254a9 Merge branch 'master' of https://github.com/antares-sql/antares into beta 2023-11-14 14:36:50 +01:00
Fabio Di Stasio b1aeabf2b6 ci: update gh actions scripts 2023-11-14 14:36:31 +01:00
Fabio Di Stasio f1c857fca9 chore(deps): update better-sqlite3 2023-11-14 10:38:26 +01:00
Fabio Di Stasio 169f610b2e fix: error with multiple sessions in non-dev environment 2023-11-13 18:08:29 +01:00
Fabio Di Stasio 075f542dc8 feat: ability to open multiple app sessions 2023-11-12 18:05:11 +01:00
Fabio Di Stasio 664b2181be
Merge pull request #712 from 64knl/feat/update-nl-translation
feat: Update Dutch translation
2023-11-12 15:43:15 +01:00
Fabio Di Stasio 1bc95b0c2c fix: missing open folder icon for trigger, function and other database elements on sidebar 2023-11-10 18:12:07 +01:00
Rene 8628711374
feat: nl string updates 2023-11-10 15:21:22 +01:00
Fabio Di Stasio 186fc18363 fix(Firebird SQL): error "Cannot read properties of null" connecting to some databases, fixes #708 2023-11-09 18:49:56 +01:00
Fabio Di Stasio e14302bdc0 feat(translation): add Ukrainian language, thanks to #707 2023-11-06 18:01:19 +01:00
Fabio Di Stasio 13afc8bffd
Merge pull request #710 from antares-sql/all-contributors/add-zvlad
docs: add zvlad as a contributor for translation
2023-11-06 09:15:12 +01:00
allcontributors[bot] 811be75c73
docs: update .all-contributorsrc [skip ci] 2023-11-06 08:14:38 +00:00
allcontributors[bot] bddec52b40
docs: update README.md [skip ci] 2023-11-06 08:14:37 +00:00
Fabio Di Stasio e34af5bfa4 chore: update README.md 2023-11-03 18:26:58 +01:00
Fabio Di Stasio 3322a06fed
Merge pull request #703 from jimcat8/cn_main
Updated zh-CN.ts file
2023-11-03 13:17:19 +01:00
tianci 74040cee44
update 2023-11-02 17:52:13 +08:00
tianci 27c904e7f4
Updated zh-CN.ts file 2023-11-02 16:51:13 +08:00
Fabio Di Stasio 6876dd6063 chore: add flathub badge in README.md 2023-11-02 09:25:13 +01:00
Fabio Di Stasio 4d676a41cd chode: add flatpak assets 2023-11-01 12:12:14 +01:00
Fabio Di Stasio 19d9f56f08 chore(release): 0.7.19 2023-11-01 09:43:50 +01:00
Fabio Di Stasio 4c89578188 Merge branch 'develop' of https://github.com/antares-sql/antares into beta 2023-11-01 09:42:59 +01:00
Fabio Di Stasio f6fb266771 fix: table field changes not saved on text fields if pressing enter on textarea modal 2023-10-31 17:57:58 +01:00
Fabio Di Stasio 3e739bcaa2 chore(release): 0.7.19-beta.2 2023-10-29 11:47:08 +01:00
Fabio Di Stasio debc1da289 fix: ssh tunnel keep-alive not working properly 2023-10-28 19:09:19 +02:00
Fabio Di Stasio 3c2e2be40f chore: regenerate package-lock.json 2023-10-28 18:47:06 +02:00
Fabio Di Stasio 581ec6a25d Merge branch 'develop' of https://github.com/antares-sql/antares into develop 2023-10-28 18:25:03 +02:00
Fabio Di Stasio d30a978cd6 refactor: replace ssh2-promise with @fabio286/ssh2-promise 2023-10-28 18:25:01 +02:00
Fabio286 0015f2e860 Merge branch 'master' of https://github.com/antares-sql/antares into develop 2023-10-28 11:58:06 +02:00
Fabio286 389e6624d8 chore: update stylelint dependencies 2023-10-28 11:55:18 +02:00
Fabio Di Stasio 275344eb8b chore(release): 0.7.19-beta.1 2023-10-26 01:07:15 +02:00
Fabio Di Stasio cf24adf99e Merge branch 'develop' of https://github.com/antares-sql/antares into beta 2023-10-26 01:06:54 +02:00
Fabio Di Stasio 2eae580e18 chore: update electron 2023-10-22 19:04:31 +02:00
Fabio Di Stasio e4eb27d503 feat(MySQL): RLIKE and NOT RLIKE regular expression filters, closes #688 2023-10-18 18:08:01 +02:00
Fabio Di Stasio 580973fd04 chore(release): 0.7.19-beta.0 2023-10-14 15:04:00 +02:00
Fabio Di Stasio 215ab783ab chore: email change 2023-10-14 15:03:09 +02:00
Fabio Di Stasio 72148e991c Merge branch 'master' of https://github.com/antares-sql/antares into develop 2023-10-13 09:23:41 +02:00
Fabio Di Stasio 6e4c16741a
chore: Update CODE_OF_CONDUCT.md 2023-10-13 09:22:04 +02:00
Fabio Di Stasio 9f9c63bfcc feat: "now" and "random" options added in datetime related data in insert rows tool, closes #402 2023-10-10 18:36:35 +02:00
Fabio Di Stasio c0dcf30e73 fix: IN and NOT IN filters not working properly, fixes #687 2023-10-09 18:13:30 +02:00
Fabio Di Stasio ddd290c903 fix: timeout issue on long time sql import 2023-10-03 18:19:16 +02:00
Fabio Di Stasio 267c017921 chore(release): 0.7.18 2023-10-03 09:31:58 +02:00
Fabio Di Stasio b3b698b3a2 fix: hotfix for Microsoft Store unauthorized process 2023-10-03 09:31:26 +02:00
Fabio Di Stasio 71ac3a5164 chore(release): 0.7.17 2023-09-30 16:46:49 +02:00
Fabio Di Stasio 6fc4418c02 chore(release): 0.7.17-beta.2 2023-09-28 18:11:10 +02:00
Fabio Di Stasio b37781df84 fix(UI): small icons in foreign key modal 2023-09-26 18:31:58 +02:00
Fabio Di Stasio 9c66fd51cb feat: add NOT LIKE to table filters, closes #672 2023-09-25 18:16:07 +02:00
Fabio Di Stasio 98c1f43a4d refactor: removed icon fonts in ace editor 2023-09-25 18:14:21 +02:00
Fabio Di Stasio 12825c69d4 Merge branch 'beta' of https://github.com/antares-sql/antares into develop 2023-09-24 23:06:01 +02:00
Fabio Di Stasio 198ff0103b fix: nsis updater not working 2023-09-24 23:04:35 +02:00
Fabio Di Stasio 94ce615fc8 chore(release): 0.7.17-beta.1 2023-09-23 16:00:52 +02:00
Fabio Di Stasio 354928e302 fix(UI): small icons in sidebar elements with long name 2023-09-21 11:18:00 +02:00
Fabio Di Stasio 6dceaf09be fix(SQLite): table content not refresh after an update, fixes #665 2023-09-20 17:54:25 +02:00
Fabio Di Stasio b321e64b83 fix(SQLite): field length lost when editing a table, fixes #664 2023-09-19 18:12:49 +02:00
Fabio Di Stasio 7e36260cdb fix: table filter not working when search string on integer field, #671 2023-09-19 18:10:27 +02:00
Fabio Di Stasio 894087e196 Merge branch 'beta' of https://github.com/antares-sql/antares into develop 2023-09-18 15:13:03 +02:00
Fabio Di Stasio 922f56f69b fix: flip not working on BaseIcon component 2023-09-18 08:56:26 +02:00
Fabio Di Stasio 7d84b4e81f chore(release): 0.7.17-beta.0 2023-09-17 23:56:24 +02:00
Fabio Di Stasio 495e48625c ci: manual creation of arm64 linux artifacts 2023-09-17 23:56:05 +02:00
Fabio Di Stasio 5934d3a990 ci: update beta build node version 2023-09-17 19:59:13 +02:00
Fabio Di Stasio cb92ca99f6 refactor: minor refactor 2023-09-17 19:04:24 +02:00
Fabio Di Stasio e7bec0aaaf perf: migration from font icons to svg icons 2023-09-17 18:49:37 +02:00
fabio286 9de5f67d18 perf: improved ipc validation on Linux 2023-09-13 16:30:08 +02:00
Fabio Di Stasio 13592425af perf(core): improved app security, fixes #666 2023-09-13 14:21:31 +02:00
Fabio Di Stasio 0de5ef8a98 fix: empty workspace deleting connections in some conditions 2023-09-11 18:02:19 +02:00
Fabio Di Stasio 785bc40ad0 build(deps): update some dependencies (vue, pinia, electron) 2023-09-08 15:05:28 +02:00
Fabio Di Stasio 940f64e6ab refactor: small cleanup 2023-09-08 09:20:13 +02:00
Fabio Di Stasio 535dd21d69
Merge pull request #662 from 64knl/feat/update-dutch-translation
feat(translation): Update Dutch
2023-09-07 15:50:04 +02:00
Rene b43c4000d5
feat(translation): Update Dutch 2023-09-07 10:44:38 +02:00
Fabio Di Stasio 757a2b3cbf fix(SQLite): disconnecting a sqlite connection does not truly close it, fixes #661 2023-09-05 18:08:43 +02:00
Fabio Di Stasio c78258219a Merge branch 'master' of https://github.com/antares-sql/antares into develop 2023-09-05 17:45:47 +02:00
Fabio Di Stasio fe23d86694
Merge pull request #633 from digitalgopnik/feat/ssh-keep-alive-interval
feat: customize keep-alive-interval for ssh-tunnel
2023-09-04 17:12:39 +02:00
Fabio Di Stasio 8d605ee287 feat: keep alive interval in seconds 2023-09-04 16:27:50 +02:00
Fabio Di Stasio fbe271af37 refactor: adaptation for changes to i18n 2023-09-04 15:27:56 +02:00
Fabio Di Stasio b838916937 Merge branch 'develop' of https://github.com/antares-sql/antares into pr/digitalgopnik/633 2023-09-04 14:59:21 +02:00
Fabio Di Stasio 77ab561058
Merge pull request #660 from antares-sql/dependabot/npm_and_yarn/develop/ace-builds-1.24.1
build(deps): bump ace-builds from 1.14.0 to 1.24.1
2023-09-04 14:05:33 +02:00
dependabot[bot] 7bb03b4922
build(deps): bump ace-builds from 1.14.0 to 1.24.1
Bumps [ace-builds](https://github.com/ajaxorg/ace-builds) from 1.14.0 to 1.24.1.
- [Release notes](https://github.com/ajaxorg/ace-builds/releases)
- [Changelog](https://github.com/ajaxorg/ace-builds/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ajaxorg/ace-builds/compare/v1.14.0...v1.24.1)

---
updated-dependencies:
- dependency-name: ace-builds
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-04 11:53:17 +00:00
Fabio Di Stasio de607a6b06
Merge pull request #659 from antares-sql/dependabot/npm_and_yarn/develop/vueuse/core-10.4.1
build(deps): bump @vueuse/core from 8.7.5 to 10.4.1
2023-09-04 13:52:29 +02:00
Fabio Di Stasio c5f89f9fdd
Merge pull request #640 from antares-sql/dependabot/npm_and_yarn/develop/mdi/font-7.2.96
build(deps): bump @mdi/font from 7.1.96 to 7.2.96
2023-09-04 13:48:41 +02:00
Fabio Di Stasio bf46b89988
Merge pull request #658 from antares-sql/dependabot/npm_and_yarn/develop/sql-formatter-13.0.0
build(deps): bump sql-formatter from 12.2.2 to 13.0.0
2023-09-04 13:38:33 +02:00
Fabio Di Stasio e6f45d71c7 fix(UI): update notification indicator moves settings icon 2023-09-02 16:09:19 +02:00
dependabot[bot] 8608c27f20
build(deps): bump @vueuse/core from 8.7.5 to 10.4.1
Bumps [@vueuse/core](https://github.com/vueuse/vueuse/tree/HEAD/packages/core) from 8.7.5 to 10.4.1.
- [Release notes](https://github.com/vueuse/vueuse/releases)
- [Commits](https://github.com/vueuse/vueuse/commits/v10.4.1/packages/core)

---
updated-dependencies:
- dependency-name: "@vueuse/core"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-01 19:14:14 +00:00
dependabot[bot] e031c75e28
build(deps): bump sql-formatter from 12.2.2 to 13.0.0
Bumps [sql-formatter](https://github.com/sql-formatter-org/sql-formatter) from 12.2.2 to 13.0.0.
- [Release notes](https://github.com/sql-formatter-org/sql-formatter/releases)
- [Changelog](https://github.com/sql-formatter-org/sql-formatter/blob/master/.release-it.json)
- [Commits](https://github.com/sql-formatter-org/sql-formatter/compare/v12.2.2...v13.0.0)

---
updated-dependencies:
- dependency-name: sql-formatter
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-01 19:13:36 +00:00
Fabio Di Stasio c1891dd5de chore(release): 0.7.16 2023-08-26 15:21:02 +02:00
Fabio Di Stasio 53fe986bcb Merge branch 'master' of https://github.com/antares-sql/antares into beta 2023-08-26 15:19:45 +02:00
Fabio Di Stasio 661043b181 Merge branch 'master' of https://github.com/antares-sql/antares into develop 2023-08-26 15:14:10 +02:00
Fabio Di Stasio b74ec71b10 chore: mastodon social link 2023-08-18 16:05:04 +02:00
Fabio Di Stasio 54df0e4aa8 style: implement eslint simple-import-sort 2023-08-18 15:57:31 +02:00
Fabio Di Stasio d702ce3fa9 chore(release): 0.7.16-beta.1 2023-08-18 12:22:56 +02:00
Fabio Di Stasio 63544e95da Merge branch 'feat/export-connections' of https://github.com/antares-sql/antares into develop 2023-08-18 12:12:05 +02:00
Fabio Di Stasio 6df214558f feat: ability to import connections 2023-08-18 12:11:08 +02:00
Fabio Di Stasio f5b86e59e7 feat: ability to export connections 2023-08-17 13:48:55 +02:00
Fabio Di Stasio 28f14c9195
Merge pull request #653 from antares-sql/all-contributors/add-Lawondyss
docs: add Lawondyss as a contributor for translation
2023-08-14 12:17:38 +02:00
allcontributors[bot] 90922e6f96
docs: update .all-contributorsrc [skip ci] 2023-08-14 10:17:13 +00:00
allcontributors[bot] 4b414df7e4
docs: update README.md [skip ci] 2023-08-14 10:17:12 +00:00
Fabio Di Stasio 27f0068415
Merge pull request #652 from Lawondyss/develop
Add CZ translation and titles for buttons
2023-08-14 12:16:44 +02:00
Ladislav Vondráček 52e42fa1b5 fix: add some missing titles of buttons 2023-08-14 11:50:38 +02:00
Ladislav Vondráček 5b9b539bc7 chore(i18n): add czech translation 2023-08-14 11:47:41 +02:00
Fabio Di Stasio 832aa75ebe fix(SQLite): improved view body parsing 2023-08-14 10:44:36 +02:00
Fabio Di Stasio aba67f3872 refactor(translation): refactor ca-ES to new format 2023-08-14 09:16:40 +02:00
Fabio Di Stasio 5a1644f023 Merge branches 'develop' and 'master' of https://github.com/antares-sql/antares into develop 2023-08-14 09:07:55 +02:00
Fabio Di Stasio e372712556
Merge pull request #651 from antares-sql/all-contributors/add-markusand
docs: add markusand as a contributor for translation
2023-08-14 09:06:55 +02:00
Fabio Di Stasio d4727a7d20
Merge pull request #649 from markusand/master
feat: Add support for catalan language
2023-08-14 09:06:42 +02:00
allcontributors[bot] f2c2f33afa
docs: update .all-contributorsrc [skip ci] 2023-08-14 07:06:40 +00:00
allcontributors[bot] 6dc4bdd0c0
docs: update README.md [skip ci] 2023-08-14 07:06:39 +00:00
Marc Vilella 9c6f1a9ea5
feat: Add catalan language 2023-08-13 19:20:26 +02:00
Fabio Di Stasio dd264f802e ci: update snapcraft.yaml 2023-08-11 18:12:38 +02:00
Fabio Di Stasio fed0e10702 Merge branch 'master' of https://github.com/antares-sql/antares into beta 2023-08-11 17:34:50 +02:00
Fabio Di Stasio e7ce4ef6ed Merge branch 'master' of https://github.com/antares-sql/antares 2023-08-11 17:34:30 +02:00
Fabio Di Stasio e03f2eef49 ci: update snapcraft.yaml 2023-08-11 17:34:27 +02:00
Fabio Di Stasio 3a77f0818d chore(release): 0.7.16-beta.0 2023-08-11 16:50:20 +02:00
Fabio Di Stasio 6cd2f89bbf refactor: ts improvements 2023-08-11 16:42:34 +02:00
Fabio Di Stasio 16ec82eb7e Merge branch 'develop' of https://github.com/antares-sql/antares into beta 2023-08-11 16:30:16 +02:00
Fabio Di Stasio 84b2255bf4 feat: ability to export a table dump from table context menu 2023-08-11 11:49:49 +02:00
Fabio Di Stasio 2e39d810b5 feat: ability to change sql dump file name 2023-08-11 09:52:25 +02:00
Fabio Di Stasio 56918d89c7 Merge branch 'master' of https://github.com/antares-sql/antares into develop 2023-08-09 18:45:05 +02:00
Fabio Di Stasio 083198af8f
chore: update README.md 2023-08-09 18:44:31 +02:00
Fabio Di Stasio ad7e459c68 feat: support to links in changelog 2023-08-08 18:05:27 +02:00
Fabio Di Stasio 8c4c93cb07 chore(translation): add translation helper script 2023-08-04 12:28:03 +02:00
Christian Ratz c0c33f8237
Merge branch 'develop' into feat/ssh-keep-alive-interval 2023-08-04 11:12:48 +02:00
Christian Ratz b4731d67a5 feat: customize keep-alive-interval for ssh-tunnel 2023-08-04 11:06:35 +02:00
Fabio Di Stasio eee85d24b7 ci: update snapcraft.yml 2023-08-03 18:36:27 +02:00
Fabio Di Stasio 92fe029906 refactor: minor translation improvements 2023-08-03 18:36:09 +02:00
Fabio Di Stasio 1dd2147b68 refactor(translation): complete refactor of translations structure 2023-08-03 18:28:50 +02:00
Fabio Di Stasio 5a54e7ac33 Merge branch 'master' of https://github.com/antares-sql/antares into beta 2023-08-02 09:21:24 +02:00
Fabio Di Stasio c19bac2373 Merge branch 'master' of https://github.com/antares-sql/antares into develop 2023-08-02 09:20:29 +02:00
Fabio Di Stasio 7b1cb4ff86 fix(MySQL): missing error details on mysql importer with some exceptione 2023-08-01 10:04:00 +02:00
Fabio Di Stasio f120af25f4 build(deps): update mysql2 2023-08-01 10:02:35 +02:00
Fabio Di Stasio 83b3ca563a chore(release): 0.7.15 2023-07-31 13:04:53 +02:00
Fabio Di Stasio 0fab3bc43c ci: arrangements for beta channel 2023-07-31 13:04:30 +02:00
dependabot[bot] de40414a0d
build(deps): bump @mdi/font from 7.1.96 to 7.2.96
Bumps [@mdi/font](https://github.com/Templarian/MaterialDesign-Webfont) from 7.1.96 to 7.2.96.
- [Commits](https://github.com/Templarian/MaterialDesign-Webfont/compare/v7.1.96...v7.2.96)

---
updated-dependencies:
- dependency-name: "@mdi/font"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-31 08:55:49 +00:00
Fabio Di Stasio 473c4636cf ci: arrangements for beta channel 2023-07-31 10:55:05 +02:00
Fabio Di Stasio 2e11a0c032 chore: update dependabot branch target 2023-07-26 17:57:14 +02:00
Fabio Di Stasio 193042b92d chore: update dependabot branch target 2023-07-26 17:42:16 +02:00
Fabio Di Stasio 51b14195a8 fix(MySQL): error insertinf new fields with some MySQL configurations, fixes #360 2023-07-24 09:09:11 +02:00
Fabio Di Stasio f831fcd442 fix: display content of BLOB fields if not binary, fixes #628 2023-07-21 18:17:31 +02:00
Fabio Di Stasio 3104847b92
Merge pull request #630 from SmileYzn/master
Update pt-BR.ts 🇧🇷
2023-07-21 08:44:11 +02:00
Cleverson bc0b029369
Update pt-BR.ts 2023-07-20 16:55:23 -03:00
Fabio Di Stasio efee7f3a0e Merge branch 'master' of https://github.com/antares-sql/antares 2023-07-17 18:00:43 +02:00
Fabio Di Stasio 7c820b1827 fix(MySQL): unable to set more than one value in SET fields 2023-07-17 18:00:40 +02:00
Fabio Di Stasio 38ec703705
Merge pull request #625 from antares-sql/all-contributors/add-zxp19821005
docs: add zxp19821005 as a contributor for platform
2023-07-17 09:34:48 +02:00
allcontributors[bot] 2afb66a2e6
docs: update .all-contributorsrc [skip ci] 2023-07-17 07:34:13 +00:00
allcontributors[bot] 5a5af3af5e
docs: update README.md [skip ci] 2023-07-17 07:34:12 +00:00
Fabio Di Stasio 8f0e5407ae Merge branch 'master' of https://github.com/antares-sql/antares 2023-07-16 11:33:30 +02:00
Fabio Di Stasio 8bed7c2f34 chore: update README.md AUR link 2023-07-16 11:33:28 +02:00
Fabio Di Stasio f4a2f43ea4
Merge pull request #621 from brdtheo/i18n-french-translation
chore(i18n): update french translation
2023-07-16 11:16:41 +02:00
Théo Billardey 6063b3f697 chore(i18n): update french translation 2023-07-15 21:57:18 +02:00
Fabio Di Stasio 2f5fa0f2e4 feat: export file name with hour, minutes and seconds, closes #610 2023-07-12 15:20:44 +02:00
Fabio Di Stasio 703a515462 chore(release): 0.7.14 2023-07-07 15:22:53 +02:00
Fabio Di Stasio 9d8e9a5e1f perf(PostgreSQL): minor improvement to schema selection 2023-07-07 15:22:16 +02:00
Fabio Di Stasio 1c73503138 fix: unable to insert new rows 2023-07-07 15:21:48 +02:00
Fabio Di Stasio 32bbc45329 feat: button to open view settings tab 2023-07-07 09:04:40 +02:00
Fabio Di Stasio 9d90dc362e chore(release): 0.7.13 2023-07-06 22:02:55 +02:00
Fabio Di Stasio e808b86c52 fix(PostgreSQL): unable to connect to database, fixes #614 2023-07-06 22:01:41 +02:00
Fabio Di Stasio 6e01f0f2e7 fix: unable to copy as sql inserts with BIT fileds, fixes #613 2023-07-06 12:06:32 +02:00
Fabio Di Stasio 38bfea279c feat: button to open table settings tab, closes #608 2023-07-05 18:27:30 +02:00
Fabio Di Stasio 0044522390
Merge pull request #611 from 64knl/feat/update-connection-icons
feat: update connection icons
2023-07-05 17:42:49 +02:00
Rene 462ede8dc7 feat: update connection
icons to better match other icons
2023-07-05 15:50:17 +02:00
Fabio Di Stasio 60dd4df5ec chore(release): 0.7.12 2023-07-03 09:04:25 +02:00
Fabio Di Stasio fa006798cf
Merge pull request #602 from antares-sql/all-contributors/add-64knl
docs: add 64knl as a contributor for translation
2023-06-30 08:07:37 +02:00
Fabio Di Stasio c5abc3d6b2
Merge pull request #599 from 64knl/feat/locale-dutch
feat: Add Dutch translation
2023-06-30 08:07:15 +02:00
allcontributors[bot] a8dc30c9dd
docs: update .all-contributorsrc [skip ci] 2023-06-30 06:07:02 +00:00
allcontributors[bot] 2cfed3e79b
docs: update README.md [skip ci] 2023-06-30 06:07:01 +00:00
Rene 001983c5a2 fix: update source string to fix spelling 2023-06-24 17:13:12 +02:00
Fabio Di Stasio 470f7455c0
Merge pull request #598 from antares-sql/all-contributors/add-64knl
docs: add 64knl as a contributor for code
2023-06-24 13:18:21 +02:00
allcontributors[bot] 70e00a7ee6
docs: update .all-contributorsrc [skip ci] 2023-06-24 11:18:08 +00:00
allcontributors[bot] b76247e304
docs: update README.md [skip ci] 2023-06-24 11:18:07 +00:00
Fabio Di Stasio f58c30ff17
Merge pull request #597 from 64knl/feat/sort-available-languages
feat: Sort available languages
2023-06-24 13:16:46 +02:00
Fabio Di Stasio 5bdbebfbc3
Merge pull request #596 from 64knl/fix/spelling-appearance
fix: spelling corrections
2023-06-24 13:16:27 +02:00
Rene 03c4a1c797 wip: more translations 2023-06-22 19:06:02 +02:00
Rene e18604b3ce wip: translation 2023-06-22 18:59:23 +02:00
Rene 3ff8d2571b feat: Sort available languages alphabetically 2023-06-22 18:27:41 +02:00
Rene f22f8d2317 wip: translation 2023-06-22 18:22:44 +02:00
Rene 8a4a099e37 fix: rename components and variables in SettingBarContext 2023-06-22 18:18:13 +02:00
Rene 702ffb81ef style: formatting 2023-06-22 17:40:23 +02:00
Rene 93e16fdda2 fix: spelling corrections
- Updated appearence -> appearance across files
- Fixed some English spelling mistakes
2023-06-22 17:36:53 +02:00
Rene 575c8ea8ca feat: more translations 2023-06-22 15:06:53 +02:00
Rene 4ff1d107b8 feat: add Dutch language support 2023-06-22 14:43:15 +02:00
Fabio Di Stasio 3ad1e51f42 feat: format options of csv export, closes #196 2023-06-14 19:47:09 +02:00
Fabio Di Stasio e07e7b736e fix(PostgreSQL): unable to export as sql inserts 2023-06-14 09:38:54 +02:00
Fabio Di Stasio 89815bf5e7 feat(PostgreSQL): ability to switch the database, closes #432 2023-06-13 18:10:52 +02:00
Fabio Di Stasio 9d00f58998
chore: update README.md 2023-06-12 21:44:06 +02:00
Fabio Di Stasio f5d001846a
Merge pull request #554 from antares-sql/dependabot/npm_and_yarn/sql-formatter-12.2.0
build(deps): bump sql-formatter from 12.0.3 to 12.2.0
2023-06-12 15:07:19 +02:00
Fabio Di Stasio 0a6907b549 Merge branch 'master' into dependabot/npm_and_yarn/sql-formatter-12.2.0 2023-06-12 15:01:48 +02:00
Fabio Di Stasio 322f92b734
Merge pull request #591 from m1khal3v/patch-3
Update ru-RU.ts
2023-06-07 03:57:34 +02:00
Anton Mikhalev 038e4494f5
Update ru-RU.ts 2023-06-06 23:41:22 +03:00
Fabio Di Stasio 56b71ec0d1 chore(release): 0.7.11 2023-06-04 10:43:42 +02:00
Fabio286 787014c38d feat: context menu to close tabs, closes #392 2023-06-03 19:13:20 +02:00
Fabio Di Stasio e60726c741 fix: disable filter during table content loading, fixes #588 2023-06-01 18:00:16 +02:00
Fabio Di Stasio 904670781d fix(MySQL): unable to get users list with some db settings 2023-06-01 11:47:31 +02:00
Fabio Di Stasio 22bdaac18b fix: weird behavior in some text editors 2023-06-01 11:42:19 +02:00
Fabio Di Stasio 446199827b fix: unique keys not recognized in table settings on some MariaDB versions 2023-05-30 18:33:37 +02:00
Fabio Di Stasio 53a71d55c5 chore(release): 0.7.10 2023-05-28 13:32:38 +02:00
Fabio Di Stasio 03638c0553 feat: copy rows as PHP array 2023-05-28 13:31:44 +02:00
Fabio Di Stasio 8968179c11 feat: export table content or query results as PHP array, closes #575 2023-05-28 13:20:28 +02:00
Fabio Di Stasio 2c0b4ffe1f fix: disable shorctut to show Ace editor settings, fixes #585 2023-05-26 18:17:23 +02:00
Fabio Di Stasio f454b4bb1c feat: DDL query in table settings for MySQL and PostgreSQL, closes #581 2023-05-25 18:51:56 +02:00
Fabio Di Stasio 56698725cb
Merge pull request #583 from m1khal3v/patch-2
Update ru-RU.ts
2023-05-21 00:40:16 +02:00
Anton Mikhalev 1896013267
Update ru-RU.ts 2023-05-19 14:14:35 +03:00
Fabio Di Stasio 17eeb6d38e feat: keepalive on mysql/postgre connections, should fix #577 2023-05-14 18:48:21 +02:00
Fabio Di Stasio 5e83b4466d
Merge pull request #574 from antares-sql/all-contributors/add-m1khal3v
docs: add m1khal3v as a contributor for translation
2023-05-05 09:13:09 +02:00
allcontributors[bot] 45d1934f96
docs: update .all-contributorsrc [skip ci] 2023-05-05 07:12:57 +00:00
allcontributors[bot] 7821e25bdb
docs: update README.md [skip ci] 2023-05-05 07:12:56 +00:00
Fabio Di Stasio ae8d558989
Merge pull request #572 from m1khal3v/patch-1
Update ru-RU.ts
2023-05-05 09:12:12 +02:00
Anton Mikhalev b348c83501
Update ru-RU.ts 2023-05-04 16:11:10 +03:00
Anton Mikhalev f58a12ebd5
Update ru-RU.ts 2023-05-04 16:01:17 +03:00
Anton Mikhalev b806deeed0
Update ru-RU.ts 2023-05-04 14:36:47 +03:00
Anton Mikhalev 4e1be838bd
Update ru-RU.ts 2023-05-04 14:19:38 +03:00
Anton Mikhalev bb7ec76ced
Update ru-RU.ts 2023-05-04 14:05:12 +03:00
Anton Mikhalev e2b843cd18
Update ru-RU.ts 2023-05-04 14:01:52 +03:00
Fabio Di Stasio 8c9713e805 ci: action to create linux arm64 artifacts 2023-05-02 08:57:14 +02:00
Fabio Di Stasio 786de6a7ba ci: disable arm64 linux target 2023-05-01 13:41:01 +02:00
Fabio Di Stasio 1bf54a69fd ci: disable arm deb target 2023-05-01 13:11:41 +02:00
Fabio Di Stasio 3ddfd6bb44 chore(release): 0.7.9 2023-05-01 10:45:41 +02:00
Fabio Di Stasio c48266c336 feat: option to choose the target table of an SQL INSERT exportation, closes #556 2023-04-28 18:46:24 +02:00
Fabio Di Stasio 96e1ceb1d2 perf(translation): update italian translation 2023-04-27 18:12:19 +02:00
Fabio Di Stasio 19859f45f4 feat: no table results message 2023-04-27 18:11:36 +02:00
Fabio Di Stasio 74c136f833 fix: unable to delete rows with null values and no primary key 2023-04-27 14:14:04 +02:00
Fabio Di Stasio af91d96db6 fix: sidebar height out of visible area 2023-04-26 18:52:32 +02:00
Fabio Di Stasio 0cd55fbfe9 fix: vertical scrollbar does not reset after performing a search, fixes #567 2023-04-21 00:47:31 +02:00
Fabio Di Stasio 55aee163b6
Merge pull request #562 from antares-sql/all-contributors/add-555cider
docs: add 555cider as a contributor for translation
2023-04-17 09:22:30 +02:00
allcontributors[bot] eb172022fa
docs: update .all-contributorsrc [skip ci] 2023-04-17 07:22:12 +00:00
allcontributors[bot] 0d5cac27ed
docs: update README.md [skip ci] 2023-04-17 07:22:11 +00:00
Fabio Di Stasio baef4ea4d1 feat(translation): ko-KR translation, closes #561 2023-04-17 09:21:01 +02:00
Fabio Di Stasio 6b3b22a01a chore(release): 0.7.8 2023-04-12 08:57:17 +02:00
Fabio Di Stasio ebf7780c3c refactor: fix ts error 2023-04-08 13:12:29 +02:00
Fabio Di Stasio 0f24c80e5a feat(MySQL): option to export from results SQL INSERTS in chunks, closes #501 2023-04-08 13:03:46 +02:00
Fabio Di Stasio afa61a9bc2 fix: unable to export BLOB values from table content o query result 2023-04-08 09:39:28 +02:00
Fabio Di Stasio 8be9f932e7 feat: filter schemas in sidebar, closes #555 2023-04-07 18:06:41 +02:00
Fabio Di Stasio d802b32597 fix: triggers not exported if related table not included 2023-04-04 11:55:39 +02:00
dependabot[bot] 12f3e03b45
build(deps): bump sql-formatter from 12.0.3 to 12.2.0
Bumps [sql-formatter](https://github.com/sql-formatter-org/sql-formatter) from 12.0.3 to 12.2.0.
- [Release notes](https://github.com/sql-formatter-org/sql-formatter/releases)
- [Changelog](https://github.com/sql-formatter-org/sql-formatter/blob/master/.release-it.json)
- [Commits](https://github.com/sql-formatter-org/sql-formatter/compare/v12.0.3...v12.2.0)

---
updated-dependencies:
- dependency-name: sql-formatter
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-01 20:01:44 +00:00
Fabio Di Stasio 28f0419af4 refactor: remove viewMenu on macOS 2023-03-30 18:07:24 +02:00
Fabio Di Stasio 52108d7613 fix(MySQL): missing scale for FLOAT type 2023-03-28 17:27:47 +02:00
Fabio Di Stasio df6625af49 chore(release): 0.7.7 2023-03-10 18:12:26 +01:00
Fabio Di Stasio 59846e6ff4 fix(MySQL): missing table information in table setting tab 2023-03-09 09:07:57 +01:00
Fabio Di Stasio 63fece2a1b fix(Linux): remove app menu shown pressing ALT key 2023-03-06 18:29:53 +01:00
Fabio Di Stasio 9ef475ec3f chore: package.json changes 2023-03-06 09:38:51 +01:00
Fabio Di Stasio 3546c57e39 fix: unable to set string fields default values starting with 0 2023-03-02 18:09:16 +01:00
Fabio Di Stasio 8730be02af ci: minor change 2023-03-02 09:49:59 +01:00
Fabio Di Stasio b925ff9c01 fix(Linux): remove app menu shown pressing ALT key 2023-03-02 09:07:10 +01:00
Fabio Di Stasio 2c46269cf2 fix: hide table size tooltip if disabled 2023-03-02 09:06:28 +01:00
Fabio Di Stasio 23d8467154 chore(release): 0.7.6 2023-02-27 10:44:53 +01:00
Fabio Di Stasio d1297a0085 fix: error with import/export tools, fixes #541 2023-02-27 10:43:51 +01:00
Fabio Di Stasio 6bd8667f43
Merge pull request #540 from jimcat8/cn_main
Supplement the key-value pair and translate its value.
2023-02-27 10:07:46 +01:00
tianci li c9093a36b3 Word error 2023-02-27 12:14:20 +08:00
tianci li b6dbfe1564 Supplement the key-value pair and translate its value. 2023-02-27 11:59:29 +08:00
Fabio Di Stasio 06b0090480 chore(release): 0.7.5 2023-02-26 17:29:31 +01:00
Fabio Di Stasio 629ce63329 fix: single quotes not properly escaped for random generated content 2023-02-26 17:02:41 +01:00
Fabio Di Stasio 313e7407eb feat(MySQL): option, disabled by default, to enable table size indicators on sidebar 2023-02-23 08:51:33 +01:00
Fabio Di Stasio 4458177688 fix(MariaDB): exception with event_scheduler DISABLED with MariaDB 10, fixes #535 2023-02-21 18:07:29 +01:00
Fabio Di Stasio ea7865a086
Merge pull request #533 from antares-sql/all-contributors/add-jimcat8
docs: add jimcat8 as a contributor for translation
2023-02-19 10:43:34 +01:00
allcontributors[bot] ca900f3dcf
docs: update .all-contributorsrc [skip ci] 2023-02-19 09:43:23 +00:00
allcontributors[bot] 4f6f28c6e6
docs: update README.md [skip ci] 2023-02-19 09:43:22 +00:00
Fabio Di Stasio 8caac0f21d
Merge pull request #532 from jimcat8/cn_main
Updated zh-CN translation text
2023-02-19 10:43:15 +01:00
tianci li cacfc1c2eb review 2023-02-19 14:21:42 +08:00
tianci li 2f30c0d42f Updated zh-CN translation text 2023-02-19 14:07:49 +08:00
Fabio Di Stasio b1fbc43ab2 fix: unable to import after a failed import, fixes #515 2023-02-13 18:06:55 +01:00
Fabio Di Stasio fe9817bf31 chore(release): 0.7.4 2023-02-10 09:26:50 +01:00
Fabio Di Stasio ddb7ead083 fix: tables sort in sidebar 2023-02-10 09:26:17 +01:00
Fabio Di Stasio 9d8c21244b chore(release): 0.7.3 2023-02-09 11:50:16 +01:00
Fabio Di Stasio d934ae1e6c fix(SQLite): triggers disappear after editing related table, fixes #523 2023-02-04 13:51:02 +01:00
Fabio Di Stasio 68f8d48064 chore: minor ts changes 2023-02-04 12:10:09 +01:00
Fabio Di Stasio e7e491340a feat(SQLite): added support to INTEGER UNSIGNED 2023-02-04 11:38:30 +01:00
Fabio Di Stasio e8447e5655 fix: select of table type stuck when editing an unknown type 2023-02-04 11:34:53 +01:00
Fabio Di Stasio 6decba316c fix: longtext edit modal opens when it shouldn't, fixes #524 2023-02-04 09:36:29 +01:00
Fabio Di Stasio 2b5e1e7b39 fix(SQLite): error with integer timestamp fields 2023-02-04 09:07:41 +01:00
Fabio Di Stasio a124f04661
Merge pull request #529 from antares-sql/dependabot/npm_and_yarn/mdi/font-7.1.96
build(deps): bump @mdi/font from 7.0.96 to 7.1.96
2023-02-02 16:45:38 +01:00
dependabot[bot] 3ee4ab4d84
build(deps): bump @mdi/font from 7.0.96 to 7.1.96
Bumps [@mdi/font](https://github.com/Templarian/MaterialDesign-Webfont) from 7.0.96 to 7.1.96.
- [Release notes](https://github.com/Templarian/MaterialDesign-Webfont/releases)
- [Commits](https://github.com/Templarian/MaterialDesign-Webfont/compare/v7.0.96...v7.1.96)

---
updated-dependencies:
- dependency-name: "@mdi/font"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-01 19:05:41 +00:00
Fabio Di Stasio 174aa3c508 chore(release): 0.7.2 2023-01-22 17:16:04 +01:00
Fabio Di Stasio 729edd40a6 build: update electron 2023-01-22 15:07:47 +01:00
Fabio Di Stasio c7ab3b77a2 fix: allow comments in queies, fixes #519 2023-01-19 14:32:37 +01:00
Fabio Di Stasio 5624b3b2d7
Merge pull request #520 from dyaskur/master
add copy shortcut and default copy type setting
2023-01-16 18:16:13 +01:00
Fabio Di Stasio 4c16d8c61f refactor: results table setting section 2023-01-16 18:15:49 +01:00
Dyas🍌 Yaskur🍎 9aca89477f
feat: add copy shortcut and default copy type setting 2023-01-16 04:49:44 +07:00
Fabio Di Stasio 0e80e823d0 fix(SQLite): exception saving tables without INT fields length 2023-01-09 10:02:28 +01:00
Fabio Di Stasio ff4bc6c39b feat: connection info icons in footer 2023-01-05 17:21:22 +01:00
Fabio Di Stasio b4e1e9ac26 Merge branch 'master' of https://github.com/antares-sql/antares 2023-01-02 09:21:03 +01:00
Fabio Di Stasio f177c7f1f1 style: minor refactor 2023-01-02 09:21:01 +01:00
Fabio Di Stasio 6a67c27915
Merge pull request #406 from antares-sql/dependabot/npm_and_yarn/electron-store-8.1.0
build(deps): bump electron-store from 8.0.2 to 8.1.0
2023-01-02 09:19:15 +01:00
Fabio Di Stasio 374cedba2b
Merge pull request #510 from antares-sql/dependabot/npm_and_yarn/pinia-2.0.28
build(deps): bump pinia from 2.0.27 to 2.0.28
2023-01-02 09:18:55 +01:00
dependabot[bot] de8097c297
build(deps): bump pinia from 2.0.27 to 2.0.28
Bumps [pinia](https://github.com/vuejs/pinia) from 2.0.27 to 2.0.28.
- [Release notes](https://github.com/vuejs/pinia/releases)
- [Commits](https://github.com/vuejs/pinia/compare/pinia@2.0.27...pinia@2.0.28)

---
updated-dependencies:
- dependency-name: pinia
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-01 19:02:46 +00:00
Fabio Di Stasio 6fa430adf6 fix: ssh connection closed after idle time, fixes #425 2022-12-29 13:04:20 +01:00
Fabio Di Stasio 0e7b93c2df chore(release): 0.7.1 2022-12-23 09:25:50 +01:00
Fabio Di Stasio 843c15e428 fix(MySQL): not every connection gets read-only option 2022-12-23 09:24:05 +01:00
Fabio Di Stasio 2982b6cb96 ci: change macos build target to macos-11 2022-12-22 22:22:17 +01:00
Fabio Di Stasio c08946e932 fix: context submenu outside view when near the edge, fixes #506 2022-12-22 11:27:13 +01:00
Fabio Di Stasio 55c1604e7f refactor(UI): hide selected connection bar when folder preview 2022-12-21 13:16:56 +01:00
Fabio Di Stasio d64fbbad0f
Merge pull request #505 from antares-sql/all-contributors/add-dyaskur
docs: add dyaskur as a contributor for code
2022-12-20 21:30:13 +01:00
allcontributors[bot] c88d734bc0
docs: update .all-contributorsrc [skip ci] 2022-12-20 20:29:48 +00:00
allcontributors[bot] 99d94ea92c
docs: update README.md [skip ci] 2022-12-20 20:29:47 +00:00
Fabio Di Stasio e4f620c5a1
Merge pull request #500 from dyaskur/add_copy_as_table_rows
feat: Copy rows as html table, so we can paste it to spreadsheet
2022-12-20 21:28:54 +01:00
Fabio Di Stasio 99f9a9e188 refactor: replace string "Table" with localization 2022-12-20 21:26:33 +01:00
Dyas🍌 Yaskur🍎 2236c8fe75
set copy plain text delimiter to tab 2022-12-19 19:07:31 +07:00
Fabio Di Stasio b9a097e2f5
Merge pull request #502 from antares-sql/all-contributors/add-dyaskur
docs: add dyaskur as a contributor for translation
2022-12-19 09:00:17 +01:00
allcontributors[bot] 966446afd6
docs: update .all-contributorsrc [skip ci] 2022-12-19 07:59:59 +00:00
allcontributors[bot] b681adc632
docs: update README.md [skip ci] 2022-12-19 07:59:58 +00:00
Fabio Di Stasio 15d0158993
Merge pull request #498 from dyaskur/indonesian-language-translation
Add new language: Bahasa Indonesia
2022-12-19 08:58:25 +01:00
Fabio Di Stasio e76d324810 chore: minor change in e2e tests 2022-12-19 08:54:20 +01:00
Dyas🍌 Yaskur🍎 897795ddbb
fix: bahasa indonesia typos 2022-12-19 07:34:50 +07:00
Dyas🍌 Yaskur🍎 c32f463ea5
feat: Copy rows as html table, so we can paste it to spreadsheet 2022-12-19 05:33:50 +07:00
Dyas🍌 Yaskur🍎 25e1ba4384
Add new language: Bahasa Indonesia 2022-12-19 04:36:10 +07:00
dependabot[bot] a71ae05c6f
build(deps): bump electron-store from 8.0.2 to 8.1.0
Bumps [electron-store](https://github.com/sindresorhus/electron-store) from 8.0.2 to 8.1.0.
- [Release notes](https://github.com/sindresorhus/electron-store/releases)
- [Commits](https://github.com/sindresorhus/electron-store/compare/v8.0.2...v8.1.0)

---
updated-dependencies:
- dependency-name: electron-store
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-18 15:01:12 +00:00
Fabio Di Stasio 1bd26ceaa6 feat: option to disable selected query execution, closes #477 2022-12-18 15:59:58 +01:00
Fabio Di Stasio 56a0361ed2
Merge pull request #493 from antares-sql/all-contributors/add-brdtheo
docs: add brdtheo as a contributor for translation
2022-12-12 09:14:39 +01:00
allcontributors[bot] c0dd3e0941
docs: update .all-contributorsrc [skip ci] 2022-12-12 08:14:23 +00:00
allcontributors[bot] 33ab5d7491
docs: update README.md [skip ci] 2022-12-12 08:14:22 +00:00
Fabio Di Stasio 72e6a23fd6
Merge pull request #491 from brdtheo/i18n-fix-french-translation
Fix french translation
2022-12-12 09:11:08 +01:00
brdtheo fd129a2ad1 fix(i18n): add missing keys for french translation 2022-12-07 22:45:44 +01:00
Fabio Di Stasio 2c63cbc4e8 chore: update dependencies 2022-12-06 12:56:36 +01:00
Fabio Di Stasio c9a33936a0 ci: test target os change 2022-12-03 17:53:16 +01:00
Fabio Di Stasio a6bdf69a28 fix: connection default icon not change after client change 2022-12-03 17:53:00 +01:00
Fabio Di Stasio dd971d70e0 fix(UI): white background dragging connections inside folder on Linux 2022-12-02 09:38:40 +01:00
Fabio Di Stasio 669d7e8d4d fix: white background dragging connections or tabs on Linux, fixes #486 2022-12-01 15:38:19 +01:00
Fabio Di Stasio 02f204a01d
Merge pull request #485 from SmileYzn/patch-1
Update pt-BR.ts
2022-11-30 17:50:00 +01:00
Cleverson 023d7aa92d
Update pt-BR.ts 2022-11-30 13:45:23 -03:00
Fabio Di Stasio 4ca40c07d6 ci: ubuntu 20.04 as linux actions target 2022-11-30 15:57:48 +01:00
Fabio Di Stasio cf5247bf35 chore(release): 0.7.0 2022-11-30 13:22:26 +01:00
Fabio Di Stasio 19db29663b refactor(UI): minor change 2022-11-30 13:09:07 +01:00
Fabio Di Stasio d010d5aa8f fix(UI): wrong copnnection icons color with light theme 2022-11-30 09:15:15 +01:00
Fabio Di Stasio 0a1f50a9b9 fix: missing sidebar data after update 2022-11-29 18:18:56 +01:00
Fabio Di Stasio e7da5a7040 build(deps): update better-sqlite3 to 8.0.0 2022-11-29 15:19:23 +01:00
Fabio Di Stasio 2d126d521c refactor: minor improvements 2022-11-29 14:25:30 +01:00
Fabio Di Stasio 0fca70ebec fix(UI): folder to folder drag glitches 2022-11-29 13:19:41 +01:00
Fabio Di Stasio 36358584fd
Merge pull request #481 from antares-sql/new-sidebar
New connections sidebar
2022-11-28 15:19:24 +01:00
Fabio Di Stasio 672896414e feat(UI): new settimgbar tooltips 2022-11-28 15:11:29 +01:00
Fabio Di Stasio b06bafe06c fix: deletion of connections inside folder 2022-11-28 13:06:01 +01:00
Fabio Di Stasio 4fe9dfc4d7 feat(UI): footer color based on folder color 2022-11-28 11:56:02 +01:00
Fabio Di Stasio 7af178a1e4 fix: wrong position moving elements outside folder 2022-11-28 09:42:18 +01:00
Fabio Di Stasio 212b2bdba9 feat(UI): connections customization 2022-11-27 17:52:32 +01:00
Fabio Di Stasio 72accb7b0e feat(UI): folders customization 2022-11-26 11:21:47 +01:00
Fabio Di Stasio 321b387083 refactor(UI): various improvements on sidebar 2022-11-24 16:40:04 +01:00
Fabio Di Stasio ece6c6401d feat(UI): folders implementation 2022-11-23 17:52:08 +01:00
Fabio Di Stasio 5a028a4ea2 refactor: changes to implement folders 2022-11-21 20:19:02 +01:00
Fabio Di Stasio 83f9b12be0 chore(release): 0.6.0 2022-11-18 14:32:43 +01:00
Fabio Di Stasio 1c1403f586 fix: incomplete list of collations, fixes #478 2022-11-18 11:30:10 +01:00
Fabio Di Stasio 038cf68253
Merge pull request #472 from antares-sql/firebirdsql-support
Firebird SQL support
2022-11-17 16:19:59 +01:00
Fabio Di Stasio 3580faebba chore: update README.md 2022-11-17 16:17:36 +01:00
Fabio Di Stasio ae312efbbc feat(Firebird SQL): procedure add/edit/delete support 2022-11-17 15:27:39 +01:00
Fabio Di Stasio 8e422e3f07 feat(Firebird SQL): trigger add/edit/delete support 2022-11-16 15:16:12 +01:00
Fabio Di Stasio 7d1967a609 feat(Firebird SQL): view add/edit/delete support 2022-11-16 12:00:12 +01:00
Fabio Di Stasio 7ff8e2149e fix(Firebird SQL): connection pool issue 2022-11-16 10:12:44 +01:00
Fabio Di Stasio 1b5cc315dd feat(Firebird SQL): table add/edit/delete support 2022-11-15 16:46:12 +01:00
Fabio Di Stasio 27566c1dfa feat(Firebird SQL): manual commit mode 2022-11-10 15:52:31 +01:00
Fabio Di Stasio 03777a2ea3 refactor(Firebird SQL): improve fields metadata detection 2022-11-09 17:41:31 +01:00
Fabio Di Stasio d91251d7cb build(deps): update better-sqlite to 7.6.2 2022-11-09 10:48:01 +01:00
Fabio Di Stasio 0827a04d61 feat(Firebird SQL): support to blob fields 2022-11-08 15:53:21 +01:00
Fabio Di Stasio 2c8509ff41 feat(Firebird SQL): support to indexes and foreign keys 2022-11-08 14:05:54 +01:00
Fabio Di Stasio 76df6319c2 feat(Firebird SQL): connections pool 2022-11-07 09:49:36 +01:00
Fabio Di Stasio e6f6a022d1 feat: support to text blob fields 2022-11-05 10:22:12 +01:00
Fabio Di Stasio 95bb41e9db feat(Firebird SQL): display table content and query results 2022-11-04 16:31:10 +01:00
Fabio Di Stasio 7ab84bde57 initial firebird commit 2022-11-02 14:18:50 +01:00
Fabio Di Stasio d190a2dd61 fix: loss of precision updating BIGINT values, fixes #467 2022-10-26 12:26:09 +02:00
Fabio Di Stasio d8a298fd20 chore(release): 0.5.19 2022-10-22 14:54:15 +02:00
Fabio Di Stasio 369622d5af
Merge pull request #464 from antares-sql/context-cell-filler
Context menu option to fill table cells
2022-10-20 11:49:43 +02:00
Fabio Di Stasio a40d722d7c refactor: remove unnecessary console.log 2022-10-20 11:37:23 +02:00
Fabio Di Stasio 440f74dfc1 fix: app stuck inserting a random value if field length high 2022-10-20 11:25:23 +02:00
Fabio Di Stasio 8621ca5333 fix: unable to edit text fields if value is NULL, fixes #466 2022-10-20 10:55:30 +02:00
Fabio Di Stasio 24edc82b1b feat: uuid fill for string cells 2022-10-19 10:40:56 +02:00
Fabio Di Stasio 0a2124f2c2 feat: context menu option to fill cell with random values 2022-10-19 01:12:07 +02:00
Fabio Di Stasio a8521317a5 Merge branch 'master' of https://github.com/antares-sql/antares into context-cell-filler 2022-10-18 08:50:39 +02:00
Fabio Di Stasio 88408da745 fix: error joining tables with different schema 2022-10-17 13:55:48 +02:00
Fabio Di Stasio d52b7af297 fix(SQLite): save boolean as integer to improve compativility, fixes #463 2022-10-17 12:06:22 +02:00
Fabio Di Stasio e4a4696dd3 chore(release): 0.5.18 2022-10-14 15:03:49 +02:00
Fabio Di Stasio f0255c0065
Merge pull request #455 from antares-sql/dependabot/npm_and_yarn/sql-formatter-11.0.2
build(deps): bump sql-formatter from 8.2.0 to 11.0.2
2022-10-11 10:36:00 +02:00
Fabio Di Stasio 9991173685 Merge branch 'master' of https://github.com/antares-sql/antares into dependabot/npm_and_yarn/sql-formatter-11.0.2 2022-10-11 10:29:55 +02:00
dependabot[bot] 874dc6298b
build(deps): bump sql-formatter from 8.2.0 to 11.0.2
Bumps [sql-formatter](https://github.com/sql-formatter-org/sql-formatter) from 8.2.0 to 11.0.2.
- [Release notes](https://github.com/sql-formatter-org/sql-formatter/releases)
- [Changelog](https://github.com/sql-formatter-org/sql-formatter/blob/master/.release-it.json)
- [Commits](https://github.com/sql-formatter-org/sql-formatter/compare/v8.2.0...v11.0.2)

---
updated-dependencies:
- dependency-name: sql-formatter
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-11 08:12:16 +00:00
Fabio Di Stasio 5b1b8cf4cc build: update dependencies 2022-10-11 10:11:11 +02:00
Fabio Di Stasio a521274d01 feat(PostgreSQL): UUID random generation option on UUID fields, closes #424 2022-10-10 18:08:28 +02:00
Fabio Di Stasio 86e4c1d58f Merge branch 'master' of https://github.com/antares-sql/antares 2022-10-04 10:12:19 +02:00
Fabio Di Stasio ba5a1b68ab fix: trackpad horizontal scroll on tabs not working properly 2022-10-04 10:12:16 +02:00
Fabio Di Stasio 2c45bce1ee
Merge pull request #448 from SmileYzn/master
Update pt-BR.ts
2022-10-01 22:22:34 +02:00
Cleverson 2e05fa4bdc
Update pt-BR.ts 2022-09-30 14:43:06 -03:00
Fabio Di Stasio dd9c089d27 fix: auto-scroll on sidebar not working, fixes #447 2022-09-29 09:27:29 +02:00
Fabio Di Stasio e6955550fa refactor: minor changes in table content context 2022-09-29 09:17:47 +02:00
Fabio Di Stasio fe39c1d388 chore(release): 0.5.17 2022-09-22 09:34:28 +02:00
Fabio Di Stasio d114f8a651 feat: added more editor font sizes, closes #440 2022-09-21 10:33:44 +02:00
Fabio Di Stasio 84168d1d75 fix: editor font size doesn't change on new tabs, fixes #442 2022-09-15 19:03:18 +02:00
Fabio Di Stasio 498a9b48e2 fix: empty definer when editing a view, fixes #437 2022-09-15 18:58:19 +02:00
Fabio Di Stasio 01f607cd40 fix: "run or reload" shortcut triggers on all connections open 2022-09-08 12:01:57 +02:00
Fabio Di Stasio efe134a059 fix: cant run procedures with parameters from leftbar 2022-09-07 18:18:15 +02:00
Fabio Di Stasio 40cb4dd98d chore: minor changes on macos artifacts action 2022-08-27 09:27:07 +02:00
Fabio Di Stasio a142d3c4d7 fix(MacOS): empty options on macos menubar 2022-08-27 09:04:11 +02:00
Fabio Di Stasio 89da957a49 ci: github action for macos artifacts 2022-08-27 09:02:09 +02:00
Fabio Di Stasio 05c2f9836c chore(release): 0.5.16 2022-08-26 18:49:51 +02:00
Fabio Di Stasio ebc325ae0c fix: issue updating datetime cells with null value, closes #423 2022-08-26 18:48:26 +02:00
Fabio Di Stasio 39326eb52e fix: unable to set null or delete rows without primary key 2022-08-26 18:31:47 +02:00
Fabio Di Stasio df681147aa fix: ts exceptions 2022-08-24 10:23:03 +02:00
Fabio Di Stasio ffc645ba5e fix: CTRL+Right/Left not working on text editor, closes #427 2022-08-24 10:04:25 +02:00
Fabio Di Stasio 1fb1205319
chore: update README.md 2022-08-20 09:18:46 +02:00
Fabio Di Stasio c90ab0e880 fix(UI): wrong position of fields resizable area 2022-08-19 16:54:56 +02:00
Fabio Di Stasio 9dc700e13e fix(UI): editor themes group not visible in select element 2022-08-18 16:10:29 +02:00
Fabio Di Stasio 6950d0ce5a chore(release): 0.5.15 2022-08-17 16:21:37 +02:00
Fabio Di Stasio 4df14c3693 feat: dynamic shortcut suggestions on empty query tabs 2022-08-17 16:20:36 +02:00
Fabio Di Stasio c05be8304f perf(translation): updated italian translation 2022-08-17 15:29:12 +02:00
Fabio Di Stasio 31c575dad9
Merge pull request #405 from antares-sql/custom-shortcuts
Shortcuts customization
2022-08-17 11:12:49 +02:00
Fabio Di Stasio 040657d5ca Merge branch 'master' of https://github.com/antares-sql/antares into custom-shortcuts 2022-08-17 11:05:09 +02:00
Fabio Di Stasio 5043fafa93 feat: added more events in shortcuts setting 2022-08-17 10:00:23 +02:00
Fabio Di Stasio 8eb127e458 feat: ability to edit shortcuts 2022-08-16 18:03:38 +02:00
Fabio Di Stasio d044a02cb7 feat: ability to add new shortcuts 2022-08-16 13:10:20 +02:00
Fabio Di Stasio 8cb2c197c8 chore: suppress some stylelint warns 2022-08-15 18:14:51 +02:00
Fabio Di Stasio c50d17e82b fix: startup exception 2022-08-15 18:13:53 +02:00
Cleverson 7c186d2dee Update pt-BR.ts 2022-08-12 14:59:22 +02:00
Fabio Di Stasio 0f219cf9b7 perf: improved keypress detector 2022-08-12 12:40:35 +02:00
Fabio Di Stasio 75c5a34095 Merge branch 'master' of https://github.com/antares-sql/antares into custom-shortcuts 2022-08-11 11:22:25 +02:00
Fabio Di Stasio 48877534d1 feat(UI): connection name on left bar, closes #382 #414 2022-08-11 11:14:43 +02:00
Fabio Di Stasio c22413fde9 feat: delete shortcuts and restore defaults 2022-08-10 17:59:59 +02:00
Fabio Di Stasio 77ab8d8a03 build: minor change in ts config 2022-08-09 17:28:33 +02:00
Fabio Di Stasio 4386c6ab95 chore(release): 0.5.14 2022-08-09 16:21:55 +02:00
Fabio Di Stasio 19205e0736 style: general lint fix 2022-08-09 16:18:21 +02:00
Fabio Di Stasio 4fc4ddd1d6 Merge branch 'master' of https://github.com/antares-sql/antares into custom-shortcuts 2022-08-09 16:10:26 +02:00
Fabio Di Stasio 49b63bc6f2 feat(UI): shortcuts setting UI improved 2022-08-09 16:10:08 +02:00
Fabio Di Stasio 44eb507a12 fix: unable to open settingbar context menu 2022-08-09 16:04:27 +02:00
Fabio Di Stasio 1590ffaff0 build: icons for linux builds 2022-08-09 10:48:53 +02:00
Fabio Di Stasio 3c1bae540f chore(release): 0.5.13 2022-08-09 09:13:11 +02:00
Fabio Di Stasio 44bb75bc60 feat: list of available shortcuts in settings window 2022-08-08 16:44:40 +02:00
Fabio Di Stasio 8bb5bb93cf Merge branch 'master' of https://github.com/antares-sql/antares into custom-shortcuts 2022-08-08 11:46:08 +02:00
Fabio Di Stasio f64a12a8e9 fix(MySQL): error with ANSI sql_mode 2022-08-07 19:00:12 +02:00
Fabio Di Stasio da25823868 Merge branch 'master' of https://github.com/antares-sql/antares into custom-shortcuts 2022-08-05 17:08:48 +02:00
Fabio Di Stasio a9fcfd57ec refactor: improved vue-i18n implementation 2022-08-05 17:03:16 +02:00
Fabio Di Stasio e2307341f3
Merge pull request #397 from antares-sql/dependabot/npm_and_yarn/vue-i18n-9.2.0
build(deps): bump vue-i18n from 9.1.10 to 9.2.0
2022-08-05 13:17:06 +02:00
Fabio Di Stasio 09a372e96d refactor: vue-i18n ts improvements 2022-08-05 13:06:08 +02:00
Fabio Di Stasio f4da28cca0 refactor: vue-i18n ts improvements 2022-08-05 12:57:56 +02:00
Fabio Di Stasio 89745b7391
Merge pull request #398 from antares-sql/dependabot/npm_and_yarn/mdi/font-7.0.96
build(deps): bump @mdi/font from 6.9.96 to 7.0.96
2022-08-05 12:26:44 +02:00
Fabio Di Stasio 104b7c928b fix: set legacy: false 2022-08-05 12:25:14 +02:00
dependabot[bot] 427360d826 build(deps): bump sql-formatter from 4.0.2 to 8.2.0
Bumps [sql-formatter](https://github.com/sql-formatter-org/sql-formatter) from 4.0.2 to 8.2.0.
- [Release notes](https://github.com/sql-formatter-org/sql-formatter/releases)
- [Changelog](https://github.com/sql-formatter-org/sql-formatter/blob/master/.release-it.json)
- [Commits](https://github.com/sql-formatter-org/sql-formatter/compare/v4.0.2...v8.2.0)

---
updated-dependencies:
- dependency-name: sql-formatter
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-05 12:18:53 +02:00
Fabio Di Stasio e29d86b409 refactor: shortcuts registration via ShortcutRegister class 2022-08-05 12:07:19 +02:00
Giulio Ganci 0bfa14e1c9 feat: new macos icon 2022-08-03 12:57:17 +02:00
Fabio Di Stasio 88ba55ec02 build: added deb arm targets 2022-08-03 11:33:26 +02:00
Fabio Di Stasio aaff4cf4fe refactor: filter functions as composable 2022-08-03 11:10:16 +02:00
Fabio Di Stasio 35c54aee84
chore: update README.md 2022-08-02 13:17:13 +02:00
Fabio Di Stasio be2e9b21f5
chore: update dependabot.yml 2022-08-02 10:55:19 +02:00
Fabio Di Stasio 2262278393 Merge branch 'master' of https://github.com/antares-sql/antares 2022-08-02 10:51:43 +02:00
Fabio Di Stasio 531e17889a chore: update dependabot.yml 2022-08-02 10:51:40 +02:00
Fabio Di Stasio a07ed58004
chore: update CONTRIBUTING.md 2022-08-02 10:41:05 +02:00
Fabio Di Stasio 00dc59a76d ci: remove old ci configs 2022-08-02 10:37:27 +02:00
Fabio Di Stasio 2f883bfeb2 ci: new ci config 2022-08-02 10:10:20 +02:00
Fabio Di Stasio 7ff16fccce ci: minor change 2022-08-01 22:32:19 +02:00
dependabot[bot] 3625fbc1b0
build(deps): bump @mdi/font from 6.9.96 to 7.0.96
Bumps [@mdi/font](https://github.com/Templarian/MaterialDesign-Webfont) from 6.9.96 to 7.0.96.
- [Release notes](https://github.com/Templarian/MaterialDesign-Webfont/releases)
- [Commits](https://github.com/Templarian/MaterialDesign-Webfont/compare/v6.9.96...v7.0.96)

---
updated-dependencies:
- dependency-name: "@mdi/font"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-01 19:10:35 +00:00
dependabot[bot] deee0d637b
build(deps): bump vue-i18n from 9.1.10 to 9.2.0
Bumps [vue-i18n](https://github.com/intlify/vue-i18n-next/tree/HEAD/packages/vue-i18n) from 9.1.10 to 9.2.0.
- [Release notes](https://github.com/intlify/vue-i18n-next/releases)
- [Changelog](https://github.com/intlify/vue-i18n-next/blob/master/CHANGELOG.md)
- [Commits](https://github.com/intlify/vue-i18n-next/commits/v9.2.0/packages/vue-i18n)

---
updated-dependencies:
- dependency-name: vue-i18n
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-01 19:09:53 +00:00
Fabio Di Stasio 8c6950cebd refactor: minor refactors 2022-08-01 18:13:14 +02:00
Fabio Di Stasio 46167e4473 build: general ci config update 2022-08-01 18:06:57 +02:00
Fabio Di Stasio c32a4415d1
Update README.md 2022-07-31 10:43:32 +02:00
Fabio Di Stasio 1c3d7aa30b feat: copy row as CSV, closes #394 2022-07-29 18:53:39 +02:00
Fabio Di Stasio 664d18efc1 chore: update README.md 2022-07-26 17:21:43 +02:00
Fabio Di Stasio cc941dfc04 chore(release): 0.5.12 2022-07-26 14:59:06 +02:00
Fabio Di Stasio 1d151e9349 fix: error on schema export 2022-07-26 13:33:57 +02:00
Fabio Di Stasio addd9fba28 build(deps): bump ace-builds from 1.4.14 to 1.8.1 2022-07-25 15:25:58 +02:00
Fabio Di Stasio a00c19d300 fix: prevent ctrl+a in console 2022-07-25 15:20:15 +02:00
Fabio Di Stasio 9551afbd2d feat: ability to copy multiple selected rows 2022-07-25 14:56:00 +02:00
Fabio Di Stasio 1ead76c028 fix: missing defaults on insert row window 2022-07-25 13:09:41 +02:00
Fabio Di Stasio d3da15aa13 feat: copy row as SQL INSERT 2022-07-25 12:42:22 +02:00
Fabio Di Stasio f3b5de38c4 feat: export table content as SQL INSERT 2022-07-25 12:19:58 +02:00
Askar Kanturin d4b6d2e9d1 changed readme 2022-07-23 10:20:36 +02:00
Askar Kanturin e2c106e4e0 fixed typo in readme
i'm no native speaker, but i feel this is a typo
2022-07-23 10:20:36 +02:00
Fabio Di Stasio eb60899e6e fix(MySQL): missing quoted identifier for column names in table filter, closes #380 2022-07-22 10:08:33 +02:00
Fabio Di Stasio 1d367d468d Merge branch 'master' of https://github.com/antares-sql/antares 2022-07-21 11:01:13 +02:00
Fabio Di Stasio 8ecaedbf6c fix: disable ctrl+alt+(left/right) shortcut on linux 2022-07-21 11:01:10 +02:00
dependabot[bot] dd1eebd4ec build(deps): bump terser from 5.13.1 to 5.14.2
Bumps [terser](https://github.com/terser/terser) from 5.13.1 to 5.14.2.
- [Release notes](https://github.com/terser/terser/releases)
- [Changelog](https://github.com/terser/terser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/terser/terser/commits)

---
updated-dependencies:
- dependency-name: terser
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-21 08:43:24 +02:00
Fabio Di Stasio 8c83b3f144 fix: missing table on insert new records on session restored tabs 2022-07-20 10:41:44 +02:00
Fabio Di Stasio 985e5d3527 feat: context menu option to duplicate a table row 2022-07-19 17:48:51 +02:00
Fabio Di Stasio 78902639eb feat: execute selected query 2022-07-19 15:02:17 +02:00
Fabio Di Stasio cb038b374a fix: issue with logger on import/export 2022-07-19 10:10:24 +02:00
Fabio Di Stasio eafdb1cc3d chore(release): 0.5.11 2022-07-19 08:14:47 +02:00
Fabio Di Stasio 91e0630513 fix: unable to edit table fields content on tables with datetime fields 2022-07-19 08:08:51 +02:00
Fabio Di Stasio bf768c3800 fix: filter persists switching temporary table tabs 2022-07-18 18:29:12 +02:00
Fabio Di Stasio 0b1aa3dd29 fix: console events disabled in production 2022-07-18 17:21:34 +02:00
Fabio Di Stasio ec75f9546a chore(release): 0.5.10 2022-07-18 14:44:30 +02:00
Fabio Di Stasio 9bc9adb7cf fix: exception on QueryEditor with null modelValue 2022-07-18 14:43:38 +02:00
Fabio Di Stasio b4d14d98db refactor: improved console with light theme 2022-07-18 11:58:22 +02:00
Fabio Di Stasio c21bd6075c feat: context menu to copy queries from console 2022-07-18 11:58:22 +02:00
Fabio Di Stasio 44647f5b55 feat: open/close console on single connection 2022-07-18 11:58:22 +02:00
Fabio Di Stasio 3f9e6d85ca perf: improved resize of text editor resizing console height 2022-07-18 11:58:22 +02:00
Fabio Di Stasio 6a6f43a718 feat: initial console implementation 2022-07-18 11:58:22 +02:00
Fabio Di Stasio f12a04b052 feat: ipc event channel to send logs to renderer 2022-07-18 11:58:22 +02:00
Fabio Di Stasio abf829867e feat: Ctrl+PgUp & Ctrl+PgDn to navigate between tabs 2022-07-14 19:30:34 +02:00
Fabio Di Stasio b71f04e5aa feat: field names suggestion for tables in the query 2022-07-14 16:09:04 +02:00
Fabio Di Stasio 7725fafe85 fix: unable to delete by select all in left bar search, closes #368 2022-07-13 18:50:16 +02:00
Fabio Di Stasio ed3d35f131 fix(Linux): ctrl+space shortcut not working 2022-07-13 18:25:42 +02:00
fabio286 e0946f04f7 fix: unable to update data on tables missing primary or unique key 2022-07-13 09:30:30 +02:00
Fabio Di Stasio 0891e7be8c refactor: disabled autofocus for scheduler timing modal 2022-07-11 11:35:30 +02:00
Fabio Di Stasio f312cf5f85 perf(UI): improved visibility of explore bar tooltips 2022-07-11 09:56:33 +02:00
Fabio Di Stasio 05e0d310ec
Merge pull request #363 from goYou/master
feat: Update zh-CN.ts
2022-07-10 09:13:35 +02:00
goYou 1e0b2b4cae Update zh-CN.ts 2022-07-10 14:49:30 +08:00
Fabio Di Stasio 5ee728cfe4
Merge pull request #361 from antares-sql/dependabot/npm_and_yarn/moment-2.29.4
build(deps): bump moment from 2.29.3 to 2.29.4
2022-07-09 12:41:20 +02:00
Fabio Di Stasio a91fa8ff54 fix: fields content language detection not working properly 2022-07-09 12:39:44 +02:00
dependabot[bot] 2c13433900
build(deps): bump moment from 2.29.3 to 2.29.4
Bumps [moment](https://github.com/moment/moment) from 2.29.3 to 2.29.4.
- [Release notes](https://github.com/moment/moment/releases)
- [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/moment/moment/compare/2.29.3...2.29.4)

---
updated-dependencies:
- dependency-name: moment
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-09 10:38:14 +00:00
Fabio Di Stasio dcc2a4c51c refactor: replaced @vscode/vscode-languagedetection with custom language detection 2022-07-09 12:37:30 +02:00
Fabio Di Stasio 7537dff401 chore(release): 0.5.9 2022-07-06 14:42:32 +02:00
Fabio Di Stasio 853ee1f572 revert: revert to better-sqlite 7.5.1 due build issues 2022-07-06 10:43:32 +02:00
Fabio Di Stasio cf9c7c600a fix: error on export schema 2022-07-06 10:26:24 +02:00
Fabio Di Stasio 73b88cad9e Merge branch 'master' of https://github.com/antares-sql/antares 2022-07-06 09:37:21 +02:00
Fabio Di Stasio d2eb31a63d perf(UI): improved focus visibility for buttons 2022-07-06 09:37:18 +02:00
Fabio Di Stasio d6b36b1f80
Merge pull request #353 from antares-sql/dependabot/npm_and_yarn/better-sqlite3-7.5.3
build(deps): bump better-sqlite3 from 7.5.1 to 7.5.3
2022-07-05 18:20:56 +02:00
dependabot[bot] d66b932683
build(deps): bump better-sqlite3 from 7.5.1 to 7.5.3
Bumps [better-sqlite3](https://github.com/WiseLibs/better-sqlite3) from 7.5.1 to 7.5.3.
- [Release notes](https://github.com/WiseLibs/better-sqlite3/releases)
- [Commits](https://github.com/WiseLibs/better-sqlite3/compare/v7.5.1...v7.5.3)

---
updated-dependencies:
- dependency-name: better-sqlite3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-05 06:59:47 +00:00
Fabio Di Stasio 20f5497034
Merge pull request #341 from antares-sql/dependabot/npm_and_yarn/vue-3.2.37
build(deps): bump vue from 3.2.33 to 3.2.37
2022-07-05 08:54:40 +02:00
Fabio Di Stasio d4ed886489
Merge pull request #339 from antares-sql/dependabot/npm_and_yarn/mdi/font-6.9.96
build(deps): bump @mdi/font from 6.1.95 to 6.9.96
2022-07-05 08:54:30 +02:00
dependabot[bot] aaa14f112a
build(deps): bump vue from 3.2.33 to 3.2.37
Bumps [vue](https://github.com/vuejs/core) from 3.2.33 to 3.2.37.
- [Release notes](https://github.com/vuejs/core/releases)
- [Changelog](https://github.com/vuejs/core/blob/main/CHANGELOG.md)
- [Commits](https://github.com/vuejs/core/compare/v3.2.33...v3.2.37)

---
updated-dependencies:
- dependency-name: vue
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-04 15:41:08 +00:00
dependabot[bot] e0f3ff6939
build(deps): bump @mdi/font from 6.1.95 to 6.9.96
Bumps [@mdi/font](https://github.com/Templarian/MaterialDesign-Webfont) from 6.1.95 to 6.9.96.
- [Release notes](https://github.com/Templarian/MaterialDesign-Webfont/releases)
- [Commits](https://github.com/Templarian/MaterialDesign-Webfont/compare/v6.1.95...v6.9.96)

---
updated-dependencies:
- dependency-name: "@mdi/font"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-04 15:41:01 +00:00
Fabio Di Stasio 72a328785c
Merge pull request #333 from antares-sql/new-connection-management
New connections management
2022-07-04 17:39:56 +02:00
Fabio Di Stasio 4c2a1998a9 Merge branch 'master' of https://github.com/antares-sql/antares into new-connection-management 2022-07-04 17:25:37 +02:00
Fabio Di Stasio 8e705706ae feat: ability to pin/unpin and delete connections from the "all connections" modal 2022-07-04 17:03:24 +02:00
Fabio Di Stasio 56b0a4815c feat: option to disable scratchpad 2022-07-04 15:10:40 +02:00
Fabio Di Stasio a9a4344a71 feat: ctrl/cmd+space to open all connections modal 2022-07-04 12:42:33 +02:00
Fabio Di Stasio ec5ab73b19 feat: search form in all connections modal 2022-07-04 12:27:04 +02:00
Fabio Di Stasio 71a5b5c828 fix: missing option for untrusted ssl connection on connections edit panel 2022-07-03 22:07:28 +02:00
Fabio Di Stasio 4519829aa2 chore(release): 0.5.8 2022-07-02 15:32:02 +02:00
Fabio Di Stasio a703dcc53e feat: modal with all connections 2022-07-02 15:30:36 +02:00
Fabio Di Stasio 36e98e0742 feat: connections sorted by last usage by default and option to pin them 2022-06-30 18:20:14 +02:00
Fabio Di Stasio a45d76e8b4
fix: exception on new scheduler tab 2022-06-30 16:42:29 +02:00
Fabio Di Stasio 7702ca025f
fix: error on modals missing focusable elements 2022-06-30 10:05:35 +02:00
Fabio Di Stasio f632a0f189 initial implementation of new feature 2022-06-29 19:05:45 +02:00
Fabio Di Stasio e97da37103 feat: context shortcut to disconnect from left bar 2022-06-29 13:17:33 +02:00
Fabio Di Stasio 6573fe69ac fix: connection string field doesn't appear switching to postgre when editing a connection 2022-06-29 11:20:08 +02:00
Fabio Di Stasio 902c29ffa5 feat(MySQL): option to disable foreign key checks when empty a table 2022-06-29 10:48:21 +02:00
Fabio Di Stasio 5f57a9f60d fix: ctrl+a on results doesn't work properly 2022-06-28 17:55:18 +02:00
Fabio Di Stasio 822af44a47 refactor: minor improvements 2022-06-27 18:28:04 +02:00
Fabio Di Stasio e42c424a13 fix: focus goes outside modals with tab key navigation 2022-06-26 15:07:37 +02:00
Fabio Di Stasio 0a3a4827dd fix: result table cells/rows not loses focus clicking outside 2022-06-26 10:21:17 +02:00
Fabio Di Stasio a80d227400 fix(Windows): white window buttons with dark theme 2022-06-24 18:17:37 +02:00
Fabio Di Stasio cfd82c8f41 fix: editor gutter pin not working 2022-06-24 17:26:28 +02:00
Fabio Di Stasio 91d0735a5f fix: double context menu on table settings rows 2022-06-23 23:11:43 +02:00
Fabio Di Stasio 93ce619782 fix(Windows): Windows 7 style window frame at startup 2022-06-23 11:57:25 +02:00
Fabio Di Stasio 8f01740475 fix(UI): wrong tables scrollable height after switching tabs 2022-06-22 18:47:32 +02:00
Fabio Di Stasio 869c75f654
Merge pull request #324 from antares-sql/dependabot/npm_and_yarn/electron-19.0.5
build(deps-dev): bump electron from 17.4.3 to 19.0.5
2022-06-21 21:44:06 +02:00
dependabot[bot] 14aff67d2d
build(deps-dev): bump electron from 17.4.3 to 19.0.5
Bumps [electron](https://github.com/electron/electron) from 17.4.3 to 19.0.5.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v17.4.3...v19.0.5)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-21 16:11:11 +00:00
Fabio Di Stasio 174579bf8c
Merge pull request #248 from antares-sql/ts-renderer
TypeScript in renderer process
2022-06-21 18:09:42 +02:00
Fabio Di Stasio 0eab0a7140 Merge branch 'master' of https://github.com/antares-sql/antares into ts-renderer 2022-06-21 18:08:43 +02:00
Fabio Di Stasio a103617ce8 refactor: ts and composition api on missing components 2022-06-21 17:54:47 +02:00
Fabio Di Stasio 61ec3cbd4e Merge branch 'master' of https://github.com/antares-sql/antares 2022-06-20 08:49:29 +02:00
Fabio Di Stasio 1765d9fd0b chore: dependabot monthly interval 2022-06-20 08:49:26 +02:00
Fabio Di Stasio 329656ff1d
Merge pull request #309 from toriphes/feat/base-select-max-visible-options
feat: add max visible options prop
2022-06-20 08:46:47 +02:00
Giulio Ganci 067a6f3507 feat: add max visible options prop 2022-06-19 16:58:52 +02:00
Fabio Di Stasio d12c6f5210 chore(release): 0.5.7 2022-06-19 16:11:12 +02:00
Fabio Di Stasio 89e8d9fcdb refactor: ts and composition api on WorkspaceTabNew* components 2022-06-14 20:02:17 +02:00
Fabio Di Stasio ee623b0a0f fix: unable to add new table fields 2022-06-14 11:48:36 +02:00
Fabio Di Stasio 33a4663694 Merge branch 'master' of https://github.com/antares-sql/antares into ts-renderer 2022-06-13 09:29:05 +02:00
Fabio Di Stasio c37138c6f5 ci: fix linux upload artifacts github action [skip ci] 2022-06-12 19:58:22 +02:00
Fabio Di Stasio e754877ee6 Merge branch 'master' of https://github.com/antares-sql/antares 2022-06-12 18:30:48 +02:00
Fabio Di Stasio ed38a9e7ff ci: linux upload artifacts github action 2022-06-12 18:30:44 +02:00
fabio286 6bad032f0d fix(Linux): setting bar tooltip position 2022-06-11 14:26:51 +02:00
Fabio Di Stasio d214c1f35b fix: reload tab content on tab sort 2022-06-11 01:11:08 +02:00
Fabio Di Stasio 77d9cac092 fix: fields sorting in table setting tabs 2022-06-10 23:29:34 +02:00
Fabio Di Stasio cba2ce2e37 fix: selected foreign key value not visible in the insert row modal 2022-06-10 20:02:26 +02:00
Fabio Di Stasio bd46d17424 refactor: ts and composition api on WorkspaceExplorebar* components 2022-06-09 20:08:32 +02:00
Fabio Di Stasio 5b33419b64 fix: exception on app start setting window title 2022-06-08 14:55:29 +02:00
Fabio Di Stasio 00242697a1 feat: dynamic app window title 2022-06-08 13:24:14 +02:00
fabio286 85cec05f70 perf(Linux): title bar improvements 2022-06-08 13:04:19 +02:00
Fabio Di Stasio 5fa8bf38e4 perf(Windows): title bar improvements 2022-06-07 18:32:37 +02:00
Fabio Di Stasio 23acf00def fix: main process not closed after window close on some conditions 2022-06-07 09:33:03 +02:00
Fabio Di Stasio be70b5be7f refactor: ts on ipc api 2022-06-05 17:57:44 +02:00
Fabio Di Stasio 7fc01227e7 refactor: ts and composition api on more components 2022-06-04 18:37:16 +02:00
Fabio Di Stasio 1c666a07d8
Merge pull request #289 from toriphes/feat/hotkeys
Feat: Hokeys to navigate between tabs and result sets
2022-06-04 15:20:08 +02:00
Giulio Ganci 49abd1ea7f feat: hotkeys to navigate inside a table resultset 2022-06-04 08:45:48 +02:00
Giulio Ganci d3b9e08446 feat: hotkeys to navigate forward or backward between tabs 2022-06-03 18:56:19 +02:00
Fabio Di Stasio 20b814378b chore: package.json changes 2022-06-02 12:50:05 +02:00
Fabio Di Stasio 8ce1d1a964 chore(release): 0.5.6 2022-06-02 11:31:10 +02:00
Fabio Di Stasio d151c7254e build: Windows icon improvements 2022-06-02 11:17:53 +02:00
Fabio Di Stasio 26aad519df perf: improved precision of MariaDB or MySQL auto detection 2022-06-02 09:50:16 +02:00
Fabio Di Stasio 31b7999bba fix: empty query tab schema select if no schema selected 2022-06-02 09:46:49 +02:00
Fabio Di Stasio caf776bd55 fix: inline field update not working with tables missing primary key 2022-06-01 18:31:25 +02:00
Fabio Di Stasio a7d5e1973c fix(SQLite): unable to insert rows with TEXT fields 2022-06-01 09:56:45 +02:00
Fabio Di Stasio 8870304c15 fix(UI): select closes clicking on scrollbar 2022-05-29 16:42:41 +02:00
Fabio Di Stasio 2007305ff0 refactor: ts on pinia store 2022-05-28 18:43:56 +02:00
Fabio Di Stasio e97401e27d Merge branch 'master' of https://github.com/antares-sql/antares into ts-renderer 2022-05-25 14:41:15 +02:00
Fabio Di Stasio 62f6fd16d5 refactor: ts on i18n 2022-05-24 23:02:40 +02:00
Fabio Di Stasio cdca6eaa35 refactor: ts and composition api for modals 2022-05-24 23:02:14 +02:00
Fabio Di Stasio 34e8d3e5b1 chore(release): 0.5.5 2022-05-24 14:25:04 +02:00
Fabio Di Stasio 6c8a36e947 refactor(UI): double click to edit field type or collation 2022-05-23 16:35:50 +02:00
Fabio Di Stasio 99b1c1be12
Merge pull request #245 from toriphes/feat/advanced-dropdown-list
feat/advanced-dropdown-list
2022-05-23 16:31:19 +02:00
Fabio Di Stasio 3991382153 Merge branch 'feat/advanced-dropdown-list' of https://github.com/toriphes/antares into pr/toriphes/245 2022-05-23 16:19:35 +02:00
allcontributors[bot] 3b57b7ef3b docs: update .all-contributorsrc [skip ci] 2022-05-23 16:13:51 +02:00
allcontributors[bot] 45d599ad7f docs: update README.md [skip ci] 2022-05-23 16:13:51 +02:00
Fabio Di Stasio 9082960310 feat(translation): russian translation, closes #266 2022-05-23 16:11:54 +02:00
Giulio Ganci 5398964190 feat: added dropdown animation 2022-05-22 15:45:16 +02:00
Fabio Di Stasio 5d5f1da97b perf(UI): max height for query text area increased 2022-05-19 09:30:43 +02:00
Fabio Di Stasio 84826ff4c0 refactor: ts and composition api on more elements 2022-05-17 19:11:31 +02:00
Fabio Di Stasio c95c593c74
chore: create CODE_OF_CONDUCT.md 2022-05-15 19:08:06 +02:00
Fabio Di Stasio 5a50ba88e8 Merge branch 'master' of https://github.com/antares-sql/antares into ts-renderer 2022-05-15 18:23:09 +02:00
Fabio Di Stasio c5baf2b0d3 fix: query tab content disappears reordering or closing other tabs, closes #261 2022-05-15 18:15:05 +02:00
Fabio Di Stasio a082514f88 fix(PostgreSQL): idle timeout disabled 2022-05-15 17:37:54 +02:00
Fabio Di Stasio c826888b0d fix: SSH tunnel connection error with private key, closes #260 2022-05-14 11:24:24 +02:00
Fabio Di Stasio 8a55b36527 refactor: ts and composition api for single instance components 2022-05-14 11:15:42 +02:00
Fabio Di Stasio b0d464952f Merge branch 'master' of https://github.com/antares-sql/antares into pr/toriphes/245 2022-05-14 09:57:09 +02:00
Giulio Ganci 7c45203636 fix(UI): BaseSelect keyboard navigation 2022-05-13 18:35:02 +02:00
Giulio Ganci 71b0736d0d fix(UI): BaseSelect style 2022-05-13 18:20:47 +02:00
Giulio Ganci 42bc9196ff feat(UI): select tab replace with BaseSelect component 2022-05-11 23:30:31 +02:00
Giulio Ganci f7e04d6333 feat(UI): BaseSelect supports disabled options 2022-05-11 22:57:13 +02:00
Fabio Di Stasio 45b2eb2934 fix: reactivity problem on BaseVirtualScroll component 2022-05-11 11:27:29 +02:00
Fabio Di Stasio 9ee1b3023d build: electron-updater downgrade [skip ci] 2022-05-10 19:16:06 +02:00
Fabio Di Stasio 79d9acb471 chore(release): 0.5.4 2022-05-10 18:13:30 +02:00
Fabio Di Stasio e02565c0d9 perf(UI): left alignment for numbers in result tables, closes #249 2022-05-10 15:19:47 +02:00
Fabio Di Stasio ff272440bd fix: unable to insert auto-generated datetime fields 2022-05-10 15:14:34 +02:00
Fabio Di Stasio e62f280528 fix: app blocked by BIT fields with no default, closes #256 2022-05-10 15:13:08 +02:00
Fabio Di Stasio 6d6151814e fix: SSH tunnel not working 2022-05-10 14:44:45 +02:00
Fabio Di Stasio 58611bf07f fix: file upload input not working 2022-05-10 14:43:08 +02:00
Fabio Di Stasio d494b17df7 fix: 2022-05-10 13:22:26 +02:00
Fabio Di Stasio ae377a6c3c refactor: ts and composition api for base components 2022-05-10 13:02:01 +02:00
Fabio Di Stasio cc5910b88f refactor: common to ts 2022-05-10 12:57:25 +02:00
Giulio Ganci 2b436d8613 feat(UI): BaseSelect disabled state 2022-05-10 10:29:38 +02:00
Giulio Ganci 1869e6a148 feat(UI): BaseSelect supports option groups 2022-05-09 17:31:58 +02:00
Fabio Di Stasio d1bfa282c3 build: ts config for renderer 2022-05-09 11:48:30 +02:00
Giulio Ganci 302c66457d feat(UI): ForeignKeySelect implements BaseSelect component 2022-05-09 11:29:25 +02:00
Giulio Ganci 0043d07708 feat(UI): BaseSelect option list scrolls automatically using up/down keys 2022-05-08 18:59:00 +02:00
Ngô Quốc Đạt e0f85f469f Added missing translations for vi-VN 2022-05-08 16:29:48 +02:00
Giulio Ganci a037d0cc01 feat(UI): BaseSelect in table filters 2022-05-08 13:15:39 +02:00
Giulio Ganci 5582a12bbf feat(UI): BaseSelect small variant 2022-05-08 13:14:40 +02:00
Giulio Ganci 22622df2cf feat(UI): initial BaseSelect integration 2022-05-08 09:45:37 +02:00
Giulio Ganci 745d551cc9 feat(UI): new BaseSelect component 2022-05-08 09:44:52 +02:00
Fabio Di Stasio a93e71d751 chore(release): 0.5.3 2022-05-08 09:25:59 +02:00
Fabio Di Stasio 2a7433da16 refactor: removed pinia ipc plugins 2022-05-08 00:12:23 +02:00
Fabio Di Stasio fd5dca2450 ci: e2e tests on separate github action 2022-05-07 23:20:31 +02:00
Fabio Di Stasio da6481f458 build: fix compilation issues 2022-05-07 22:50:11 +02:00
Fabio Di Stasio c7417809f4 refactor: minor improvement in changelog parsing 2022-05-07 16:13:22 +02:00
Fabio Di Stasio 5cb8ec65ad refactor: ts improvements 2022-05-07 09:46:07 +02:00
Fabio Di Stasio e4c5d9b404 fix(MySQL): creating temporary tables on export to overcome view dependency errors 2022-05-06 17:20:06 +02:00
Fabio Di Stasio bfdb463390 fix: unable to set an empty string as field default 2022-05-05 23:09:10 +02:00
Fabio Di Stasio 9fcc7d1cef fix(MySQL): support to ANSI_QUOTES mode not working, closes #243 2022-05-05 17:18:18 +02:00
Fabio Di Stasio 70cb92521f refactor: Invitation to contribute in translations on settings 2022-05-04 11:24:48 +02:00
Fabio Di Stasio 981d31957f
Merge pull request #232 from antares-sql/dependabot/npm_and_yarn/electron-updater-5.0.1
build(deps): bump electron-updater from 4.6.5 to 5.0.1
2022-05-03 18:12:04 +02:00
Fabio Di Stasio 619478c072
Merge pull request #230 from antares-sql/dependabot/npm_and_yarn/electron-builder-23.0.3
build(deps-dev): bump electron-builder from 22.14.13 to 23.0.3
2022-05-03 17:01:40 +02:00
Fabio Di Stasio eb1afed108 fix: LIKE operator in table filter not properly working, closes #242 2022-05-03 14:34:27 +02:00
Fabio Di Stasio 0fa22fbe72 feat: default open schema if only one present 2022-05-01 10:46:32 +02:00
Fabio Di Stasio 5e4abd3e81 fix: prevents query tabs targets previous schema if not in explorebar, closes #236 2022-05-01 10:23:03 +02:00
dependabot[bot] 81d897c7b3
build(deps): bump electron-updater from 4.6.5 to 5.0.1
Bumps [electron-updater](https://github.com/electron-userland/electron-builder/tree/HEAD/packages/electron-updater) from 4.6.5 to 5.0.1.
- [Release notes](https://github.com/electron-userland/electron-builder/releases)
- [Changelog](https://github.com/electron-userland/electron-builder/blob/master/packages/electron-updater/CHANGELOG.md)
- [Commits](https://github.com/electron-userland/electron-builder/commits/electron-updater@5.0.1/packages/electron-updater)

---
updated-dependencies:
- dependency-name: electron-updater
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-30 15:34:36 +00:00
dependabot[bot] b148c210a6
build(deps-dev): bump electron-builder from 22.14.13 to 23.0.3
Bumps [electron-builder](https://github.com/electron-userland/electron-builder/tree/HEAD/packages/electron-builder) from 22.14.13 to 23.0.3.
- [Release notes](https://github.com/electron-userland/electron-builder/releases)
- [Changelog](https://github.com/electron-userland/electron-builder/blob/master/packages/electron-builder/CHANGELOG.md)
- [Commits](https://github.com/electron-userland/electron-builder/commits/v23.0.3/packages/electron-builder)

---
updated-dependencies:
- dependency-name: electron-builder
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-30 15:34:19 +00:00
Fabio Di Stasio 75aa299f8d
Merge pull request #238 from antares-sql/vue3-migration
Vue3 migration
2022-04-30 17:31:02 +02:00
Fabio Di Stasio f4795eb92a chore: update CONTRIBUTING.md 2022-04-30 17:26:08 +02:00
Fabio Di Stasio 18b66b5032 fix: missing tabs uid 2022-04-30 17:15:33 +02:00
Fabio Di Stasio cdbadbb11a remove @vue/compat 2022-04-30 16:11:44 +02:00
Fabio Di Stasio 47e1f27bb8 fix: unable to disconnect from database 2022-04-30 12:15:00 +02:00
Fabio Di Stasio 4be0f6bbbc Merge branch 'master' of https://github.com/Fabio286/antares into vue3-migration 2022-04-30 12:03:32 +02:00
Fabio Di Stasio ff8bb45d6d fix: missing storeToRefs imports 2022-04-30 11:45:49 +02:00
Fabio Di Stasio 0d52282aa8 refactor: migration to pinia 2022-04-30 00:47:37 +02:00
Fabio Di Stasio e9dedfaf32 fix: query editor table fields suggestion 2022-04-28 13:22:15 +02:00
Fabio Di Stasio 9f0ec5e0ce vue devtools integrated in chromium devtools 2022-04-28 10:34:44 +02:00
Giulio Ganci 1174bab0cc fix: verbose devtool loggin with missing sourcemap 2022-04-27 22:11:30 +02:00
Fabio Di Stasio 9dd685b062 refactor: initial pinia implementation 2022-04-27 18:23:48 +02:00
Fabio Di Stasio 0821586bb3 standalone vue-devtools 2022-04-27 18:23:05 +02:00
Fabio Di Stasio 350d53642e fix: unable to add parameters to new routines/functions 2022-04-26 13:01:21 +02:00
Giulio Ganci 88eb9f7ab8 fix: can not use vue teleport with props as root element 2022-04-25 22:51:24 +02:00
Giulio Ganci b0195260c3 fix foreign key dropdown with wrong value 2022-04-25 22:27:26 +02:00
Giulio Ganci dfe3728269 no more this.$set needed in vue3 2022-04-25 22:11:53 +02:00
Fabio Di Stasio daef6f91b0 test: improved e2e tests 2022-04-25 18:26:11 +02:00
Fabio Di Stasio d61acf8a00 refactor(SQLite): improved sqlite window title 2022-04-25 17:37:12 +02:00
Fabio Di Stasio 8b04a2b7dd refactor: teleport for modals 2022-04-25 13:45:07 +02:00
Fabio Di Stasio 6780401cb7 refactor: vue3 transitions 2022-04-24 23:24:21 +02:00
Fabio Di Stasio b8e734d827 refactor: v-model on custom components 2022-04-24 23:10:25 +02:00
Fabio Di Stasio 4f8bc26349 refactor: improved Proxy handlement on ipc 2022-04-24 12:17:29 +02:00
Giulio Ganci 3eb781021c enabling vue compat 2022-04-23 16:15:54 +02:00
Giulio Ganci 3cca3ed2b3 fix: undefined uid variable in the setting bar 2022-04-23 09:03:28 +02:00
Fabio Di Stasio 434b9f8284 refactor: toRaw to handle Proxy objects on ipc 2022-04-22 23:33:12 +02:00
Fabio Di Stasio 690cdcb2eb fix(SQLite): tables with sqlite in name not visible, closes #239 2022-04-22 23:01:30 +02:00
Fabio Di Stasio c50cbc577f fix: various warnings and exceptions 2022-04-22 17:49:13 +02:00
Fabio Di Stasio 6af0c33461 fix: locale change 2022-04-22 17:45:12 +02:00
Fabio Di Stasio e60789f320 refactor: unproxify ipc params 2022-04-22 12:17:27 +02:00
Fabio Di Stasio afa23f3ef1 refactor: emits in components 2022-04-22 12:16:02 +02:00
Fabio Di Stasio 7c4b605467 Merge branch 'master' of https://github.com/Fabio286/antares into vue3-migration 2022-04-21 14:42:33 +02:00
Fabio Di Stasio 443170bbb1 refactor: vue3 migration in progress 2022-04-21 14:39:24 +02:00
Fabio Di Stasio 3450497010
Merge pull request #237 from SmileYzn/patch-1
Fixed a typo
2022-04-21 13:29:39 +02:00
Cleverson eaf38df1b7
Fixed a typo
Fixed a typo
2022-04-20 16:14:14 -03:00
Fabio Di Stasio a9f88e5784
chore: update bug_report.md [skip ci] 2022-04-19 11:47:50 +02:00
Fabio Di Stasio 472fa6f430 fix: wrong path module importation 2022-04-17 13:00:53 +02:00
Fabio Di Stasio f82db96f34 fix: importer webpack config 2022-04-17 13:00:53 +02:00
Fabio Di Stasio 79f32ca442 refactor: db import ts refactor 2022-04-17 13:00:53 +02:00
Fabio Di Stasio ce0f278caf refactor: db exporter ts refactor 2022-04-17 13:00:53 +02:00
Fabio Di Stasio 6adc93e1cd refactor: ipc handlers ts refactor 2022-04-17 13:00:53 +02:00
Fabio Di Stasio 5e2ad8c377 refactor: sqlite client ts refactor 2022-04-17 13:00:53 +02:00
Fabio Di Stasio d85662cb7d refactor: posgtre client ts refactor 2022-04-17 13:00:53 +02:00
Fabio Di Stasio e3907914f2 build: fixed module resolution and workers webpack config 2022-04-17 13:00:53 +02:00
Fabio Di Stasio c6c14fbf2b refactor: mysql client ts refactor 2022-04-17 13:00:53 +02:00
Fabio Di Stasio 3975359292 build: typescript config 2022-04-17 13:00:53 +02:00
Fabio Di Stasio 9a0f982723 fix: wrong path module importation 2022-04-17 12:27:46 +02:00
Fabio Di Stasio b4d9821300 fix: importer webpack config 2022-04-17 12:11:00 +02:00
Fabio Di Stasio 75a41769bf refactor: db import ts refactor 2022-04-17 12:01:07 +02:00
Fabio Di Stasio 5dbc127b51 refactor: db exporter ts refactor 2022-04-15 23:13:23 +02:00
Fabio Di Stasio a315eeae6c refactor: ipc handlers ts refactor 2022-04-15 14:56:13 +02:00
Fabio Di Stasio 25a6fded2e refactor: sqlite client ts refactor 2022-04-14 18:25:13 +02:00
Fabio Di Stasio 42fcded9f1 refactor: posgtre client ts refactor 2022-04-14 09:15:16 +02:00
Fabio Di Stasio 186cb85d2e build: fixed module resolution and workers webpack config 2022-04-12 17:59:22 +02:00
Fabio Di Stasio fc1d6fba7f refactor: mysql client ts refactor 2022-04-12 17:08:05 +02:00
Fabio Di Stasio cbef7489b2 build: typescript config 2022-04-12 17:04:11 +02:00
Fabio Di Stasio 96d6913a7a
Merge pull request #229 from SmileYzn/patch-1
Update pt-BR.js
2022-04-11 15:18:26 +02:00
Cleverson 744c623914
Update pt-BR.js 2022-04-11 09:22:24 -03:00
Fabio Di Stasio 0b861d962d chore(release): 0.5.2 2022-04-10 10:55:23 +02:00
Fabio Di Stasio 6cc098c6f0 feat(core): option to allow untrusted SSL connections 2022-04-10 10:49:27 +02:00
Fabio Di Stasio 40828cb3ff
Merge pull request #208 from antares-sql/feat/postgre-import-export
feat(PostgreSQL): import/export
2022-04-07 17:56:37 +02:00
Fabio Di Stasio 6086ca4a80 feat(PostgreSQL): sql dump importer 2022-04-07 12:49:34 +02:00
Fabio Di Stasio d92facf518
chore: update README.md 2022-04-05 14:06:36 +02:00
allcontributors[bot] e9643a0d6b docs: update .all-contributorsrc [skip ci] 2022-04-04 10:32:23 +02:00
allcontributors[bot] cc609a7051 docs: update README.md [skip ci] 2022-04-04 10:32:23 +02:00
Fabio Di Stasio 796f61bf2f feat: french translation updated, closes #222 2022-04-04 10:29:11 +02:00
Fabio Di Stasio 0f9c991f53 fix(PostgreSQL): wrong values exporting table content 2022-04-02 11:44:55 +02:00
Fabio Di Stasio 638a88a1fb perf(PostgreSQL): improved views exportation 2022-04-01 18:36:02 +02:00
Fabio Di Stasio 026d74c8c8 fix: ssh tunnel not properly working, closes #220 2022-04-01 09:51:03 +02:00
Fabio Di Stasio 77f8cac6cf refactor: update repo links 2022-03-31 16:04:47 +02:00
Fabio Di Stasio d6fadf5db0
chore: update README.md 2022-03-29 15:47:50 +02:00
Fabio Di Stasio 408ddeda56 perf(PostgreSQL): improved dump file 2022-03-27 11:41:35 +02:00
Fabio Di Stasio 88cd097ec0 chore(release): 0.5.1 2022-03-25 09:26:04 +01:00
Fabio Di Stasio f12e6a96dd fix(UI): connection buttons out of screen on small displays, closes #213 2022-03-24 17:34:24 +01:00
Fabio Di Stasio a8ca8f2f76 feat(PostgreSQL): export functions and procedures 2022-03-23 13:26:46 +01:00
allcontributors[bot] 6fcae957e1 docs: update .all-contributorsrc [skip ci] 2022-03-22 21:38:32 +01:00
allcontributors[bot] 1cd2d8abf3 docs: update README.md [skip ci] 2022-03-22 21:38:32 +01:00
Fabio Di Stasio ed3c5fe559
Merge pull request #210 from SmileYzn/patch-1
Added some missing translations for pt-BR
2022-03-22 21:36:52 +01:00
Cleverson 9601c59392
Update pt-BR.js 2022-03-22 14:38:24 -03:00
Cleverson 14d20a30c1
Added some missing translations for pt-BR
Added some translations for pt-BR
2022-03-22 14:29:33 -03:00
Fabio Di Stasio 42376b4bc6 feat(PostgreSQL): export triggers 2022-03-22 17:25:34 +01:00
Fabio Di Stasio e9079adb25 feat(UI): option to disable blur effects, closes #209 2022-03-22 16:13:44 +01:00
Fabio Di Stasio 86f011f34f feat(PostgreSQL): export views 2022-03-22 12:59:13 +01:00
Fabio Di Stasio bb02479b71 feat(PostgreSQL): export user-defined types before tables 2022-03-22 12:40:14 +01:00
Fabio Di Stasio a67071e284 feat(PostgreSQL): export tables 2022-03-21 18:32:45 +01:00
Fabio Di Stasio 8f3efabb69 feat: export database as zip sql file 2022-03-18 18:12:13 +01:00
Fabio Di Stasio db628f7722 fix: numeric scale displayed on non decimal fields 2022-03-17 18:17:59 +01:00
Fabio Di Stasio e4bd747381
chore: update bug_report.md 2022-03-15 18:39:46 +01:00
Fabio Di Stasio 88eb113e53 chore: update README.md 2022-03-12 17:42:34 +01:00
Fabio Di Stasio 9109b2c328 chore(release): 0.5.0 2022-03-12 14:25:04 +01:00
Fabio Di Stasio dd070d008d
Merge pull request #129 from toriphes/feat/db-import-export
feat(MySQL): db import export
2022-03-12 14:17:48 +01:00
Fabio Di Stasio ee415da127 fix(MySQL): exception exporting empty procedures/functions 2022-03-12 10:37:40 +01:00
Fabio Di Stasio f0d368e3e3 refactor: minor refactor 2022-03-12 10:01:22 +01:00
Fabio Di Stasio 4be55f3fe9 feat(MySQL): support to multi spatial fields export 2022-03-12 09:52:40 +01:00
Fabio Di Stasio fd00ea42ee refactor: hide export option for PostgreSQL 2022-03-10 10:54:44 +01:00
Fabio Di Stasio 50b4411e9a
Merge pull request #204 from raliqala/fix-and-minimize-con-string
perf(PostgreSQL): Postgres connection string update, better error handling and any connection string accommodation
2022-03-10 10:52:10 +01:00
Topollo cd0a5dc034 Merge branch 'fix-and-minimize-con-string' of https://github.com/raliqala/antares into fix-and-minimize-con-string 2022-03-10 11:45:54 +02:00
Topollo 9fd427c4ff removed electron-rebuild 2022-03-10 11:44:52 +02:00
Fabio Di Stasio f3759b6541 perf(MySQL): prevent memory leak on large dump import 2022-03-10 10:23:22 +01:00
Fabio Di Stasio 191a354020
chore: delete UsersraliqAppDataLocalnpm-cache_logs2022-03-05T07_59_37_036Z-debug.log 2022-03-10 09:02:16 +01:00
Topollo 7dc314eecf
Merge branch 'master' into fix-and-minimize-con-string 2022-03-09 22:14:28 +02:00
Topollo 330a80fe70 perf(PostgreSQL): Postgres connection update, better error handling and connection string accommodation.
Used the pg package parser function to handle connection strings to lowering chances of errors. All other connection string will work here an example for ssl  ```const args = "postgres://user:password@localhost:5432/db?&sslrootcert=./myCaCertificate.pem&sslcert=./myClientCertificate.pem&sslkey=./myPrivateClientKey.pem&ciphers=mytestcipher&ssl=true"``` for ssh these can be used ```ssh: false, sshHost: '', sshUser: '', sshPass: '', sshKey: '', sshPort: 22,```

no breaking changes
2022-03-09 21:52:13 +02:00
Topollo b2ce533b82 Merge branch 'postgres_con_string' into fix-and-minimize-con-string 2022-03-09 19:41:31 +02:00
Topollo 12ce6b1135 Update testStringDecode.js 2022-03-09 19:40:04 +02:00
Topollo 71c5829702 hi 2022-03-09 19:31:41 +02:00
Fabio Di Stasio 1c4d5b05b3 feat(UI): toggle tables checkbox by column on export modal 2022-03-07 23:07:42 +01:00
Fabio Di Stasio e85197a2cc
chore: UsersraliqAppDataLocalnpm-cache_logs2022-03-05T07_59_37_036Z-debug.log 2022-03-07 20:10:44 +01:00
Giulio Ganci abf2b92e6e feat(UI): auto-refresh schema at the end of the import process 2022-03-06 19:54:32 +01:00
Giulio Ganci 3be826df4b feat(MySQL): enhance export characters escaping 2022-03-06 19:37:12 +01:00
Fabio Di Stasio 9db6bfd255 refactor: show contributors in settings 2022-03-06 16:02:24 +01:00
allcontributors[bot] 110adf90de docs: update .all-contributorsrc [skip ci] 2022-03-06 09:48:30 +01:00
allcontributors[bot] 40e4fbda15 docs: update README.md [skip ci] 2022-03-06 09:48:30 +01:00
Fabio Di Stasio 8e983ad2cb refactor(PostgreSQL): minor refactor on UI and code for pg connection string 2022-03-06 09:45:55 +01:00
Topollo 6305752ad1 feat(PostgreSQL): Postgress connection string feature for local and server connection string
This feature is based on this [issue](https://github.com/Fabio286/antares/issues/193)  I tested with the following posgress connection strings postgresql://postgres:pgpassword@127.0.0.1:5432/my_local_databse?connection=local postgres://serveruser:serverpass@test.db.elephantsql.com/my_remote_databse?connection=server  postgres://serveruser:serverpass@test.db.elephantsql.com:5432/my_remote_databse postgresql://postgres:pgpassword@127.0.0.1:5432/my_local_databse.

The connection string decoder is loaded before "test-connection", "check-connection", and "connect"
2022-03-06 09:45:55 +01:00
Fabio Di Stasio cc02e2c5a8 refactor(PostgreSQL): minor refactor on UI and code for pg connection string 2022-03-06 09:40:11 +01:00
Topollo f4a63eae2a feat(PostgreSQL): Postgress connection string feature for local and server connection string
This feature is based on this [issue](https://github.com/Fabio286/antares/issues/193)  I tested with the following posgress connection strings postgresql://postgres:pgpassword@127.0.0.1:5432/my_local_databse?connection=local postgres://serveruser:serverpass@test.db.elephantsql.com/my_remote_databse?connection=server  postgres://serveruser:serverpass@test.db.elephantsql.com:5432/my_remote_databse postgresql://postgres:pgpassword@127.0.0.1:5432/my_local_databse.

The connection string decoder is loaded before "test-connection", "check-connection", and "connect"
2022-03-06 02:20:10 +02:00
Fabio Di Stasio 763be8532d fix: wrong soft sort algorithm for numeric fields, closes #199 2022-03-05 21:58:56 +01:00
Giulio Ganci a6f5645a22 feat(UI): better real-time import stats 2022-03-05 18:55:11 +01:00
Giulio Ganci bbe13f27dc perf(MySQL): import tasks managed with async queue 2022-03-05 18:54:08 +01:00
Fabio Di Stasio f444746f46 perf(MySQL): import performance improvement 2022-03-05 17:00:05 +01:00
Fabio Di Stasio b4af645941 fix(MySQL):spatial fielts support on export 2022-03-03 22:52:50 +01:00
Fabio Di Stasio a5c8daa5b8 chore: workers debug config 2022-03-01 22:15:33 +01:00
Fabio Di Stasio 1a9fc37285 fix(MySQL): missing initial delimiter for exported procedures 2022-03-01 19:05:53 +01:00
Fabio Di Stasio f0351e5b94 fix(MySQL): missing functions and procedures definer escapes on exporter 2022-03-01 10:15:06 +01:00
Fabio Di Stasio 9bda4e71b7 Merge branch 'feat/db-import-export' of https://github.com/toriphes/antares into pr/toriphes/129 2022-02-28 23:33:16 +01:00
Fabio Di Stasio 7c00055034 Merge branch 'master' of https://github.com/Fabio286/antares into pr/toriphes/129 2022-02-28 22:00:13 +01:00
Fabio Di Stasio 4479a9600b fix: wrong schema and table size on explore bar 2022-02-28 14:19:07 +01:00
Giulio Ganci 7a6bd8bdbd fix: sql parser hangs during import 2022-02-27 17:33:03 +01:00
Fabio Di Stasio ad713fcf35 chore(release): 0.4.4 2022-02-27 14:07:24 +01:00
Fabio Di Stasio 251795e2d2
Merge branch 'master' into feat/db-import-export 2022-02-26 10:19:15 +01:00
Fabio Di Stasio 45cda7a7cc Merge branch 'master' of https://github.com/Fabio286/antares into pr/toriphes/129 2022-02-26 10:14:00 +01:00
Fabio Di Stasio b7039553cc fix: bigint support, closes #197 2022-02-26 10:02:23 +01:00
Fabio Di Stasio ddee68b4c2 ci: set windows-2019 for GitHub Actions 2022-02-26 10:01:46 +01:00
Fabio Di Stasio 573ac6d42e perf: use fork() for the import process 2022-02-24 13:14:57 +01:00
Fabio Di Stasio 265f28b4d9 fix: zero-padded bit fields beyond length 2022-02-21 21:40:26 +01:00
Fabio Di Stasio 1990d9a3d4 perf(MySQL): improved several field types support on exporter 2022-02-19 12:40:54 +01:00
Fabio Di Stasio 748d44977e perf: use fork() for the export process 2022-02-18 18:16:13 +01:00
Fabio Di Stasio 4051eff382 build: webpack workers configuration 2022-02-17 18:47:50 +01:00
Fabio Di Stasio 4276586e11 fix(MySQL): procedures exportation 2022-02-16 12:58:24 +01:00
Fabio Di Stasio 832fb0fb03 Merge branch 'feat/db-import-export' of https://github.com/toriphes/antares into pr/toriphes/129 2022-02-16 09:16:14 +01:00
Fabio Di Stasio 328ab61757 Merge branch 'master' of https://github.com/Fabio286/antares into pr/toriphes/129 2022-02-16 09:14:46 +01:00
Fabio Di Stasio 95d15de1bd chore: update README.md 2022-02-16 08:57:54 +01:00
Fabio Di Stasio 7dcd4441c4 feat(SQLite): manual commit mode 2022-02-15 09:23:07 +01:00
Fabio Di Stasio d81e0911ab feat(PostgreSQL): manual commit mode 2022-02-15 09:23:07 +01:00
Fabio Di Stasio 5bfff649e9 feat: reminder for uncommitted changes closing a tab 2022-02-15 09:23:07 +01:00
Fabio Di Stasio 76743e8f7c feat: execution notification for ROLLBACK and COMMIT 2022-02-15 09:23:07 +01:00
Fabio Di Stasio 4ed2f9a939 feat(MySQL): manual commit mode 2022-02-15 09:23:07 +01:00
Fabio Di Stasio c5eb73ed3f chore: update electron 2022-02-15 09:21:14 +01:00
Fabio Di Stasio fa3f3e1fd8 fix(MySQL): default value not displayed for DECIMAL fields 2022-02-05 09:43:37 +01:00
Fabio Di Stasio 2c7c97852f chore(release): 0.4.3 2022-01-30 12:39:54 +01:00
Fabio Di Stasio 48ebf23bd1
feat(MySQL): spatial fields support (#165)
* feat: POINT field support

* feat(MySQL): support to LINESTRING, POLYGON and GEOMETRY fields

* refactor: removed links from map attribution

* feat(MySQL): support to MULTIPOINT, MULTILINESTRING, MULTIPOLYGON and GEOMCOLLECTION fields

* test: temporary fix on Windows tests
2022-01-30 11:45:24 +01:00
Fabio Di Stasio 64deedc5ad test: temporary skip tests on WIndows 2022-01-30 11:44:01 +01:00
Fabio Di Stasio 9f033fb994 fix: indexes and foreign keys not cleared after deletion of related field, closes #182 2022-01-28 23:57:53 +01:00
Fabio Di Stasio 401cb49687 refactor: improved temporary fix to Windows 7 style frame 2022-01-28 09:19:49 +01:00
Fabio Di Stasio 1356011ba3 fix(Windows): temporary fix to Windows 7 style frame on app startup, closes #169 2022-01-27 23:40:03 +01:00
Fabio Di Stasio 0cfd7938ee fix: scale on numeric fields that doesn't support it 2022-01-27 09:12:01 +01:00
Fabio Di Stasio 745b55a942 chore: update dependencies 2022-01-25 09:08:45 +01:00
Fabio Di Stasio eef7c1dcec perf: support of scale in field's length setting 2022-01-22 12:29:49 +01:00
Fabio Di Stasio aa8fc545d7
Rename zh_CN.js to zh-CN.js 2022-01-20 09:02:20 +01:00
Fabio Di Stasio a780c7e0ff
Merge pull request #179 from Fabio286/all-contributors/add-goYou
docs: add goYou as a contributor for translation
2022-01-20 08:56:33 +01:00
allcontributors[bot] 9a1bb0599f
docs: update .all-contributorsrc [skip ci] 2022-01-20 07:56:07 +00:00
allcontributors[bot] d847870f67
docs: update README.md [skip ci] 2022-01-20 07:56:06 +00:00
Fabio Di Stasio cd24371576
Merge pull request #177 from goYou/master
feat: add Simplified Chinese translation
2022-01-20 08:54:56 +01:00
goYou 6ef565cf07 feat: add Simplified Chinese translation 2022-01-20 01:50:18 +08:00
Fabio Di Stasio 46b45c8ab6 fix(PostgreSQL): schema different than public not automatically selected, closes #172 2022-01-17 09:15:18 +01:00
Fabio Di Stasio f28531a225 build: resolved dependency conflicts 2022-01-16 11:50:35 +01:00
Fabio Di Stasio 8fb1f0803e fix: cell copy returns "undefined" in some conditions, closes #170 2022-01-14 18:37:37 +01:00
Fabio Di Stasio 020ce36312 chore(release): 0.4.2 2022-01-10 08:50:00 +01:00
Fabio Di Stasio b4545b178f feat(UI): textarea autofocus selecting a query tab, closes #166 2022-01-09 12:28:01 +01:00
Fabio Di Stasio d9a3eab015 perf(MySQL): support to ANSI_QUOTES sql_mode, closes #158 2022-01-05 18:23:31 +01:00
Fabio Di Stasio 2ab49c218d
Merge pull request #164 from toriphes/feat/keep-window-state
feat: keep window state
2021-12-28 19:30:51 +01:00
Giulio Ganci 8f9385d508 feat: save window state
open the main window in the last used position of the screen
2021-12-28 17:12:10 +01:00
Giulio Ganci 4e9f8d16ee feat: initial mysql import support 2021-12-28 15:30:07 +01:00
Fabio Di Stasio 0c002918eb feat(PostgreSQL): ability to cancel queries 2021-12-26 21:13:02 +01:00
Fabio Di Stasio 3d56ec7b49
Merge pull request #157 from Fabio286/dependabot/npm_and_yarn/eslint-plugin-promise-6.0.0
build(deps-dev): bump eslint-plugin-promise from 5.2.0 to 6.0.0
2021-12-24 18:04:58 +01:00
Fabio Di Stasio 48c3e6afc4 perf: hash for foreign key default names 2021-12-23 11:47:17 +01:00
dependabot[bot] 50a5c8fe1e
build(deps-dev): bump eslint-plugin-promise from 5.2.0 to 6.0.0
Bumps [eslint-plugin-promise](https://github.com/xjamundx/eslint-plugin-promise) from 5.2.0 to 6.0.0.
- [Release notes](https://github.com/xjamundx/eslint-plugin-promise/releases)
- [Changelog](https://github.com/xjamundx/eslint-plugin-promise/blob/development/CHANGELOG.md)
- [Commits](https://github.com/xjamundx/eslint-plugin-promise/commits)

---
updated-dependencies:
- dependency-name: eslint-plugin-promise
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-20 19:03:06 +00:00
Fabio Di Stasio b0d1f115c9 ci: update actions/checkout to v2 2021-12-20 09:27:36 +01:00
Fabio Di Stasio a59f77f618 feat(MySQL): ability to cancel queries 2021-12-19 11:59:09 +01:00
Fabio Di Stasio e7a1858091 fix(SQLite): exception with some fields 2021-12-16 09:16:15 +01:00
Fabio Di Stasio 648a51efe8
Merge pull request #154 from Fabio286/all-contributors/add-wenj91
docs: add wenj91 as a contributor for code
2021-12-14 09:49:24 +01:00
Fabio Di Stasio 38962c4807
Merge pull request #153 from wenj91/master
[TypeError: Cannot read properties of undefined (reading 'type') #152] bugfix
2021-12-14 09:48:58 +01:00
allcontributors[bot] 43e4cdd4cf
docs: update .all-contributorsrc [skip ci] 2021-12-14 08:48:00 +00:00
allcontributors[bot] 91046c1ac1
docs: update README.md [skip ci] 2021-12-14 08:47:59 +00:00
文杰 63f8b9b6a1
Merge branch 'Fabio286:master' into master 2021-12-14 09:40:42 +08:00
文杰 ed476d9b5c
Merge pull request #1 from wenj91:152-bugfix
[TypeError: Cannot read properties of undefined (reading 'type') #152] bugfix
2021-12-14 09:40:02 +08:00
文杰 f41d8c0480 [TypeError: Cannot read properties of undefined (reading 'type') #152] bugfix 2021-12-14 01:37:59 +00:00
Fabio Di Stasio e3b54a8be1
Merge pull request #151 from datlechin/master
Update vi-VN translation
2021-12-13 08:08:30 +01:00
Ngo Quoc Dat c2c0394624 Update vi-VN translation 2021-12-13 08:48:07 +07:00
Fabio Di Stasio 8a6f5eac59 chore(release): 0.4.1 2021-12-11 10:28:29 +01:00
Fabio Di Stasio a5fdcc1a85 feat: language format detection for text fields 2021-12-10 23:30:03 +01:00
Fabio Di Stasio 1df21da47c refactor: moved to new vue slots API 2021-12-10 17:34:44 +01:00
Fabio Di Stasio 8da0224876 fix(MySQL): wrong datetime fields default in table filler in some cases 2021-12-09 18:26:59 +01:00
Fabio Di Stasio 359e14a9eb fix(MySQL): wrong value for fields "on update" in some conditions 2021-12-09 12:22:38 +01:00
Fabio Di Stasio 813aa320d9 perf(UI): avoid columns size change when editing cells or scrolling results 2021-12-08 11:19:10 +01:00
Fabio Di Stasio aaa5549609 fix: cell disappear on edit in one column tables 2021-12-08 10:37:23 +01:00
Fabio Di Stasio 35cb7e1dc4 fix: select all rows with ctrl+a when editing a cell 2021-12-08 10:09:01 +01:00
Fabio Di Stasio 992a033cb2 fix: false positive with Windows Defender 2021-12-01 09:23:40 +01:00
Fabio Di Stasio 5267b37eaf chore: updated appx icons 2021-11-28 16:28:54 +01:00
Fabio Di Stasio 8fe30d8b6d ci: run tests before build 2021-11-25 21:37:48 +01:00
Fabio Di Stasio 37ccb6b00d test: basic e2e tests 2021-11-25 18:34:33 +01:00
Fabio Di Stasio e8af2d24a8 perf(UI): disable save button in table creation when no fields are added 2021-11-25 17:23:46 +01:00
Fabio Di Stasio d7f1aa97af fix(SQLite): update rows with a text primary key 2021-11-25 16:25:40 +01:00
Fabio Di Stasio c46224635a chore(release): 0.4.0 2021-11-24 17:27:51 +01:00
Fabio Di Stasio cc99491fe4 fix(UI): notifications timeout anomalies 2021-11-24 16:59:07 +01:00
Fabio Di Stasio fe8435531e
Merge pull request #143 from Fabio286/feat/read-only-mode-on-connections
feat: read-only mode
2021-11-24 14:41:31 +01:00
Fabio Di Stasio 5d48fe08c7 feat(PostgreSQL): read-only mode 2021-11-24 14:24:52 +01:00
Fabio Di Stasio 4437d44486 feat(MySQL): read-only mode 2021-11-24 13:04:14 +01:00
Fabio Di Stasio 9fe3680bbb perf: update italian traslation 2021-11-24 09:52:10 +01:00
Fabio Di Stasio da1947e4ef fix(UI): hide tools menu if no tools available 2021-11-24 09:19:42 +01:00
Fabio Di Stasio 37a848df9d
Merge pull request #142 from Fabio286/dependabot/npm_and_yarn/electron-16.0.1
build(deps-dev): bump electron from 15.3.2 to 16.0.1
2021-11-23 17:38:21 +01:00
dependabot[bot] 9816965e18
build(deps-dev): bump electron from 15.3.2 to 16.0.1
Bumps [electron](https://github.com/electron/electron) from 15.3.2 to 16.0.1.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v15.3.2...v16.0.1)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-22 19:05:55 +00:00
Fabio Di Stasio 98165cacaa fix(SQLite): hide schema creation 2021-11-19 16:50:15 +01:00
Fabio Di Stasio 7ad3096b4e chore: update README.md 2021-11-19 16:14:11 +01:00
Fabio Di Stasio 7d345cf795
Merge pull request #141 from Fabio286/feat/sqlite-implementation
feat:sqlite implementation
2021-11-19 16:11:00 +01:00
Fabio Di Stasio f40e9c592e feat(SQLite): triggers management 2021-11-19 15:36:07 +01:00
Fabio Di Stasio 7671c585f5 feat(SQLite): views management 2021-11-19 13:13:35 +01:00
Fabio Di Stasio 93b4a7063b perf(SQLite): improvements in field length detection 2021-11-18 19:43:08 +01:00
Fabio Di Stasio 3efeb45c46 feat(SQLite): tables management 2021-11-18 11:36:46 +01:00
Fabio Di Stasio 3fc227d2de feat(SQLite): readonly mode 2021-11-16 13:21:33 +01:00
Fabio Di Stasio 604b371920 feat(SQLite): cell update in data tabs 2021-11-16 12:56:03 +01:00
Fabio Di Stasio fd321beece feat(SQLite): keys support 2021-11-16 12:27:51 +01:00
Fabio Di Stasio 9fe4e6b9e3
Merge pull request #140 from Fabio286/all-contributors/add-kilianstallz
docs: add kilianstallz as a contributor for code
2021-11-15 22:38:24 +01:00
allcontributors[bot] 57bf90481b
docs: update .all-contributorsrc [skip ci] 2021-11-15 21:37:49 +00:00
allcontributors[bot] 6062a32c1c
docs: update README.md [skip ci] 2021-11-15 21:37:48 +00:00
Fabio Di Stasio 94c899eb82 perf(SQLite): improvements in data visualization 2021-11-15 18:09:34 +01:00
Fabio Di Stasio 44a4ca75bd
Merge pull request #139 from kilianstallz/kilianstallz-patch-table-rows
Hotfix quote style on delete-table-rows handler
2021-11-15 17:01:10 +01:00
Kilian Stallinger c8e1605b08
Hotfix quote style on delete-table-rows handler
Use single quote as intended for ID in delete query.
2021-11-15 16:21:09 +01:00
Fabio Di Stasio 60e5556a3e chore(release): 0.3.9 2021-11-14 10:51:45 +01:00
Fabio Di Stasio f2fcc98839 feat(SQLite): table data visualization 2021-11-13 23:00:53 +01:00
Fabio Di Stasio c54438d6d3 feat(SQLite): connection add/edit masks 2021-11-13 11:34:30 +01:00
Fabio Di Stasio b3f10220b3 build: transparent background for appx icon 2021-11-12 13:12:05 +01:00
Fabio Di Stasio d19f475fc2 perf(UI): improved function and routine parameters modals 2021-11-12 12:22:39 +01:00
Fabio Di Stasio 795db96319
Merge pull request #135 from Fabio286/dependabot/npm_and_yarn/marked-4.0.0
build(deps): bump marked from 3.0.8 to 4.0.0
2021-11-10 12:00:20 +01:00
Fabio Di Stasio b5fee79e90 refactor: minor changes to support marked 4.0.0 2021-11-10 11:48:06 +01:00
dependabot[bot] 5532ddbda9
build(deps): bump marked from 3.0.8 to 4.0.0
Bumps [marked](https://github.com/markedjs/marked) from 3.0.8 to 4.0.0.
- [Release notes](https://github.com/markedjs/marked/releases)
- [Changelog](https://github.com/markedjs/marked/blob/master/.releaserc.json)
- [Commits](https://github.com/markedjs/marked/compare/v3.0.8...v4.0.0)

---
updated-dependencies:
- dependency-name: marked
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-08 19:06:33 +00:00
Fabio Di Stasio 3369d3dc2d refactor: prefix to internal rows id 2021-11-08 15:12:37 +01:00
Fabio Di Stasio fd25f881f9 feat: schema size in explore bar 2021-11-06 16:36:54 +01:00
Fabio Di Stasio 5ca3a22dc5 feat(MySQL): enable/disable schedulers from contextual menu 2021-11-06 12:21:33 +01:00
Fabio Di Stasio 5c668249cf feat(MySQL): scheduler status indicator in explore bar 2021-11-05 18:23:02 +01:00
Fabio Di Stasio 39b9a59143 fix(PostgreSQL): bigint fetched as string instead of number, closes #134 2021-11-05 11:41:12 +01:00
Giulio Ganci d25c62b4da feat: delete dump file when the export is canceled 2021-11-04 23:09:28 +01:00
Giulio Ganci 8cf738bac8 fix(MySQL): export crash with large databases 2021-11-04 22:36:45 +01:00
Fabio Di Stasio 534659f9ae feat(PostgreSQL): enable/disable triggers from contextual menu 2021-11-04 21:54:42 +01:00
Fabio Di Stasio c00fd1381f fix: temporary solution on MacOS for unsigned app updates 2021-11-03 14:46:13 +01:00
Fabio Di Stasio 17c6686163
Merge pull request #133 from Fabio286/dependabot/npm_and_yarn/webpack-dev-server-4.4.0
build(deps-dev): bump webpack-dev-server from 3.11.2 to 4.4.0
2021-11-02 22:23:56 +01:00
Fabio Di Stasio bc0c5a76ba refactor: minor changes to support webpack-dev-server 4.4.0 2021-11-02 22:23:10 +01:00
Fabio Di Stasio 2b16c0ece4
Merge pull request #132 from Fabio286/dependabot/npm_and_yarn/sass-loader-12.3.0
build(deps-dev): bump sass-loader from 10.2.0 to 12.3.0
2021-11-02 22:02:07 +01:00
dependabot[bot] ba1416dce2
build(deps-dev): bump webpack-dev-server from 3.11.2 to 4.4.0
Bumps [webpack-dev-server](https://github.com/webpack/webpack-dev-server) from 3.11.2 to 4.4.0.
- [Release notes](https://github.com/webpack/webpack-dev-server/releases)
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.11.2...v4.4.0)

---
updated-dependencies:
- dependency-name: webpack-dev-server
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-02 20:55:42 +00:00
Fabio Di Stasio 13adf0a767
Merge pull request #131 from Fabio286/dependabot/npm_and_yarn/eslint-plugin-vue-8.0.3
build(deps-dev): bump eslint-plugin-vue from 7.20.0 to 8.0.3
2021-11-02 21:52:38 +01:00
Fabio Di Stasio cacab55f55 refactor: minor changes to support eslint-plugin-vue 8 2021-11-02 21:51:53 +01:00
dependabot[bot] 3189d625e3
build(deps-dev): bump sass-loader from 10.2.0 to 12.3.0
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 10.2.0 to 12.3.0.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v10.2.0...v12.3.0)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-01 19:07:14 +00:00
dependabot[bot] f71ed39b88
build(deps-dev): bump eslint-plugin-vue from 7.20.0 to 8.0.3
Bumps [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) from 7.20.0 to 8.0.3.
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Commits](https://github.com/vuejs/eslint-plugin-vue/compare/v7.20.0...v8.0.3)

---
updated-dependencies:
- dependency-name: eslint-plugin-vue
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-01 19:05:26 +00:00
Fabio Di Stasio 409ed54608 perf: split the export select query to avoid running out of memory 2021-11-01 16:12:20 +01:00
Fabio Di Stasio d9d3bf2bc9 perf: avoid to load schema elements if already loaded in export modal 2021-11-01 14:52:45 +01:00
Fabio Di Stasio 9e9de7b5c5 Merge branch 'master' of https://github.com/Fabio286/antares into pr/toriphes/129 2021-11-01 10:09:37 +01:00
Giulio Ganci b2a5b40c03 feat: mysql export for trigger, views, schedulers, functions and routines 2021-10-31 17:22:59 +01:00
Fabio Di Stasio 729aa9781a chore: update README.md and CONTRIBUTING.md 2021-10-31 16:07:53 +01:00
Fabio Di Stasio cd1ebacf89
Merge pull request #126 from toriphes/master
feat: added macos basic shortcusts and menu
2021-10-31 15:24:56 +01:00
Fabio Di Stasio a08074b446 Merge branch 'master' of https://github.com/Fabio286/antares into pr/toriphes/126 2021-10-31 15:14:49 +01:00
Fabio Di Stasio 0cd182546b
build: electron-webpack replacement (#130)
* some changes

* improvements and dedicated webpeck configs for render and main

* added debugging setup

* vscode main process debug config

* vue3 devtools
2021-10-31 10:36:45 +01:00
Fabio Di Stasio 89fdd210ca fix: row selection problems after a deletion fail, closes #128 2021-10-29 22:43:22 +02:00
Giulio Ganci 0de2321920 feat: initial db export implementation 2021-10-29 12:58:37 +02:00
Giulio Ganci e2cf6e8c21
Merge branch 'Fabio286:master' into master 2021-10-29 12:43:00 +02:00
Giulio Ganci 430490ad93 feat: added macos basic shortcusts and menu 2021-10-24 13:02:37 +02:00
Giulio Ganci a35566f273 feat(UI): double click on the title bar will toggle window fullscreen size 2021-10-24 13:00:36 +02:00
Fabio Di Stasio 3679121c25
Merge pull request #125 from toriphes/master
MacOS improvements
2021-10-24 10:32:46 +02:00
Giulio Ganci 7657d05edf feat(UI): improved topbar look&feel on MacOS 2021-10-23 18:15:32 +02:00
Giulio Ganci 1ddf8f0dbe fix: copy&paste and basic usability on macOS 2021-10-23 17:56:42 +02:00
Fabio Di Stasio 9506bb862a chore(release): 0.3.8 2021-10-23 10:18:46 +02:00
Fabio Di Stasio 4cfab365c2 build: added .nvmrc 2021-10-21 18:17:40 +02:00
Fabio Di Stasio 8d0aa73d1e chore: update dependencies 2021-10-21 10:51:07 +02:00
Fabio Di Stasio 30b487c37f refactor(UI): removed text from refresh buttons 2021-10-20 18:14:02 +02:00
Fabio Di Stasio aef17be36c fix(PostgreSQL): issue with uppercase characters in table field names 2021-10-19 17:42:31 +02:00
Fabio Di Stasio ea65d8eee7
Merge pull request #123 from toriphes/master
feat(UI): multi column table filters
2021-10-19 09:11:29 +02:00
Giulio Ganci 7dc33c78aa fix: regression during resize results table on filters change 2021-10-18 21:23:22 +02:00
Giulio Ganci 69cd083054 fix: query failure when a filter with a numeric value is used 2021-10-18 21:13:19 +02:00
Giulio Ganci 91788054e6 feat(UI): hide filter bar if there are no more rows in it 2021-10-18 21:11:09 +02:00
Giulio Ganci 968a67ce3d refactor(UI): removed duplicate add filter button 2021-10-18 19:15:37 +02:00
Fabio Di Stasio f9ee7d0450 perf(UI): resize results table on filters change 2021-10-18 11:58:29 +02:00
Giulio Ganci 0e15c39797 feat(UI): multi column table filters 2021-10-17 23:54:00 +02:00
Fabio Di Stasio adf407c1ba
Merge pull request #122 from toriphes/master
feat(UI): ctrl|cmd+t, ctrl|cmd+w shortcut to open/close workspace tabs
2021-10-16 18:50:51 +02:00
Fabio Di Stasio 8a86344484 refactor(UI): display new shortcuts in empty query tab 2021-10-16 18:46:17 +02:00
Fabio Di Stasio d2d0c3ca41 refactor(UI): changed query clear shortcut 2021-10-16 18:43:23 +02:00
Giulio Ganci 9046b858b1 feat(UI): ctrl|cmd+t, ctrl|cmd+w shortcut to open/close workspace tabs 2021-10-16 17:05:26 +02:00
Fabio Di Stasio 46987faea8
Merge pull request #121 from datlechin/master
Add "passphrase" to Vietnamese translation
2021-10-16 14:18:23 +02:00
Ngô Quốc Đạt dd25827e40 Add "passphrase" to Vietnamese translation 2021-10-16 18:52:39 +07:00
Fabio Di Stasio 4069ade36d feat(UI): CTRL+A to select all result rows 2021-10-16 09:58:32 +02:00
Fabio Di Stasio c8594c0549 chore(release): 0.3.7 2021-10-08 09:13:23 +02:00
Fabio Di Stasio 7359c3b5bd
Merge pull request #107 from Fabio286/dependabot/npm_and_yarn/ssh2-promise-1.0.2
build(deps): bump ssh2-promise from 0.2.0 to 1.0.2
2021-10-07 15:27:40 +02:00
Fabio Di Stasio 4195b8416f
Create CONTRIBUTING.md 2021-10-07 15:15:12 +02:00
Fabio Di Stasio 9407a29922 feat: support to SSH private keys with passphrase, closes #118 2021-10-07 14:58:31 +02:00
Fabio Di Stasio 2fcd080bd4 fix(PostgreSQL): issue with uppercase characters in table and field names, closes #116 2021-10-06 12:08:37 +02:00
Fabio Di Stasio 26446fb7ed fix: closing ask credential modal during a connection doesn't stops loading, closes #114 2021-10-05 18:20:38 +02:00
Fabio Di Stasio 2480c76a08 chore: update README.md 2021-10-05 10:53:45 +02:00
Fabio Di Stasio 1f0ec57789
Merge pull request #115 from IsamuSugi/Japanese-translation
Add new language: Japanese
2021-10-05 10:49:47 +02:00
isamu 76e5849c78 Add new language: Japanese 2021-10-05 17:22:07 +09:00
Fabio Di Stasio db1641b74f fix(UI): window reload pressing enter in schema creation modal, closes #113 2021-10-05 09:16:45 +02:00
Fabio Di Stasio 165c54f663
Merge pull request #111 from datlechin/master
Add new language: Tiếng Việt
2021-10-05 09:04:19 +02:00
Ngo Quoc Dat a5ca3ea204 Add new language: Tiếng Việt 2021-10-04 18:30:44 +07:00
dependabot[bot] add95292ad
build(deps): bump ssh2-promise from 0.2.0 to 1.0.2
Bumps [ssh2-promise](https://github.com/sanketbajoria/ssh2-promise) from 0.2.0 to 1.0.2.
- [Release notes](https://github.com/sanketbajoria/ssh2-promise/releases)
- [Commits](https://github.com/sanketbajoria/ssh2-promise/commits)

---
updated-dependencies:
- dependency-name: ssh2-promise
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-01 13:52:48 +00:00
Fabio Di Stasio 7a63608f54 feat(UI): auto detect system theme as default app theme 2021-10-01 15:48:02 +02:00
Fabio Di Stasio 7ea7b369ab chore: update dependencies 2021-10-01 15:33:10 +02:00
Fabio Di Stasio 258fffa958 chore: update README.md 2021-09-30 09:05:40 +02:00
Fabio Di Stasio 0849c5131f
Merge pull request #106 from Fabio286/dependabot/npm_and_yarn/electron-15.0.0
build(deps-dev): bump electron from 14.0.1 to 15.0.0
2021-09-28 09:19:16 +02:00
dependabot[bot] cce59d0ca8
build(deps-dev): bump electron from 14.0.1 to 15.0.0
Bumps [electron](https://github.com/electron/electron) from 14.0.1 to 15.0.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v14.0.1...v15.0.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-27 19:06:30 +00:00
Fabio Di Stasio 94a53fec6c chore(release): 0.3.6 2021-09-26 11:39:19 +02:00
Fabio Di Stasio 13aa47cd44 feat: processes list exportation 2021-09-26 11:36:42 +02:00
Fabio Di Stasio 85f625daf7 feat: copy cell/row or kill connections on context menu from processes list 2021-09-26 11:19:48 +02:00
Fabio Di Stasio 7de3bb9346 refactor(core): compatibility with electron/remote 2.x 2021-09-21 11:16:07 +02:00
Fabio Di Stasio e43a0ba0b4
Merge pull request #102 from Fabio286/dependabot/npm_and_yarn/electron/remote-2.0.1
build(deps): bump @electron/remote from 1.2.2 to 2.0.1
2021-09-21 10:03:35 +02:00
dependabot[bot] 638cd4bfb7
build(deps): bump @electron/remote from 1.2.2 to 2.0.1
Bumps [@electron/remote](https://github.com/electron/remote) from 1.2.2 to 2.0.1.
- [Release notes](https://github.com/electron/remote/releases)
- [Changelog](https://github.com/electron/remote/blob/main/.releaserc.json)
- [Commits](https://github.com/electron/remote/compare/v1.2.2...v2.0.1)

---
updated-dependencies:
- dependency-name: "@electron/remote"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-20 19:06:45 +00:00
Fabio Di Stasio 3959333662 feat: workspace query history 2021-09-17 18:32:28 +02:00
Fabio Di Stasio abd46aa322 perf(core): better communication of internal exceptions 2021-09-15 15:31:57 +02:00
Fabio Di Stasio d4888ad8fb fix: adding a connection default values not change when switching clients, closes #101 2021-09-15 11:08:00 +02:00
Fabio Di Stasio 6bfc229b77 chore(release): 0.3.5 2021-09-13 15:03:02 +02:00
Fabio Di Stasio d31b051f4b chore: update dependencies 2021-09-13 15:02:28 +02:00
Fabio Di Stasio 95b60df8fc fix(MySQL): connections stuck at startup if 5 or more tabs are restored 2021-09-13 10:03:27 +02:00
Fabio Di Stasio ed5189fdc1 chore(release): 0.3.4 2021-09-12 11:59:01 +02:00
Fabio Di Stasio 265ed66d25 feat: start search when typing with focus on the left bar 2021-09-12 11:55:16 +02:00
Fabio Di Stasio 09c07acd5c feat: new create trigger function tabs 2021-09-11 10:24:21 +02:00
Fabio Di Stasio 3c5a69adc9 feat: new create scheduler tabs 2021-09-10 18:23:32 +02:00
Fabio Di Stasio 0203f69e95 feat: new create function tabs 2021-09-07 18:20:45 +02:00
Fabio Di Stasio 9a2498862c
Merge pull request #97 from Fabio286/dependabot/npm_and_yarn/electron-14.0.0
build(deps-dev): bump electron from 13.3.0 to 14.0.0
2021-09-07 09:07:29 +02:00
dependabot[bot] 3a26d4f509
build(deps-dev): bump electron from 13.3.0 to 14.0.0
Bumps [electron](https://github.com/electron/electron) from 13.3.0 to 14.0.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v13.3.0...v14.0.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-06 19:44:11 +00:00
Fabio Di Stasio ce08cbd8b5
Merge pull request #98 from Fabio286/dependabot/npm_and_yarn/mdi/font-6.1.95
build(deps): bump @mdi/font from 5.9.55 to 6.1.95
2021-09-06 21:41:47 +02:00
dependabot[bot] d91ffcccca
build(deps): bump @mdi/font from 5.9.55 to 6.1.95
Bumps [@mdi/font](https://github.com/Templarian/MaterialDesign-Webfont) from 5.9.55 to 6.1.95.
- [Release notes](https://github.com/Templarian/MaterialDesign-Webfont/releases)
- [Commits](https://github.com/Templarian/MaterialDesign-Webfont/compare/v5.9.55...v6.1.95)

---
updated-dependencies:
- dependency-name: "@mdi/font"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-06 19:06:42 +00:00
Fabio Di Stasio 6115eb9409 refactor: improvements in explorebar events on tables 2021-09-06 18:02:54 +02:00
Fabio Di Stasio 3fd26a0523 feat: new create routine tabs 2021-09-06 17:29:34 +02:00
Fabio Di Stasio e217d5181b feat: new create trigger tabs 2021-09-02 18:08:23 +02:00
Fabio Di Stasio dcf368b350 chore: update dependencies 2021-09-01 18:17:11 +02:00
Fabio Di Stasio 21e3e79ddf fix(UI): context menu of tables cut if close to bottom edge 2021-08-31 19:58:20 +02:00
Fabio Di Stasio 2918c3cb92 chore(release): 0.3.3 2021-08-22 10:41:48 +02:00
Fabio Di Stasio 3ad190b18c Merge branch 'master' of https://github.com/Fabio286/antares 2021-08-22 10:37:27 +02:00
Fabio Di Stasio d5b2bde2ea fix(UI): no round borders on left of file upload inputs 2021-08-22 10:37:23 +02:00
fabio286 a42348ef5c chore: deletion of wrong file name case component 2021-08-20 13:42:29 +02:00
Fabio Di Stasio 8b93c49778 feat: new create view tabs 2021-08-18 17:28:41 +02:00
Fabio Di Stasio 0842e00098 feat: new table empty state 2021-08-17 18:54:23 +02:00
Fabio Di Stasio 6cef02bebb
Merge pull request #93 from Fabio286/dependabot/npm_and_yarn/marked-3.0.0
build(deps): bump marked from 2.1.3 to 3.0.0
2021-08-17 12:04:22 +02:00
dependabot[bot] 334c7a31d2
build(deps): bump marked from 2.1.3 to 3.0.0
Bumps [marked](https://github.com/markedjs/marked) from 2.1.3 to 3.0.0.
- [Release notes](https://github.com/markedjs/marked/releases)
- [Changelog](https://github.com/markedjs/marked/blob/master/release.config.js)
- [Commits](https://github.com/markedjs/marked/compare/v2.1.3...v3.0.0)

---
updated-dependencies:
- dependency-name: marked
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-16 19:05:09 +00:00
Fabio Di Stasio bc82289d54 perf(UI): visual improvements of tables 2021-08-16 19:44:55 +02:00
Fabio Di Stasio c9fa941578 feat: new create table tabs 2021-08-13 16:50:59 +02:00
Fabio Di Stasio 4048df3c7b fix(MySQL): editing a view causes error for missing database in some conditions 2021-08-12 10:29:13 +02:00
Fabio Di Stasio 198368605b perf(UI): improved view setting tab 2021-08-12 10:07:31 +02:00
Fabio Di Stasio 8f0ac26b69 refactor: better component names 2021-08-12 09:54:13 +02:00
Fabio Di Stasio b35fc5b78b fix(UI): multiple temp tabs opened switching to tables from other elements 2021-08-11 18:04:14 +02:00
Fabio Di Stasio 622b519cbb fix: table options not loaded on restored setting tabs at startup 2021-08-11 16:16:58 +02:00
Fabio Di Stasio 71e2c911ae perf(UI): element options in setting tabs accessible directly 2021-08-10 18:12:13 +02:00
Fabio Di Stasio 756d49b259 perf(UI): primary app color on selected text backgrouns 2021-08-10 13:14:48 +02:00
Fabio Di Stasio 14c64c537c chore(release): 0.3.2 2021-08-06 14:44:45 +02:00
Fabio Di Stasio 97b3563e25 chore: update dependencies 2021-08-06 14:38:25 +02:00
Fabio Di Stasio e834fe31ac feat(UI): automatic scroll on selected tab 2021-08-05 13:44:48 +02:00
Fabio Di Stasio 065de3a0a2 feat(UI): query tab name based on content 2021-08-05 13:30:33 +02:00
Fabio Di Stasio 1573de5b1f feat(UI): button to clear sidebar search input 2021-08-05 12:47:24 +02:00
Fabio Di Stasio 04fc1bbee0 feat(UI): automatic scroll to selected tab element in left bar 2021-08-05 12:09:54 +02:00
Fabio Di Stasio dea378014d perf: approximate table total updated on table refresh 2021-08-04 15:52:26 +02:00
Fabio Di Stasio 3abff36136 feat: contextual menu option to duplicate table fields 2021-08-04 09:59:50 +02:00
Fabio Di Stasio 70354aa828 feat(UI): shortcuts info on empty query tab 2021-08-03 17:59:15 +02:00
Fabio Di Stasio 372049ae64 perf(UI): loading animation on tables and table context menu improvements 2021-08-03 15:43:13 +02:00
Fabio Di Stasio 5d271be062 chore: update README.md 2021-08-02 19:26:56 +02:00
Fabio Di Stasio 07ee1ae828 fix: tab selected when clicking closing cross 2021-07-29 16:45:28 +02:00
Fabio Di Stasio cbe0e2980a perf: update italian translation 2021-07-27 17:31:51 +02:00
Fabio Di Stasio 0fba50c6ec
chore: update README.md 2021-07-27 17:18:11 +02:00
Fabio Di Stasio 420255cdd4 chore(release): 0.3.1 2021-07-27 10:27:02 +02:00
Fabio Di Stasio a8a47ed5f7 fix(UI): tabs or explorebar elements selected with mouse wheel or right button 2021-07-23 22:41:53 +02:00
Fabio Di Stasio 425f0663f9 chore(release): 0.3.0 2021-07-23 17:38:31 +02:00
Fabio Di Stasio e106d100b5 refactor: mousedown instead click on tabs and explorebar elements 2021-07-23 15:45:06 +02:00
Fabio Di Stasio d7fdf53932 fix: wrong editor height with some conditions 2021-07-23 10:56:41 +02:00
Fabio Di Stasio 62f7e57d0c fix: manual page input not disabled when only one page is available 2021-07-23 09:01:50 +02:00
Fabio Di Stasio 14577d14bb fix: sort order of tables is lost switching pages 2021-07-22 18:22:47 +02:00
fabio286 f5f2a697e8 ci: update snap store config 2021-07-22 17:30:07 +02:00
Fabio Di Stasio a0105cf1c3 fix(UI): not disabled buttons during save table setting tabs 2021-07-22 13:13:26 +02:00
Fabio Di Stasio 77c5d28032 fix: new field default value unknown instead 'noval' 2021-07-22 13:06:54 +02:00
Fabio Di Stasio d1d8592f79 build: downgrade to ss2-promise 0.2.0 due build problems 2021-07-22 11:34:21 +02:00
Fabio Di Stasio 1f828f69a0
Merge pull request #87 from Fabio286/new-tab-system
New tab system
2021-07-22 10:57:43 +02:00
Fabio Di Stasio adc5477673 feat: option to restore session on startup 2021-07-22 10:41:06 +02:00
Fabio Di Stasio 1e543aa6b0 fix: reload twice after element rename 2021-07-21 18:50:22 +02:00
Fabio Di Stasio c41e059b0b fix: wrong loaded schema change 2021-07-21 17:56:55 +02:00
Fabio Di Stasio e6ef5ffa56 refactor: improved the way how schema is passed to client classes 2021-07-21 14:40:29 +02:00
Fabio Di Stasio d67d122270 Merge branch 'master' of https://github.com/Fabio286/antares into new-tab-system 2021-07-21 09:11:06 +02:00
Fabio Di Stasio b837e2fc68
Merge pull request #86 from Fabio286/dependabot/npm_and_yarn/ssh2-promise-1.0.0
build(deps): bump ssh2-promise from 0.1.9 to 1.0.0
2021-07-21 09:10:35 +02:00
Fabio Di Stasio a73a2f483e feat: option to select schema in query tabs 2021-07-20 19:19:54 +02:00
Fabio Di Stasio 0a9983d30d feat: new function, procedure and scheduler tabs 2021-07-20 16:59:59 +02:00
Fabio Di Stasio 58b91ebfe0 feat: new trigger function tabs 2021-07-19 22:38:56 +02:00
Fabio Di Stasio e78ca2417e fix(UI): multiple trigger tabs open on single click on explore bar 2021-07-19 11:28:11 +02:00
Fabio Di Stasio e1855a262d feat(UI): empty workspace view 2021-07-18 16:10:36 +02:00
Fabio Di Stasio 6b725b1d40 fix: issues with trigger temp tabs 2021-07-17 16:09:57 +02:00
Fabio Di Stasio f6faad98f8 feat: new trigger setting tabs 2021-07-17 13:10:54 +02:00
Fabio Di Stasio 320aa8ba04 feat: close tabs if element deleted 2021-07-17 10:46:24 +02:00
Fabio Di Stasio 9f0280b991 Merge branch 'master' of https://github.com/Fabio286/antares into new-tab-system 2021-07-17 10:00:46 +02:00
Fabio Di Stasio 04fa320820 fix: clear empty indexes and foreign keys on confirm respective modals 2021-07-17 09:59:45 +02:00
Fabio Di Stasio f7c3aa883d fix: tab won't open after table or view creation 2021-07-17 09:57:49 +02:00
Fabio Di Stasio f7a74df009 feat: new unsaved change reminder 2021-07-16 23:24:55 +02:00
Fabio Di Stasio 003c02b1fb feat: new view setting tabs 2021-07-16 18:52:18 +02:00
Fabio Di Stasio ef21ea7448 feat: rename tabs if element is renamed 2021-07-16 17:27:37 +02:00
Fabio Di Stasio 525c964c62 fix: enabled copy context on non editable rows 2021-07-16 17:09:02 +02:00
Fabio Di Stasio 7845e3e501 feat(UI): new table settings tabs 2021-07-15 19:51:18 +02:00
Fabio Di Stasio 0c29e0d566 perf(UI): improvements in setting bar connections sort 2021-07-15 18:31:44 +02:00
Fabio Di Stasio d38097d056 feat(UI): sortable tabs 2021-07-14 20:30:54 +02:00
Fabio Di Stasio c87b8dc738 refactor: passing schema from table context options 2021-07-14 18:15:13 +02:00
Fabio Di Stasio ed6e7fa72d refactor(UI): improved breadcrumbs and tabs 2021-07-14 16:10:34 +02:00
Fabio Di Stasio f0fa7c81b7 fix(UI): table icon in view data tabs 2021-07-14 12:33:26 +02:00
Fabio Di Stasio 5bb4e496f2 feat(MySQL): improved schema detection for queries 2021-07-14 12:31:37 +02:00
Fabio Di Stasio 01057332b0 feat(UI): display schema in data tabs 2021-07-14 12:31:12 +02:00
Fabio Di Stasio ab382dfbcd feat: new data tabs 2021-07-13 19:23:02 +02:00
Fabio Di Stasio 88c4cdc8e2 feat(UI): close temp data tabs 2021-07-13 16:53:47 +02:00
Fabio Di Stasio 15ff211a41 Merge branch 'master' of https://github.com/Fabio286/antares into new-tab-system 2021-07-13 09:19:26 +02:00
Fabio Di Stasio 5c855a520a fix: solved a vulnerability in table names 2021-07-13 09:17:22 +02:00
Fabio Di Stasio 7488bc7a17 refactor(core): better way to obtain schema 2021-07-13 09:09:25 +02:00
dependabot[bot] fd85cf43a2
build(deps): bump ssh2-promise from 0.1.9 to 1.0.0
Bumps [ssh2-promise](https://github.com/sanketbajoria/ssh2-promise) from 0.1.9 to 1.0.0.
- [Release notes](https://github.com/sanketbajoria/ssh2-promise/releases)
- [Commits](https://github.com/sanketbajoria/ssh2-promise/commits/1.0.0)

---
updated-dependencies:
- dependency-name: ssh2-promise
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-12 19:05:27 +00:00
Fabio Di Stasio a87079cd17 feat(UI): temporary table data tabs 2021-07-12 19:18:29 +02:00
Fabio Di Stasio 14d5842056 chore(release): 0.2.1 2021-07-09 16:07:07 +02:00
Fabio Di Stasio f19f9e23a2 refactor(UI): changed buttons icon position 2021-07-09 15:51:02 +02:00
Fabio Di Stasio 0252a064d9 feat(UI): contextual menu shortcuts to create new elements on folders 2021-07-09 15:12:16 +02:00
Fabio Di Stasio 439356a019 feat: context menu option to duplicate connections 2021-07-09 11:18:40 +02:00
Fabio Di Stasio c6897af22d feat(MySQL): possibility to set a default schema in connection parameters 2021-07-09 10:26:16 +02:00
Fabio Di Stasio 7e40dbfba3
Merge pull request #84 from Fabio286/new-commection-mode
feat: new connection mode
2021-07-08 18:50:23 +02:00
Fabio Di Stasio 27a153ef43 refactor(UI): improved new connection panels appearence 2021-07-08 18:43:31 +02:00
Fabio Di Stasio 56fcc2650b fix: clear corrupted configurations to avoid exceptions 2021-07-08 18:42:19 +02:00
Fabio Di Stasio 9622dbec6b chore: update rules 2021-07-08 18:41:17 +02:00
Fabio Di Stasio a0ab63bdb5 fix(UI): connection tab indicator when scrolling 2021-07-08 17:58:43 +02:00
Fabio Di Stasio 8cd76e711c feat(UI): new connection add panel 2021-07-08 17:43:33 +02:00
Fabio Di Stasio 9af71a6e34 feat(UI): new connection edit panel 2021-07-08 15:06:20 +02:00
Fabio Di Stasio e7b3c28826 chore: update README.md 2021-07-07 12:59:27 +02:00
Fabio Di Stasio 7570b0add8 fix: avoid to trigger schema loading multiple times 2021-07-06 09:36:35 +02:00
Christian Ratz 1801bef019
feat: SSH Tunnel functionality (#81)
* added ssh-tunnel-functionality for mysql-connections

* remove autoformat-stuff

* added identity for using ssh-key

* added identity to mysqlclient to use sshkey

* removed debug console.log

* added ssh-tunnel-functionality for postgresqlclient

* changed naming to sshKey for sshKey-input

* refactoring code

* fix lint

* set dbConfig.ssl to null initially
2021-07-05 09:30:52 +02:00
Fabio Di Stasio 0db5ebd7bf chore: update README logo 2021-07-03 13:47:37 +02:00
Fabio Di Stasio 5c21b67b3d chore(release): 0.2.0 2021-07-03 12:29:13 +02:00
Fabio Di Stasio 08d5b1b329 feat: contextual option to duplicate tables 2021-07-03 12:27:50 +02:00
Fabio Di Stasio 61a42d51f5 fix(UI): contextual sub-menu alignment when close to the lower edge of the window 2021-07-03 12:01:19 +02:00
Fabio Di Stasio d96907ca2d fix(PostgreSQL): error opening setting tab for some stored routines 2021-07-03 11:39:57 +02:00
Fabio Di Stasio 75bbd5f66e feat(PostgreSQL): trigger functions support 2021-07-03 11:29:14 +02:00
Fabio Di Stasio faa07a077c fix: fields default not correctly set in table filler 2021-07-01 19:18:57 +02:00
Fabio Di Stasio 7ca69e51ae refactor(UI): round corners to editor autocomplete 2021-06-30 19:43:30 +02:00
Fabio Di Stasio d868c772b9 feat(UI): context option to copy cell or row value 2021-06-30 19:27:24 +02:00
Fabio Di Stasio a69bdeb20d feat(UI): resizer border mouse hover animation 2021-06-30 09:49:32 +02:00
Fabio Di Stasio 51db2795bb refactor(UI): minor UI improvements 2021-06-29 23:31:18 +02:00
Fabio Di Stasio 2d278aa14e fix: rows loses internal id after export 2021-06-29 23:23:11 +02:00
Fabio Di Stasio f74bca7bb4 perf: improved contextual menu appearance 2021-06-29 18:22:40 +02:00
Fabio Di Stasio 978a7c5f5b feat(UI): active tab animation 2021-06-28 18:34:39 +02:00
Fabio Di Stasio 0110756204 fix(UI): editor blinking on first connection with a dark theme 2021-06-27 12:28:55 +02:00
Fabio Di Stasio 7df0cf8389 feat(PostgreSQL): triggers creation 2021-06-26 16:36:05 +02:00
Fabio Di Stasio 3aef7e953e fix: vulnerability in server error toast messages 2021-06-25 09:35:20 +02:00
Fabio Di Stasio a975df38dd fix: unhandled exception in connection test 2021-06-25 09:29:59 +02:00
Fabio Di Stasio a0a025e450 perf(UI): increased application border-radius 2021-06-24 21:49:46 +02:00
Fabio Di Stasio 7cc5e7b67f chore(release): 0.1.13 2021-06-19 13:04:11 +02:00
Fabio Di Stasio e2ebb04a90 feat(UI): ability to manually insert page number in DATA tabs, closes #65 2021-06-19 12:13:09 +02:00
Fabio Di Stasio e579f37438 feat(UI): option to change query editors font size, closes #77 2021-06-19 11:54:15 +02:00
Fabio Di Stasio 3829b94bf7 refactor: solved deprecation warning for url.format() 2021-06-18 21:08:21 +02:00
Fabio Di Stasio 5c8ee66f43 feat(PostgreSQL): alter trigger support 2021-06-17 22:01:18 +02:00
Fabio Di Stasio b77e77f3bb chore: update dependencies 2021-06-14 09:11:37 +02:00
Fabio Di Stasio 1d5614278c ci: moved to node 14 in build actions 2021-06-14 09:11:23 +02:00
Fabio Di Stasio 8a20befd09 fix(UI): various fixes in displaying content with small window size 2021-06-13 11:16:21 +02:00
Fabio Di Stasio 4133fc452f fix(MySQL): pool connections not released after MySQL errors, causing endless load animation 2021-06-11 15:02:45 +02:00
Fabio Di Stasio 690a4541f9 perf: remove comments from queries before execution 2021-06-11 14:32:51 +02:00
Fabio Di Stasio 71910ca5c8 chore(release): 0.1.12 2021-06-09 09:03:18 +02:00
Fabio Di Stasio cce5adbac7 feat(PostgreSQL): trigger rename and delete 2021-06-08 09:12:43 +02:00
Fabio Di Stasio e6d67fcb0c
Update README.md 2021-06-07 23:03:08 +02:00
Fabio Di Stasio e83b80afc9 chore: update README.md 2021-06-05 12:27:20 +02:00
Fabio Di Stasio 8742fa10f0 fix: internal exceptions 2021-06-05 10:15:44 +02:00
Fabio Di Stasio ab54eb086f chore: update dependencies 2021-06-05 10:15:08 +02:00
Fabio Di Stasio 308f69f12e chore: update README.md 2021-06-04 14:01:46 +02:00
Fabio Di Stasio 2f30bafa33
Merge pull request #74 from digitalgopnik/master
feat: added translation for de-DE
2021-06-04 10:39:22 +02:00
Christian 1716077182 added translation for de-DE 2021-06-04 09:37:02 +02:00
Fabio Di Stasio 5562e73e75 fix: page offset not reset when selected table changes 2021-06-03 11:02:24 +02:00
Fabio Di Stasio 8a7cc2a14f fix(UI): unable to browse view's result pages 2021-06-03 10:57:57 +02:00
Fabio Di Stasio 9ca059d979 fix(MySQL): view's data tab doesn't work with some views, closes #71 2021-06-03 10:54:59 +02:00
Fabio Di Stasio c9ccf786cd chore(release): 0.1.11 2021-06-02 15:47:12 +02:00
fabio286 5e9c88a7fd fix(UI): prevent canc key to trigger delete modal when editing a row 2021-06-02 12:32:12 +02:00
fabio286 e0e6483d1f build: update dependencies 2021-06-02 12:13:43 +02:00
Fabio Di Stasio 66227569f4 fix: table row loses internal id after cell update 2021-06-02 11:58:34 +02:00
Fabio Di Stasio faa799c8ea fix(MySQL): missing schema altering tables in some conditions 2021-05-31 17:07:48 +02:00
Fabio Di Stasio acc1eeb094 fix: empty offset in cell update queries 2021-05-31 14:27:02 +02:00
Fabio Di Stasio 865dad80df
chore: update README.md 2021-05-30 10:54:58 +02:00
Fabio Di Stasio f502620779 chore(release): 0.1.10 2021-05-29 11:41:48 +02:00
Fabio Di Stasio f61d7eeaf4 feat: key shortcuts to change DATA tab page 2021-05-29 11:26:23 +02:00
Fabio Di Stasio e71c7568c0 feat: option to set DATA tab page size 2021-05-29 11:04:02 +02:00
Fabio Di Stasio 79f033e524 feat: prev/next buttons to browse the results pages of data tab 2021-05-27 22:13:59 +02:00
Fabio Di Stasio 310cfaa3c2 fix(MySQL): wrong schema in view data tab select, closes #71 2021-05-26 17:44:33 +02:00
Fabio Di Stasio 6f93e1f9ab chore: AUR badge on README.md 2021-05-26 13:19:48 +02:00
Fabio Di Stasio 04bdd085a5 fix: wrong detection of field default expressions in some cases 2021-05-25 16:54:13 +02:00
Fabio Di Stasio c568acae14 build: update dependencies 2021-05-25 10:09:09 +02:00
Fabio Di Stasio 7a46a119d8 chore(release): 0.1.9 2021-05-23 11:35:54 +02:00
Fabio Di Stasio f1636f1528 fix(MySQL): can't access tables having UNIQUE KEY, closes #69 2021-05-23 11:12:09 +02:00
Fabio Di Stasio f839d5cd3c chore: Twitter link in about tab 2021-05-23 10:19:56 +02:00
Fabio Di Stasio 8f4f1d393c
chore: update README.md 2021-05-22 17:33:03 +02:00
Fabio Di Stasio ab17c6d4bf
chore: update README.md 2021-05-22 17:26:32 +02:00
Fabio Di Stasio b4b2f3d0cf chore(release): 0.1.8 2021-05-22 16:25:52 +02:00
Fabio Di Stasio 7a766f04e6 perf: improved the way how field default value are handled 2021-05-22 16:24:19 +02:00
Fabio Di Stasio f6b77d1243 build: update dependencies 2021-05-22 16:12:08 +02:00
Fabio Di Stasio 840241c3cc refactor: better description in foreign key value select 2021-05-20 15:07:51 +02:00
Fabio Di Stasio 0f10c9e824 fix: internal id not removed before row update 2021-05-20 12:45:49 +02:00
Fabio Di Stasio 1e37f2a96f fix: unable to add new ENUM fields 2021-05-20 12:38:05 +02:00
Fabio Di Stasio 0d6137195d fix: unable to delete table rows 2021-05-19 16:55:38 +02:00
Fabio Di Stasio d26f168250 build: update build script 2021-05-17 19:08:36 +02:00
Fabio Di Stasio 5efcad4d3f chore(release): 0.1.7 2021-05-16 21:08:52 +02:00
Fabio Di Stasio 0a872e7023 build: separate build configurations 2021-05-16 21:03:04 +02:00
Fabio Di Stasio 0e425a9c6d build: removed linux arm64 build from build process 2021-05-16 19:50:06 +02:00
Fabio Di Stasio 434711a360 perf(MySQL): improved connections pool handling 2021-05-15 21:47:30 +02:00
fabio286 854472c7a3 fix: row loses internal id after cell update 2021-05-15 19:33:31 +02:00
Fabio Di Stasio 9a7cd90d5c build: arm mac (apple silicon) build configuration 2021-05-14 22:24:50 +02:00
fabio286 026400d242 build: arm linux build configuration 2021-05-14 18:59:58 +02:00
Fabio Di Stasio 4bd8cbbf6c build: moved to sass from node-sass 2021-05-14 17:27:56 +02:00
Fabio Di Stasio 1382bc9300
Merge pull request #64 from Fabio286/dependabot/npm_and_yarn/pgsql-ast-parser-8.1.1
build(deps): bump pgsql-ast-parser from 7.2.1 to 8.1.1
2021-05-14 17:21:10 +02:00
Fabio Di Stasio ae103e5477 perf(core): increased connection pool size to improve performance 2021-05-14 17:17:37 +02:00
Fabio Di Stasio 6b0b8b19d7 fix(MySQL): connection loses schema in some conditions 2021-05-14 17:02:27 +02:00
Fabio Di Stasio 475397ca34 fix: issue with ENUM and SET fields on table filler modal 2021-05-13 20:46:44 +02:00
Fabio Di Stasio 7a62131cc7 fix: issue with ENUM and SET length when creating a new field 2021-05-13 15:45:54 +02:00
Fabio Di Stasio c7663be338 fix: multiple row select on sorted tables not work properly 2021-05-11 18:32:11 +02:00
Fabio Di Stasio 496490b14a build: update dependencies and build config 2021-05-11 12:00:22 +02:00
dependabot[bot] 672573d8c2
build(deps): bump pgsql-ast-parser from 7.2.1 to 8.1.1
Bumps [pgsql-ast-parser](https://github.com/oguimbal/pgsql-ast-parser) from 7.2.1 to 8.1.1.
- [Release notes](https://github.com/oguimbal/pgsql-ast-parser/releases)
- [Changelog](https://github.com/oguimbal/pgsql-ast-parser/blob/master/changelog.md)
- [Commits](https://github.com/oguimbal/pgsql-ast-parser/compare/7.2.1...8.1.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-10 06:16:49 +00:00
Fabio Di Stasio d923453919 chore(release): 0.1.6 2021-05-08 17:33:25 +02:00
Fabio Di Stasio 0435279604 build: temporarily disabled Windows builds due issues with dependencies 2021-05-08 17:22:45 +02:00
Fabio Di Stasio 79cef61fea build: revert to electron-builder@22.9.1 due Windows build issues 2021-05-08 17:13:24 +02:00
Fabio Di Stasio dec334737f chore: update dependencies 2021-05-08 16:41:18 +02:00
Fabio Di Stasio 84c3692e95 chore: icons for appx build 2021-05-08 16:04:37 +02:00
Fabio Di Stasio 5dc0b0bea4 perf: italian translation updated 2021-05-07 12:11:55 +02:00
Fabio Di Stasio 19d16e46bb build: update dependencies 2021-05-06 22:55:10 +02:00
Fabio Di Stasio 3baf6fa173 fix: better detection and handling of field default type 2021-05-06 22:21:42 +02:00
Fabio Di Stasio 29e2d92b5b fix: no quotes around strings in field default custom value 2021-05-05 17:13:12 +02:00
Fabio Di Stasio bebba64d06 feat(MySQL): ENUM and SET fields support, closes #61 2021-05-04 21:50:41 +02:00
Fabio Di Stasio 9dfe7cca22 fix(UI): data type figure twice on type select 2021-05-03 22:55:39 +02:00
fabio286 35ef070725 fix: support to mDNS/zeroconf in snap build, closes #58 2021-05-01 12:16:57 +02:00
Fabio Di Stasio 370ad6a536 chore(release): 0.1.5 2021-04-30 17:37:04 +02:00
Fabio Di Stasio 5822b3df43 perf(UI): new application icon 2021-04-30 14:14:01 +02:00
Fabio Di Stasio 5208ec171b fix(MySQL): multiple queries non properly split in some cases 2021-04-29 21:03:32 +02:00
Fabio Di Stasio 6e332da425 chore: update issue template 2021-04-28 16:56:04 +02:00
Fabio Di Stasio bf3367b41d build: minor changes to build and dependencies 2021-04-28 12:11:39 +02:00
Fabio Di Stasio ecfb732c26 fix: % character not properly escaped, closes #60 2021-04-28 12:10:43 +02:00
Fabio Di Stasio fd4f032a6f build: mssql temporarily removed from dependencies 2021-04-28 11:55:29 +02:00
Fabio Di Stasio 1b09909126 fix: semicolon inside strings breaks queries, closes #59 2021-04-28 11:50:07 +02:00
Fabio Di Stasio 04cd806954 chore: update README.md 2021-04-26 10:16:55 +02:00
Fabio Di Stasio 773cb36ca1
Merge pull request #57 from Fabio286/dependabot/npm_and_yarn/electron-store-8.0.0
build(deps): bump electron-store from 7.0.3 to 8.0.0
2021-04-26 10:12:32 +02:00
Fabio Di Stasio ccacd3e2c3
Merge pull request #56 from Fabio286/dependabot/npm_and_yarn/electron-12.0.5
build(deps-dev): bump electron from 11.4.3 to 12.0.5
2021-04-26 10:08:32 +02:00
Fabio Di Stasio 15948b30c9 refactor: modifications for electron 12 support 2021-04-26 10:07:47 +02:00
Fabio Di Stasio 3dcb5d4f14
Merge pull request #55 from Fabio286/dependabot/npm_and_yarn/stylelint-config-standard-22.0.0
build(deps-dev): bump stylelint-config-standard from 21.0.0 to 22.0.0
2021-04-26 08:59:35 +02:00
dependabot[bot] 64d93d7c40
build(deps): bump electron-store from 7.0.3 to 8.0.0
Bumps [electron-store](https://github.com/sindresorhus/electron-store) from 7.0.3 to 8.0.0.
- [Release notes](https://github.com/sindresorhus/electron-store/releases)
- [Commits](https://github.com/sindresorhus/electron-store/compare/v7.0.3...v8.0.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-26 06:26:31 +00:00
dependabot[bot] 2d85295093
build(deps-dev): bump electron from 11.4.3 to 12.0.5
Bumps [electron](https://github.com/electron/electron) from 11.4.3 to 12.0.5.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/master/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v11.4.3...v12.0.5)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-26 06:25:55 +00:00
dependabot[bot] cd58e2d8ca
build(deps-dev): bump stylelint-config-standard from 21.0.0 to 22.0.0
Bumps [stylelint-config-standard](https://github.com/stylelint/stylelint-config-standard) from 21.0.0 to 22.0.0.
- [Release notes](https://github.com/stylelint/stylelint-config-standard/releases)
- [Changelog](https://github.com/stylelint/stylelint-config-standard/blob/master/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint-config-standard/compare/21.0.0...22.0.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-26 06:25:16 +00:00
Fabio Di Stasio d87495822e
Merge pull request #54 from daeleduardo/master
feat: portugues (Brasil) translation
2021-04-25 11:44:55 +02:00
Daniel Aguiar 8720bcdad6 New Translation: Portugues (Brasil) 2021-04-25 03:53:21 -03:00
Fabio Di Stasio 1df57dc705 chore(release): 0.1.4 2021-04-22 15:18:07 +02:00
Fabio Di Stasio 86240fb53c refactor(PostgreSQL): preparing code to support triggers 2021-04-22 15:15:08 +02:00
Fabio Di Stasio 1d363f755e feat: query results export 2021-04-22 15:08:22 +02:00
Fabio Di Stasio 0d77aee3eb refactor: Improved pulse animation code 2021-04-22 14:24:34 +02:00
Fabio Di Stasio a41cf1ab56 fix: wrong changelog in some cases 2021-04-22 11:35:59 +02:00
Fabio286 5ceddb8e00 perf(UI): improved connection status indicator 2021-04-21 16:41:42 +02:00
Fabio Di Stasio 16e17b39b6 feat(UI): ctrl+s shortcut to save changes 2021-04-20 17:39:15 +02:00
Fabio Di Stasio 20cba6ee9b feat(UI): canc press to delete selected rows 2021-04-20 16:30:10 +02:00
Fabio Di Stasio 9ffd443a66 feat(UI): format and clear queries 2021-04-19 19:15:06 +02:00
Fabio Di Stasio f82dbd24dc fix: launch from shortcut of procedures or functions with parameters without name dont works 2021-04-19 15:40:25 +02:00
Fabio Di Stasio 6eb2977568 fix(UI): data type not listed in selection if not present in global types 2021-04-19 11:07:29 +02:00
Fabio Di Stasio cafb65560a chore: update README.md 2021-04-17 12:28:55 +02:00
Fabio Di Stasio 532d963019 chore: update README.md 2021-04-17 11:28:02 +02:00
Fabio Di Stasio 1b0a63ff31 chore(release): 0.1.3 2021-04-17 10:36:07 +02:00
Fabio Di Stasio c22187c305 perf(UI): improved table fields suggestion in query editor 2021-04-17 10:33:15 +02:00
Fabio Di Stasio dcccb544f9 fix(MySQL): invalid JavaScript datetime values not shown 2021-04-16 18:48:56 +02:00
Fabio Di Stasio 7d2ace9456 fix: field apparently loses index or foreign key on rename in table editor 2021-04-16 17:42:16 +02:00
Fabio Di Stasio 2584c9b9c2 chore: replaced link for donations with Treedom 2021-04-15 14:55:37 +02:00
Fabio Di Stasio a6b75ad0dc fix: approximate row count shown for results less than 1000 2021-04-15 10:13:55 +02:00
Fabio Di Stasio 90fd9db917 perf(MySQL): improved the way to get routine and functions parameters 2021-04-14 18:06:20 +02:00
Fabio Di Stasio c0f54b9514 build: update dependencies 2021-04-14 10:42:00 +02:00
Fabio Di Stasio cd31413256 feat(PostgreSQL): functions management 2021-04-13 18:05:03 +02:00
Fabio Di Stasio b33199ea59 feat(PostgreSQL): procedure language select 2021-04-12 18:46:35 +02:00
Fabio Di Stasio dea5ec7513 chore(release): 0.1.2 2021-04-11 12:39:56 +02:00
Fabio Di Stasio be816e8588 perf(UI): improved setting modal rendering 2021-04-11 12:38:50 +02:00
Fabio Di Stasio 1e938adc5d feat: in-app last release changelog 2021-04-11 12:35:16 +02:00
Fabio Di Stasio 8735a0c5f9 feat(PostgreSQL): edit timezone in cell editor 2021-04-11 10:55:22 +02:00
Fabio Di Stasio 3dde1c109e feat(PostgreSQL): procedures management 2021-04-10 20:38:46 +02:00
Fabio Di Stasio d0b3e1b1b8 feat(PostgreSQL): support of arrays in table settings 2021-04-09 19:31:41 +02:00
Fabio Di Stasio c20bff7bcb fix: deletion of rows from query results 2021-04-08 21:49:38 +02:00
Fabio Di Stasio 9f5ec0276c fix: no foreign key select when cell value is NULL, closes #50 2021-04-08 18:02:16 +02:00
Fabio Di Stasio 55932fe115 fix: cell edit doesn't properly use primary or unique index to update if both present, closes #51 2021-04-08 17:47:10 +02:00
Fabio Di Stasio d374372e20 fix: wrong datetime conversion when updating a row without an unique key 2021-04-07 15:05:11 +02:00
Fabio Di Stasio bb5f44681f fix(UI): white readonly inputs with dark theme 2021-04-07 09:20:11 +02:00
Fabio Di Stasio 49a4e1cb7b fix(PostgreSQL): issue with selected schema different than public 2021-04-06 12:48:40 +02:00
Fabio Di Stasio c2f76e490a chore(release): 0.1.1 2021-04-03 12:21:34 +02:00
Fabio Di Stasio e349dd5eab feat: scratchpad to save persistent notes 2021-04-03 12:17:40 +02:00
Fabio Di Stasio 280697698e feat(UI): light theme 2021-04-03 11:21:58 +02:00
Fabio Di Stasio 0783f8b57e chore: update README.md 2021-04-02 15:27:29 +02:00
Fabio Di Stasio c981244d7a fix(UI): editor theme preview not properly loaded in some cases 2021-04-01 15:26:49 +02:00
Fabio Di Stasio dcb135dd01 fix: hide update tab for Windows Store distributions 2021-04-01 14:12:49 +02:00
Fabio Di Stasio 99f7511c4d feat(PostgreSQL): views management 2021-03-31 16:54:06 +02:00
Fabio Di Stasio fe4c8e12b3 feat(PostgreSQL): foreign keys management 2021-03-31 15:57:23 +02:00
Fabio Di Stasio 21728a663d chore: update README.md 2021-03-31 10:59:19 +02:00
Fabio Di Stasio 9ca03f4625 feat(PostgreSQL): indexes management 2021-03-30 19:07:04 +02:00
Fabio Di Stasio affb7288b0 chore: appx logos 2021-03-30 19:06:48 +02:00
Fabio Di Stasio 614e0d3275 feat(PostgreSQL): unique keys management 2021-03-29 20:18:44 +02:00
Fabio Di Stasio feef5e30ee feat(PostgreSQL): tables addition 2021-03-28 11:55:15 +02:00
Fabio Di Stasio 82c25711b6 ci: moving to GitHub actions 2021-03-26 18:03:44 +01:00
Fabio Di Stasio 2ca2988832 chore: appx build configuration 2021-03-26 16:52:49 +01:00
Fabio Di Stasio e3f259c6e8 feat(PostgreSQL): table fields edit 2021-03-25 18:33:29 +01:00
Fabio Di Stasio e7401cc96e fix: fields of ref. table not automatically loaded in foreign keys modal 2021-03-22 18:04:19 +01:00
Fabio Di Stasio 13b9840f3d chore: update README.md 2021-03-21 14:39:11 +01:00
Fabio Di Stasio d20414b692 chore(release): 0.1.0 2021-03-21 13:01:35 +01:00
Fabio Di Stasio 22a8c25717 fix: update or delete rows with more than one primary key 2021-03-21 13:00:27 +01:00
Fabio Di Stasio db47b4040a fix(PostgreSQL): issue getting foreign keys informations 2021-03-21 11:51:22 +01:00
Fabio Di Stasio e89911b185 fix: remove last char from datetime and time if is a dot 2021-03-20 16:29:56 +01:00
Fabio Di Stasio fccfe92453 fix(PostgreSQL): various issues in query results 2021-03-19 18:49:26 +01:00
Fabio Di Stasio d465e18dba feat(PostgreSQL): support to microseconds 2021-03-18 15:56:52 +01:00
Fabio Di Stasio ffb1712a59 feat(UI): support to boolean fields 2021-03-18 12:59:46 +01:00
Fabio Di Stasio 9f6a183d9b fix(PostgreSQL): single quote escape 2021-03-18 12:30:06 +01:00
Fabio Di Stasio 1f80a64fe1 feat(PostgreSQL): insert and edit blob fields 2021-03-18 11:09:50 +01:00
Fabio Di Stasio fc651149b9 feat(PostgreSQL): edit array and text search fields 2021-03-17 18:06:17 +01:00
Fabio Di Stasio 964570247f feat(PostgreSQL): database in connection parameters 2021-03-17 16:51:26 +01:00
Fabio Di Stasio 8a6c59f7ce fix: schema content not loaded if selected with right click 2021-03-17 11:57:47 +01:00
Fabio Di Stasio 4d844fe2c9 refactor: rename database to schema 2021-03-17 11:15:14 +01:00
Fabio Di Stasio d892fa6fb3 feat(PostgreSQL): partial postgre implementation 2021-03-16 18:42:03 +01:00
Fabio Di Stasio 8c9e4f6e96 chore: update issue templates 2021-03-16 15:55:11 +01:00
Fabio Di Stasio 966ca60c89
chore: update README.md 2021-03-16 15:51:21 +01:00
Fabio Di Stasio 9bbe218f90 chore: update README.md 2021-03-14 15:38:55 +01:00
Fabio Di Stasio a1c6be372b fix(MySQL): handle NEWDECIMAL data type 2021-03-14 15:04:20 +01:00
Fabio Di Stasio 7d0c929fb8 chore(release): 0.0.20 2021-03-13 19:30:57 +01:00
Fabio Di Stasio 25d72e3952 fix(UI): row mark not applied on first click 2021-03-10 15:55:34 +01:00
Fabio Di Stasio b232a3bb5f feat(UI): loader layers on query and data tabs 2021-03-09 19:14:02 +01:00
Fabio Di Stasio e9a26c1bc0 fix(UI): avoid unnecessary updates when cell content not change 2021-03-09 18:08:57 +01:00
Fabio Di Stasio 76c5c0c680 fix(UI): table rows lose internal id after an update 2021-03-09 18:07:48 +01:00
Fabio Di Stasio ddfb713124 feat(UI): row markers in sql editors 2021-03-08 18:11:00 +01:00
Fabio Di Stasio 0081a4167c refactor: moving from keytar to local storage due issues on Linux 2021-03-08 17:35:43 +01:00
fabio286 239cb4488f ci: snap store config 2021-03-08 12:40:56 +01:00
Fabio Di Stasio fb5adbe676 chore: update package.json to support Windows portable build 2021-03-06 17:29:00 +01:00
fabio286 9cd51c8d8b chore: update package.json 2021-03-06 17:11:03 +01:00
Fabio Di Stasio 8dfaa3b7be chore(release): 0.0.19 2021-03-05 17:29:12 +01:00
Fabio Di Stasio 5d7efa75b7 fix(UI): modal processes list does not regain size on window resize 2021-03-05 17:23:13 +01:00
Fabio Di Stasio 4862d51fba fix(UI): wrong height in scrolling tables in some cases 2021-03-05 17:10:52 +01:00
Fabio Di Stasio 07f60c3917 feat(UI): modal that shows process query 2021-03-04 19:34:18 +01:00
Fabio Di Stasio 049143d143 feat: processes list tool 2021-03-03 19:31:05 +01:00
Fabio Di Stasio db4430609e feat(MySQL): support to new mysql8 authentication, closes #45 2021-03-02 12:03:01 +01:00
Fabio Di Stasio 71b4310117 feat: context menu shortcut to set NULL a table cell 2021-02-28 21:45:38 +01:00
Fabio Di Stasio 201fad9265 fix(MySQL): wrong TIMESTAMP fields length 2021-02-27 18:30:34 +01:00
Fabio Di Stasio 45351faeae feat(UI): esc key to cancel cell edit 2021-02-27 18:29:47 +01:00
Fabio Di Stasio b4ead6992c perf(UI): improvements of date time inputs 2021-02-27 17:52:54 +01:00
Fabio Di Stasio b1ea32b680 feat: setting to enable beta updates (future use) 2021-02-27 17:28:01 +01:00
Fabio Di Stasio 39ca1974bc perf(UI): big performance improvement in tables rendering 2021-02-26 22:31:05 +01:00
Fabio Di Stasio 777b73fa6f feat(UI): query duration calc 2021-02-26 18:45:00 +01:00
Fabio Di Stasio 4494e637f7 chore(release): 0.0.18 2021-02-25 19:09:02 +01:00
Fabio Di Stasio 219da0aba4 feat(UI): run procedures/functions from sidebar context menu 2021-02-25 17:43:23 +01:00
Fabio Di Stasio 7e8167154f feat(UI): run routines/functions from settings tab 2021-02-25 12:39:50 +01:00
Fabio Di Stasio 3aa2159a1a fix(MySQL): issue obtaining routine/function parameters 2021-02-24 19:45:27 +01:00
Fabio Di Stasio 76d92cd106 fix: issue managing function/routine parameters 2021-02-24 12:46:31 +01:00
Fabio Di Stasio c8545a250b fix(UI): elements from previous selected schemas in query suggestions 2021-02-22 19:14:02 +01:00
Fabio Di Stasio dbab06fcb8 fix(UI): data tab opened when non-table element is selected 2021-02-22 11:10:04 +01:00
Fabio Di Stasio b54fefbf25 feat(UI): context menu for input and textarea tags 2021-02-21 21:24:25 +01:00
Fabio Di Stasio 9a1bf32128 feat(UI): html, xml, json, svg and yaml editor modes in long text fields edit 2021-02-21 19:22:03 +01:00
fabio286 110b0b414c feat(UI): sticky schema names in explore bar 2021-02-20 18:55:08 +01:00
Fabio Di Stasio 2f58007af4 feat(UI): search filter in explore bar 2021-02-20 11:55:34 +01:00
Fabio Di Stasio 9b60bfff8d build: dropped use of lodash 2021-02-19 17:41:33 +01:00
Fabio Di Stasio 3b37b7432e fix: disabled sort for fields without a name property 2021-02-18 18:12:36 +01:00
Fabio Di Stasio 7c4ca999ce fix: prevents F5 shortcut to run in non-selected workspaces 2021-02-18 18:01:12 +01:00
Fabio Di Stasio 94c4952319 fix: support of bit fields in table filler 2021-02-18 15:26:17 +01:00
Fabio Di Stasio 014257147e chore(release): 0.0.17 2021-02-17 18:50:45 +01:00
Fabio Di Stasio 970de4962b feat: support to fake data locales 2021-02-17 18:49:02 +01:00
Fabio Di Stasio b5a828309f fix(UI): file uploader in table filler 2021-02-17 14:47:15 +01:00
Fabio Di Stasio 5b21d17f3a fix(UI): no foreign key select editing query results 2021-02-17 14:17:50 +01:00
fabio286 2c6e35288f chore: update README.md 2021-02-17 09:13:50 +01:00
Fabio Di Stasio bcadac6e95
Merge pull request #44 from MrAnyx/master
feat: added french language
2021-02-17 09:04:38 +01:00
MrAnyx 18a93ef1aa Feat: Added french language 2021-02-16 20:35:19 +01:00
Fabio Di Stasio 6c62052b47 feat: min and max option for random floats and numbers 2021-02-16 19:13:20 +01:00
Fabio Di Stasio 9d5ebefdce fix: wrong date or time detection in field default 2021-02-15 09:58:43 +01:00
Fabio Di Stasio 34ebc6b72d chore: update README.md 2021-02-15 09:11:48 +01:00
Fabio Di Stasio 288ff4c1a1 fix: cut faker text based on field length 2021-02-14 18:25:57 +01:00
Fabio Di Stasio a176174b8d feat: fake table data generator 2021-02-13 18:45:16 +01:00
Fabio Di Stasio 0f69d1dbb7 fix(UI): wrong length for char fields on table header 2021-02-12 18:02:18 +01:00
Fabio Di Stasio 0386bbac50 refactor: number and float fields as separate types 2021-02-10 18:24:28 +01:00
Fabio Di Stasio b0576acdf6 perf(core): bulk inserts support 2021-02-08 11:46:57 +01:00
Fabio Di Stasio 9a190854fe fix(UI): better text on ssl file selectors 2021-02-08 09:36:44 +01:00
Fabio Di Stasio 2aace28e80 chore(release): 0.0.16 2021-02-06 12:41:42 +01:00
Fabio Di Stasio 02c03e3d26 feat: MySQL and MariaDB auto detection 2021-02-06 12:37:37 +01:00
Fabio Di Stasio a0d85520fb feat(UI): enanched file upload input 2021-02-05 19:37:35 +01:00
Fabio Di Stasio ede6fe81ce fix: edit bit fields 2021-02-04 09:20:52 +01:00
Fabio Di Stasio 4e72bb1587 feat: support to ssl connections 2021-02-03 21:53:24 +01:00
Fabio Di Stasio 15417e8a77 feat(UI): database version in app footer 2021-02-01 16:31:48 +01:00
Fabio Di Stasio 88ab7c5a62 feat(UI): resize query editor area 2021-01-31 13:03:25 +01:00
Fabio Di Stasio 5940b0b842 feat: edit rows from tables without a primary key 2021-01-30 14:58:12 +01:00
Fabio Di Stasio 574d493908 feat: delete rows from tables without a primary key 2021-01-28 18:33:29 +01:00
Fabio Di Stasio af96647603 refactor: minor UI improvements 2021-01-25 18:28:22 +01:00
Fabio Di Stasio ab70ff239e build: update dependencies 2021-01-25 09:29:36 +01:00
Fabio Di Stasio bacf458936 fix: compatibility with electron-store 7 2021-01-25 09:28:57 +01:00
Fabio Di Stasio 379d6c169a
Merge pull request #43 from Fabio286/dependabot/npm_and_yarn/electron-store-7.0.0
build(deps): bump electron-store from 6.0.1 to 7.0.0
2021-01-25 08:04:09 +01:00
dependabot[bot] 36352f8028
build(deps): bump electron-store from 6.0.1 to 7.0.0
Bumps [electron-store](https://github.com/sindresorhus/electron-store) from 6.0.1 to 7.0.0.
- [Release notes](https://github.com/sindresorhus/electron-store/releases)
- [Commits](https://github.com/sindresorhus/electron-store/compare/v6.0.1...v7.0.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-25 06:46:59 +00:00
Fabio Di Stasio 04fcaf2f6e chore(release): 0.0.15 2021-01-23 16:06:55 +01:00
Fabio Di Stasio 8b914446b0 chore: standard-version configuration for perf commits 2021-01-23 16:06:21 +01:00
Fabio Di Stasio a11bac504c perf: big performance improvement in database structure loading 2021-01-23 15:50:21 +01:00
Fabio Di Stasio b9ed8dd610 fix: error retriving dato of some schedulers 2021-01-22 18:46:33 +01:00
Fabio Di Stasio 1cf6485896 feat: loading animation in properties tabs 2021-01-22 18:27:45 +01:00
Fabio Di Stasio 4bc9bbfb34 perf: better fields type detection 2021-01-21 18:14:37 +01:00
Fabio Di Stasio 4923128236 fix: unable to call stored routines from query tabs 2021-01-19 19:14:11 +01:00
Fabio Di Stasio 8ff6e70145 feat: functions and schedulers in query suggestions 2021-01-18 18:41:28 +01:00
Fabio Di Stasio afcf1c86ed chore(release): 0.0.14 2021-01-16 11:47:57 +01:00
Fabio Di Stasio 0200ae4a0f chore: update README.md 2021-01-16 11:45:44 +01:00
Fabio Di Stasio dbe7b9dd23 feat: schedulers creation 2021-01-16 11:32:42 +01:00
Fabio Di Stasio ceab4ef243 feat: scheduler edit 2021-01-15 19:18:16 +01:00
Fabio Di Stasio 1e7d4ca347 feat: schedulers delete 2021-01-14 18:11:36 +01:00
Fabio Di Stasio c0a32c040e fix: removed internal row _id from exported files 2021-01-13 11:57:26 +01:00
Fabio Di Stasio f150508547 fix: error with empty functions/procedures 2021-01-11 18:56:51 +01:00
Fabio Di Stasio 49d71722e2 feat: functions creation 2021-01-11 09:55:13 +01:00
Fabio Di Stasio 59a50bc014 feat: functions delete 2021-01-10 18:40:19 +01:00
Fabio Di Stasio 41d75b127c feat: functions edit 2021-01-10 18:30:56 +01:00
Fabio Di Stasio 0cbea9d100 feat: export data tables to json or csv file 2021-01-08 21:55:03 +01:00
Fabio Di Stasio e351c903a8 feat: triggers and stored routines in sql suggestions 2021-01-07 18:22:49 +01:00
Fabio Di Stasio 6e55f27b23 chore: update README.md 2021-01-06 12:02:41 +01:00
Fabio Di Stasio 27fd9ec203 chore(release): 0.0.13 2021-01-06 12:00:30 +01:00
Fabio Di Stasio 0ec2710872 fix: wrong new stored routine modal icon 2021-01-06 12:00:09 +01:00
Fabio Di Stasio 3bcd02fc4e feat: stored routines creation 2021-01-06 11:57:49 +01:00
Fabio Di Stasio aa33850286 feat: stored routines delete 2021-01-06 11:07:55 +01:00
Fabio Di Stasio 82fdc0bcd7 feat: stored routines edit 2021-01-05 17:25:18 +01:00
Fabio Di Stasio d695c9f8d2 feat: triggers creation 2021-01-02 15:27:02 +01:00
Fabio Di Stasio b32132ad84 feat: triggers delete 2021-01-02 14:46:27 +01:00
Fabio Di Stasio 3126625461 feat: triggers edit 2020-12-31 19:55:02 +01:00
Fabio Di Stasio ab307f82b1 feat: select definer in view creation/edit 2020-12-29 10:35:46 +01:00
Fabio Di Stasio 0df2b836b1 fix: wrong or duplicate fields in some queries 2020-12-28 17:46:23 +01:00
Fabio Di Stasio 6611aad840 perf: improved performance getting database structure 2020-12-28 13:05:30 +01:00
Fabio Di Stasio 8c4aaec167 feat: views creation 2020-12-27 16:16:48 +01:00
Fabio Di Stasio b7053bdf80 fix: unable to rename views 2020-12-27 13:14:41 +01:00
Fabio Di Stasio b6b7be098a fix: breadcrumb not change after table rename 2020-12-27 13:08:13 +01:00
Fabio Di Stasio 56f2a27f00 feat: views edit 2020-12-26 15:37:34 +01:00
Fabio Di Stasio dcf469ebed feat: views deletion 2020-12-26 14:47:15 +01:00
Fabio Di Stasio d94b49febf feat: option to toggle line wrap mode 2020-12-24 15:33:51 +01:00
Fabio Di Stasio 3b4f1475df chore(release): 0.0.12 2020-12-24 10:58:03 +01:00
Fabio Di Stasio 155154b43d feat: option to toggle editor auto completion 2020-12-24 10:40:22 +01:00
Fabio Di Stasio a95b8d188c feat: option to change editor theme 2020-12-23 18:07:50 +01:00
Fabio Di Stasio cb1fce6f99 feat: query editor auto-completer for tables and columns 2020-12-22 22:31:31 +01:00
Fabio Di Stasio 0014f48079 refactor: migrated to ace from monaco-editor 2020-12-21 11:06:41 +01:00
Fabio Di Stasio fc35f271d7 feat: better security connections credentials storage 2020-12-18 18:44:32 +01:00
Fabio Di Stasio 65ad0e954d ci: update travis configuration 2020-12-18 17:38:06 +01:00
Fabio Di Stasio 8cafade8b1 chore(release): 0.0.11 2020-12-15 17:24:04 +01:00
Fabio Di Stasio d13b708377 chore: update REDME.md 2020-12-15 17:23:24 +01:00
Fabio Di Stasio 206597e5b8 feat: foreign keys management 2020-12-15 17:08:36 +01:00
Fabio Di Stasio c5458159d1 fix: unable to switch tabs when no table selected 2020-12-11 18:22:07 +01:00
Fabio Di Stasio 1476e899d1 feat: auto focus on first input in modals 2020-12-11 18:09:17 +01:00
Fabio Di Stasio 797ab70e7c chore: update links 2020-12-11 16:05:32 +01:00
Fabio Di Stasio f81312aeb0 feat: query tabs auto focus 2020-12-11 15:55:18 +01:00
Fabio Di Stasio 3ed5ea023e fix: some properties do not reset after fields changes 2020-12-11 12:57:24 +01:00
Fabio286 9291a7a7b4 fix: file field editor not show 2020-12-10 15:15:32 +01:00
Fabio Di Stasio 5cfdc9b92d fix: wrong field type detection 2020-12-09 18:22:46 +01:00
Fabio Di Stasio 15b08d7ea8 fix: data tab sort not maintained at refresh 2020-12-08 18:41:08 +01:00
Fabio Di Stasio acebe435ff fix: improved changes dedection in props tab 2020-12-07 19:11:29 +01:00
Fabio Di Stasio 5712b80022 feat: improved data table sorts 2020-12-07 17:51:48 +01:00
Fabio Di Stasio d38583262e fix: deletion of rows with non-numeric ID 2020-12-07 15:07:59 +01:00
Fabio Di Stasio e0e2131981 chore: update README.md 2020-12-04 11:43:27 +01:00
Fabio Di Stasio 7470bddd70 chore(release): 0.0.10 2020-12-04 11:20:51 +01:00
Fabio Di Stasio 33d1fa2290 feat: unsaved changes reminder 2020-12-04 11:19:16 +01:00
Fabio Di Stasio a4122b4eaa feat: drop and truncate tables 2020-12-03 16:15:10 +01:00
Fabio Di Stasio e6602d1bfa feat: create new tables 2020-12-03 13:00:54 +01:00
Fabio Di Stasio f8cf90a89e fix: index deletion issue 2020-12-01 17:29:16 +01:00
Fabio Di Stasio 41505bde65 feat: index management 2020-12-01 16:48:20 +01:00
Fabio Di Stasio 8ebc3bce92 chore: remove deprecated eslint-plugin-standard 2020-11-30 18:24:12 +01:00
Fabio Di Stasio 45e9cdc591
Merge pull request #40 from Fabio286/dependabot/npm_and_yarn/eslint-plugin-standard-5.0.0
build(deps-dev): bump eslint-plugin-standard from 4.1.0 to 5.0.0
2020-11-30 18:20:47 +01:00
Fabio Di Stasio 3cbfc0e148 chore: update README.md 2020-11-30 10:04:31 +01:00
Fabio Di Stasio a47e9e1b1f
Merge pull request #41 from EStarium/dependabot/npm_and_yarn/electron-11.0.2
build(deps-dev): bump electron from 10.1.6 to 11.0.2
2020-11-28 09:16:34 +01:00
Fabio Di Stasio e95d29c7c3 feat: approximate totals in table tata tab 2020-11-25 11:47:35 +01:00
Fabio Di Stasio e954f04828 refactor: improved structure for table options modal 2020-11-23 12:25:44 +01:00
dependabot[bot] 85c800f85b
build(deps-dev): bump electron from 10.1.6 to 11.0.2
Bumps [electron](https://github.com/electron/electron) from 10.1.6 to 11.0.2.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/master/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v10.1.6...v11.0.2)

Signed-off-by: dependabot[bot] <support@github.com>
2020-11-23 05:58:15 +00:00
dependabot[bot] e0482244d7
build(deps-dev): bump eslint-plugin-standard from 4.1.0 to 5.0.0
Bumps [eslint-plugin-standard](https://github.com/standard/eslint-plugin-standard) from 4.1.0 to 5.0.0.
- [Release notes](https://github.com/standard/eslint-plugin-standard/releases)
- [Commits](https://github.com/standard/eslint-plugin-standard/compare/v4.1.0...v5.0.0)

Signed-off-by: dependabot[bot] <support@github.com>
2020-11-23 05:47:45 +00:00
Fabio Di Stasio 27769f204f feat: display all keys in properties tab 2020-11-20 17:24:02 +01:00
Fabio Di Stasio dfb24c65f3 fix: sqlEscaper function wrong quotes conversion 2020-11-20 09:16:18 +01:00
Fabio Di Stasio 0fe71572a5 fix: some problems with properties and data tabs when changing database from sidebar 2020-11-18 18:21:15 +01:00
Fabio Di Stasio db577bfef0 ci: temporary removed Linux ARM build 2020-11-16 17:17:33 +01:00
Fabio Di Stasio 0805b96a75 feat: tables options edit 2020-11-16 17:16:39 +01:00
Fabio Di Stasio e49823f5c4 chore(release): 0.0.9 2020-11-13 17:55:43 +01:00
Fabio Di Stasio 76351005b4 chore: update dependencies 2020-11-13 17:49:09 +01:00
Fabio Di Stasio 3e5770f7de fix: zero fill field option was not saved 2020-11-13 16:37:52 +01:00
Fabio Di Stasio 242ddec744 feat: table fields deletion 2020-11-13 16:19:59 +01:00
Fabio Di Stasio 07654039b6 feat: table fields addition 2020-11-13 15:04:51 +01:00
Fabio Di Stasio 249926b8e0 feat: ability to edit table fields 2020-11-13 12:39:40 +01:00
Fabio Di Stasio ae47a978c1
Merge pull request #39 from EStarium/dependabot/npm_and_yarn/node-sass-5.0.0
build(deps-dev): bump node-sass from 4.14.1 to 5.0.0
2020-11-02 09:06:12 +01:00
dependabot[bot] bc53b0b332
build(deps-dev): bump node-sass from 4.14.1 to 5.0.0
Bumps [node-sass](https://github.com/sass/node-sass) from 4.14.1 to 5.0.0.
- [Release notes](https://github.com/sass/node-sass/releases)
- [Changelog](https://github.com/sass/node-sass/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sass/node-sass/compare/v4.14.1...v5.0.0)

Signed-off-by: dependabot[bot] <support@github.com>
2020-11-02 05:52:03 +00:00
Fabio d4175bcbda ci: ARM build configuration 2020-10-28 12:58:16 +01:00
Fabio c9ba2e5962 fix: F9 key shortcut refresh all query tabs instead of just selected one 2020-10-27 17:04:39 +01:00
Fabio 2e49d86677 refactor(core): improved how application gets query fields and keys 2020-10-27 16:41:00 +01:00
Fabio c393f86947 fix: issue with tabs horizontal scroll with wheel 2020-10-26 09:28:29 +01:00
Fabio a0b96aa06c chore: update dependencies 2020-10-26 09:26:25 +01:00
Fabio 2dc16e8ea8 feat(ui): display table properties tab 2020-10-24 14:47:35 +02:00
Fabio ee183886f6 fix(mysql): error getting foreign key list 2020-10-23 16:21:36 +02:00
Fabio cef6f681c8 refactor(ui): improve scss 2020-10-23 13:58:47 +02:00
Fabio ea9b489f5f fix: duplicate header fields on join result tables 2020-10-21 14:58:22 +02:00
Fabio 1658432fd3 feat: support to aliased tables 2020-10-20 13:30:36 +02:00
Fabio a8cd17748f fix: wrong result fields type and order with some queries 2020-10-20 13:12:12 +02:00
Fabio 580105e9f3 chore(release): 0.0.8 2020-10-18 10:29:37 +02:00
Fabio 0626f6f775 refactor(render): improved buttons style 2020-10-18 10:27:02 +02:00
Fabio 12f5e479f3 chore: update README.md 2020-10-17 17:01:38 +02:00
Fabio 04804b07c7 feat(render): field type and length on table header mouse hover 2020-10-17 10:12:40 +02:00
Fabio 053418ee90 refactor(mysql): moved specific queries inside MySQLClient class 2020-10-16 17:26:47 +02:00
Fabio 426628f268 feat: pie chart with table size in database explore bar 2020-10-15 17:22:19 +02:00
Fabio d4ecaf65e5 fix: context menu outside window when near bottom or right edge 2020-10-14 19:32:36 +02:00
Fabio 27d114beef refactor: remap of procedures, triggers and schedulers data objects 2020-10-14 19:00:13 +02:00
Fabio 936de04cd3 refactor: remap of table data object 2020-10-12 18:45:15 +02:00
Fabio b7c779eef6 fix: disable cell editor for not editable results 2020-10-10 16:54:00 +02:00
Fabio d560c384f5 fix: missing header for some query results 2020-10-09 22:44:05 +02:00
Fabio 9ecd88870d feat: data table autorefresh, closes #36 2020-10-08 18:51:08 +02:00
Fabio 07d1e82325 perf: improved refresh of data tables 2020-10-07 20:42:04 +02:00
Fabio ce25cd0a31 fix: no connection passed to connection's edit modal 2020-10-05 09:21:33 +02:00
Fabio Di Stasio 319d9beef1
Merge pull request #35 from EStarium/dependabot/npm_and_yarn/eslint-plugin-vue-7.0.1
build(deps-dev): bump eslint-plugin-vue from 6.2.2 to 7.0.1
2020-10-05 08:58:15 +02:00
dependabot[bot] 4272efe73b
build(deps-dev): bump eslint-plugin-vue from 6.2.2 to 7.0.1
Bumps [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) from 6.2.2 to 7.0.1.
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Commits](https://github.com/vuejs/eslint-plugin-vue/compare/v6.2.2...v7.0.1)

Signed-off-by: dependabot[bot] <support@github.com>
2020-10-05 05:42:39 +00:00
Fabio ed5cf0a8e4 refactor: improvements to edit connection modal 2020-10-04 18:32:54 +02:00
Fabio c70e5b422c fix: missing connection name when "ask for crendential" selected 2020-10-04 18:31:40 +02:00
Fabio 0bf2c8dc9d feat: query and data tabs keyboard shortcuts (F5, F9) 2020-10-04 17:32:15 +02:00
Fabio d563cec70d feat: close modals pressing ESC 2020-10-04 17:21:21 +02:00
Fabio 6ee4ef4b8b chore: improved changelog 2020-10-03 12:20:09 +02:00
Fabio 5fc4df426c chore(release): 0.0.7 2020-10-03 12:13:17 +02:00
Fabio 799a5fef5b build: reduced webpack console output 2020-10-03 12:12:41 +02:00
Fabio 54717e1f6a feat: edit database collation 2020-10-03 12:11:42 +02:00
Fabio 4288a1fd33 feat: databases deletion 2020-10-01 15:08:35 +02:00
Fabio 52449e0420 refactor: enhanced automatic schema selection 2020-09-29 16:43:20 +02:00
Fabio 96f38297c1 chore: update README.md 2020-09-28 10:14:12 +02:00
Fabio 3e737cba62 fix: empty databases not shown in explore bar 2020-09-27 19:06:13 +02:00
Fabio 3d0a83f2cf feat: database creation 2020-09-25 12:39:58 +02:00
Fabio c1cdd03938 refactor: simplified and improved project structure 2020-09-24 13:09:01 +02:00
Fabio Di Stasio 437e41bff0
Merge pull request #34 from EStarium/dependabot/npm_and_yarn/vuex-persist-3.1.0
build(deps): bump vuex-persist from 2.3.0 to 3.1.0
2020-09-21 08:02:46 +02:00
dependabot[bot] 4516783b13
build(deps): bump vuex-persist from 2.3.0 to 3.1.0
Bumps [vuex-persist](https://github.com/championswimmer/vuex-persist) from 2.3.0 to 3.1.0.
- [Release notes](https://github.com/championswimmer/vuex-persist/releases)
- [Changelog](https://github.com/championswimmer/vuex-persist/blob/master/CHANGELOG.md)
- [Commits](https://github.com/championswimmer/vuex-persist/compare/v2.3.0...v3.1.0)

Signed-off-by: dependabot[bot] <support@github.com>
2020-09-21 05:45:49 +00:00
Fabio 43c7072c1c fix: unable to obtain fields informations for some queries 2020-09-20 16:03:03 +02:00
Fabio 530d1bd43f fix: missing schema when queryng INFORMATION_SCHEMA 2020-09-19 18:10:57 +02:00
Fabio 530907d097 fix: several fix on data and query tabs 2020-09-18 12:54:02 +02:00
Fabio ac4941fa5e style: line break from CRLF to LF 2020-09-17 18:15:48 +02:00
Fabio 5334a44271 refactor: improved structure of connection core 2020-09-17 17:58:12 +02:00
Fabio 4991291c2c chore: update app screenshot 2020-09-17 12:34:57 +02:00
Fabio 2554444322 feat: field comment on mouse over a table field name 2020-09-17 11:13:00 +02:00
Fabio cff4f537de chore: improved app icon resolution 2020-09-15 15:07:56 +02:00
Fabio 12fbe8c1a0 fix: prevent multiple app instances 2020-09-15 14:44:29 +02:00
Fabio 10b426b90b fix: glitch on table data tab 2020-09-14 12:49:09 +02:00
Fabio b29e07c3b7 fix: wrong italian translation 2020-09-14 12:47:01 +02:00
Fabio Di Stasio ffef312b44
Merge pull request #33 from ReverbOD/master
feat: update italian translation
2020-09-14 12:38:33 +02:00
Giuseppe Gigliotti 264829bec0 Update it-IT.js 2020-09-14 12:31:42 +02:00
Giuseppe Gigliotti 89c3dc9fed feat: update italian translation 2020-09-14 12:28:22 +02:00
Giuseppe Gigliotti fe3d741601 feat: Update italian translation 2020-09-14 11:45:21 +02:00
Fabio 1b04b216b2 fix: cell update soft reload doesn't apply changes 2020-09-14 11:08:11 +02:00
Fabio 78965d23e3 fix: value overridden when join tables with fields with same name 2020-09-13 18:25:28 +02:00
Fabio Di Stasio 9b76c8eae0
Merge pull request #32 from hongkfui/master
Spanish translation added
2020-09-12 15:30:18 +02:00
hongkfui c94ae8c9bc
Spanish lang added 2020-09-12 12:34:28 +02:00
Fabio ad0bad8486 fix: wrong field names when join tables 2020-09-11 18:01:07 +02:00
Fabio286 8e71f42a28 fix: wrong schema fetching table fields and key usage 2020-09-10 12:39:23 +02:00
Fabio Di Stasio 967a0aa6e3 chore: update issue templates 2020-09-09 11:43:06 +02:00
Fabio Di Stasio ddc7d1ea26
ci: create codeql-analysis.yml 2020-09-09 10:48:21 +02:00
Fabio 4684b4114b fix: wrong table and schema when more than one query in a tab 2020-09-08 11:47:01 +02:00
Fabio286 3e08ba221d build: local vue-template-compiler 2020-09-06 16:47:51 +02:00
Fabio 1d87ca959f refactor: adaptation of row deletion and modification functions due last commits 2020-09-06 10:35:32 +02:00
Fabio 023c6a633a fix: unable to obtain keyUsage informations when adding new row 2020-09-06 10:09:05 +02:00
Fabio 48f77bae01 feat: support to multiple queries in the same tab 2020-09-06 08:41:57 +02:00
Fabio Di Stasio 3385744260
docs: update README.md 2020-09-03 15:19:31 +02:00
Fabio 86aec4f5e4 fix: lack of loading progressbar when an update is available 2020-09-03 15:12:30 +02:00
Fabio ba73d677b5 chore: 2020-09-03 13:52:43 +02:00
Fabio 51ccce3da4 chore(release): 0.0.6 2020-09-03 13:46:16 +02:00
Fabio a1a6f51f2f fix: error when launching queries without a result from query tabs 2020-09-03 13:44:58 +02:00
Fabio 801a0de186 fix: field name displayed instead of alias 2020-09-02 18:14:30 +02:00
Fabio 264de9c568 feat: aliases support 2020-09-01 19:23:13 +02:00
Fabio Di Stasio 8390f8aa55
Merge pull request #31 from EStarium/dependabot/npm_and_yarn/electron-10.1.0
build(deps-dev): bump electron from 9.2.1 to 10.1.0
2020-08-31 17:39:49 +02:00
Fabio Di Stasio af7c0e90b8
Merge pull request #30 from EStarium/dependabot/npm_and_yarn/sass-loader-10.0.1
build(deps-dev): bump sass-loader from 9.0.3 to 10.0.1
2020-08-31 14:02:57 +02:00
dependabot[bot] da33e77361
build(deps-dev): bump electron from 9.2.1 to 10.1.0
Bumps [electron](https://github.com/electron/electron) from 9.2.1 to 10.1.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/master/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v9.2.1...v10.1.0)

Signed-off-by: dependabot[bot] <support@github.com>
2020-08-31 06:47:39 +00:00
dependabot[bot] a4841ab63b
build(deps-dev): bump sass-loader from 9.0.3 to 10.0.1
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 9.0.3 to 10.0.1.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v9.0.3...v10.0.1)

Signed-off-by: dependabot[bot] <support@github.com>
2020-08-31 06:44:49 +00:00
Fabio de3f36a3fe docs: update README.md 2020-08-21 15:56:29 +02:00
Fabio 8dc74ef2c3 feat: sql suggestions in query editor 2020-08-21 11:38:00 +02:00
Fabio 256ec76588 feat: middle click to close tabs 2020-08-21 10:57:26 +02:00
Fabio 196a3e0185 feat: monaco-editor as query editor 2020-08-20 18:06:02 +02:00
Fabio bc54fef0aa docs: Update README.md 2020-08-20 15:31:50 +02:00
Fabio Di Stasio a5b478e53d
Merge pull request #29 from Mohd-PH/master
Add Arabic translation
2020-08-20 15:24:03 +02:00
Mohd-PH 2e235ad2fe Change the name of Arabic in the settings page 2020-08-20 16:21:11 +03:00
Mohd-PH 950bb17b1e Add Arabic translation 2020-08-20 12:37:26 +03:00
Fabio 3a6ea76b93 feat: tabs horizontal scroll with mouse wheel 2020-08-20 10:38:18 +02:00
Fabio d7ed00f4a3 feat: support to multiple query tabs 2020-08-19 18:20:57 +02:00
Fabio fd6d5177ef fix: wrong table height calc in some cases 2020-08-19 16:25:42 +02:00
Fabio 9599b43f78 refactor: changed event names to kebab-case 2020-08-18 18:03:59 +02:00
Fabio 2cfb223ff6 chore: Improved changelog 2020-08-17 17:48:21 +02:00
Fabio 69def94c88 chore(release): 0.0.5 2020-08-17 17:39:28 +02:00
Fabio e8141b6321 feat: badge on setting icon and update tab when update is available 2020-08-17 17:37:42 +02:00
Fabio 0b6a188d19 feat: foreign key support in add/edit row 2020-08-17 15:10:19 +02:00
Fabio Di Stasio dca625fe5a
Merge pull request #28 from EStarium/dependabot/npm_and_yarn/standard-version-9.0.0
build(deps-dev): bump standard-version from 8.0.2 to 9.0.0
2020-08-17 08:42:08 +02:00
dependabot[bot] a4b94bc19c
build(deps-dev): bump standard-version from 8.0.2 to 9.0.0
Bumps [standard-version](https://github.com/conventional-changelog/standard-version) from 8.0.2 to 9.0.0.
- [Release notes](https://github.com/conventional-changelog/standard-version/releases)
- [Changelog](https://github.com/conventional-changelog/standard-version/blob/master/CHANGELOG.md)
- [Commits](https://github.com/conventional-changelog/standard-version/compare/v8.0.2...v9.0.0)

Signed-off-by: dependabot[bot] <support@github.com>
2020-08-17 06:28:16 +00:00
Fabio 744728a14f refactor: moved table fields informations to vuex 2020-08-14 18:07:29 +02:00
Fabio 6d0724dc90 fix: wrong schema passed in query tab when selected a different database 2020-08-14 11:25:50 +02:00
Fabio 59e4a79f42 fix: newline replaced with undefined inside queries 2020-08-14 11:06:20 +02:00
Fabio 7bc10092fe fix: query result table header didn't show just selected fields 2020-08-13 13:24:03 +02:00
Fabio eb348b3095 fix: update a row with a string key value 2020-08-13 13:22:04 +02:00
Fabio 3c6e818ba0 fix: insert files via add row option 2020-08-13 12:42:19 +02:00
Fabio 2f1dfdc654 feat: option to insert table rows 2020-08-12 18:12:30 +02:00
Fabio 128a6cd9e8 style: UI improvements 2020-08-12 18:11:48 +02:00
Fabio 5473858323 refactor: changed material design icon pack 2020-08-12 10:48:18 +02:00
Fabio 7651d05b37 fix: window title not perfectly centered 2020-08-11 09:11:26 +02:00
Fabio c89c1ce83c docs: update README.md 2020-08-10 18:09:33 +02:00
Fabio 771f8a2d68 fix: time and datetime precision 2020-08-10 18:07:16 +02:00
Fabio 13b0816837 fix: table header not fixed on top when fast scrolling 2020-08-10 16:06:11 +02:00
Fabio a15e6249e1 chore: dependabot interval and minor changes in README.md 2020-08-07 17:27:25 +02:00
Fabio bbde2bd994 perf: improved scroll speed of result tables 2020-08-07 17:26:02 +02:00
347 changed files with 90606 additions and 4904 deletions

301
.all-contributorsrc Normal file
View File

@ -0,0 +1,301 @@
{
"projectName": "antares",
"projectOwner": "antares-sql",
"repoType": "github",
"repoHost": "https://github.com",
"files": [
"README.md"
],
"imageSize": 100,
"commit": false,
"commitConvention": "angular",
"contributors": [
{
"login": "Fabio286",
"name": "Fabio Di Stasio",
"avatar_url": "https://avatars.githubusercontent.com/u/31471771?v=4",
"profile": "https://fabiodistasio.it/",
"contributions": [
"code",
"translation",
"doc"
]
},
{
"login": "toriphes",
"name": "Giulio Ganci",
"avatar_url": "https://avatars.githubusercontent.com/u/4192159?v=4",
"profile": "https://www.linkedin.com/in/giulioganci/",
"contributions": [
"code"
]
},
{
"login": "digitalgopnik",
"name": "Christian Ratz",
"avatar_url": "https://avatars.githubusercontent.com/u/2630316?v=4",
"profile": "https://christianratz.de/",
"contributions": [
"code",
"translation"
]
},
{
"login": "reverb6821",
"name": "Giuseppe Gigliotti",
"avatar_url": "https://avatars.githubusercontent.com/u/55198803?v=4",
"profile": "https://reverb6821.github.io/",
"contributions": [
"translation"
]
},
{
"login": "Mohd-PH",
"name": "Mohd-PH",
"avatar_url": "https://avatars.githubusercontent.com/u/9362157?v=4",
"profile": "https://github.com/Mohd-PH",
"contributions": [
"translation"
]
},
{
"login": "hongkfui",
"name": "hongkfui",
"avatar_url": "https://avatars.githubusercontent.com/u/37477191?v=4",
"profile": "https://github.com/hongkfui",
"contributions": [
"translation"
]
},
{
"login": "MrAnyx",
"name": "Robin",
"avatar_url": "https://avatars.githubusercontent.com/u/44176707?v=4",
"profile": "https://github.com/MrAnyx",
"contributions": [
"translation"
]
},
{
"login": "daeleduardo",
"name": "Daniel Eduardo",
"avatar_url": "https://avatars.githubusercontent.com/u/8599078?v=4",
"profile": "https://github.com/daeleduardo",
"contributions": [
"translation"
]
},
{
"login": "datlechin",
"name": "Ngô Quốc Đạt",
"avatar_url": "https://avatars.githubusercontent.com/u/56961917?v=4",
"profile": "https://ngoquocdat.com/",
"contributions": [
"translation"
]
},
{
"login": "IsamuSugi",
"name": "Isamu Sugiura",
"avatar_url": "https://avatars.githubusercontent.com/u/7746658?v=4",
"profile": "https://github.com/IsamuSugi",
"contributions": [
"translation"
]
},
{
"login": "Occhioverde",
"name": "Riccardo Sacchetto",
"avatar_url": "https://avatars.githubusercontent.com/u/18429412?v=4",
"profile": "http://rsacchetto.nexxontech.it/",
"contributions": [
"platform"
]
},
{
"login": "kilianstallz",
"name": "Kilian Stallinger",
"avatar_url": "https://avatars.githubusercontent.com/u/5290318?v=4",
"profile": "https://kilianstallinger.com",
"contributions": [
"code"
]
},
{
"login": "wenj91",
"name": "文杰",
"avatar_url": "https://avatars.githubusercontent.com/u/12549338?v=4",
"profile": "https://github.com/wenj91",
"contributions": [
"code"
]
},
{
"login": "goYou",
"name": "goYou",
"avatar_url": "https://avatars.githubusercontent.com/u/62732795?v=4",
"profile": "https://github.com/goYou",
"contributions": [
"translation"
]
},
{
"login": "raliqala",
"name": "Topollo",
"avatar_url": "https://avatars.githubusercontent.com/u/30502407?v=4",
"profile": "https://github.com/raliqala",
"contributions": [
"code"
]
},
{
"login": "SmileYzn",
"name": "Cleverson",
"avatar_url": "https://avatars.githubusercontent.com/u/5851851?v=4",
"profile": "https://github.com/SmileYzn",
"contributions": [
"translation"
]
},
{
"login": "fredatgithub",
"name": "fred",
"avatar_url": "https://avatars.githubusercontent.com/u/6720055?v=4",
"profile": "https://github.com/fredatgithub",
"contributions": [
"translation"
]
},
{
"login": "xak666",
"name": "xaka_xak",
"avatar_url": "https://avatars.githubusercontent.com/u/38811437?v=4",
"profile": "https://github.com/xak666",
"contributions": [
"translation"
]
},
{
"login": "brdtheo",
"name": "Théo Billardey",
"avatar_url": "https://avatars.githubusercontent.com/u/48206778?v=4",
"profile": "https://codepen.io/theo-billardey",
"contributions": [
"translation"
]
},
{
"login": "dyaskur",
"name": "Muhammad Dyas Yaskur",
"avatar_url": "https://avatars.githubusercontent.com/u/9539970?v=4",
"profile": "http://yaskur.net",
"contributions": [
"translation",
"code"
]
},
{
"login": "jimcat8",
"name": "tianci li",
"avatar_url": "https://avatars.githubusercontent.com/u/86754294?v=4",
"profile": "https://github.com/jimcat8",
"contributions": [
"translation"
]
},
{
"login": "555cider",
"name": "555cider",
"avatar_url": "https://avatars.githubusercontent.com/u/73565447?v=4",
"profile": "https://github.com/555cider",
"contributions": [
"translation"
]
},
{
"login": "m1khal3v",
"name": "Anton Mikhalev",
"avatar_url": "https://avatars.githubusercontent.com/u/41085561?v=4",
"profile": "https://github.com/m1khal3v",
"contributions": [
"translation"
]
},
{
"login": "64knl",
"name": "René",
"avatar_url": "https://avatars.githubusercontent.com/u/3864423?v=4",
"profile": "https://64k.nl/",
"contributions": [
"code",
"translation"
]
},
{
"login": "zxp19821005",
"name": "Woodenman",
"avatar_url": "https://avatars.githubusercontent.com/u/4915850?v=4",
"profile": "https://github.com/zxp19821005",
"contributions": [
"platform"
]
},
{
"login": "markusand",
"name": "Marc Vilella",
"avatar_url": "https://avatars.githubusercontent.com/u/12972543?v=4",
"profile": "https://github.com/markusand",
"contributions": [
"translation"
]
},
{
"login": "Lawondyss",
"name": "Ladislav Vondráček",
"avatar_url": "https://avatars.githubusercontent.com/u/272130?v=4",
"profile": "https://github.com/Lawondyss",
"contributions": [
"translation"
]
},
{
"login": "zvlad",
"name": "Vladyslav",
"avatar_url": "https://avatars.githubusercontent.com/u/9055134?v=4",
"profile": "https://github.com/zvlad",
"contributions": [
"translation"
]
},
{
"login": "bagusindrayana",
"name": "Bagus Indrayana",
"avatar_url": "https://avatars.githubusercontent.com/u/36830534?v=4",
"profile": "https://github.com/bagusindrayana",
"contributions": [
"code"
]
},
{
"login": "penguinlab",
"name": "Naoki Ishikawa",
"avatar_url": "https://avatars.githubusercontent.com/u/10959317?v=4",
"profile": "https://github.com/penguinlab",
"contributions": [
"translation"
]
},
{
"login": "mangas",
"name": "Filipe Azevedo",
"avatar_url": "https://avatars.githubusercontent.com/u/1640325?v=4",
"profile": "https://fazevedo.dev",
"contributions": [
"code"
]
}
],
"contributorsPerLine": 7,
"skipCi": true,
"commitType": "docs"
}

View File

@ -1,4 +1,5 @@
/node_modules
/assets/vendor
/out
/dist
node_modules
assets
out
dist
build

View File

@ -6,25 +6,37 @@
},
"extends": [
"standard",
"plugin:vue/recommended"
"plugin:@typescript-eslint/recommended",
"plugin:vue/vue3-recommended"
],
"parser": "vue-eslint-parser",
"parserOptions": {
"parser": "babel-eslint",
"parser": "@typescript-eslint/parser",
"ecmaVersion": 9,
"sourceType": "module"
"sourceType": "module",
"requireConfigFile": false
},
"plugins": [
"vue",
"@typescript-eslint",
"simple-import-sort"
],
"rules": {
"space-infix-ops": "off",
"object-curly-newline": "off",
"indent": [
"error",
3,
{ "SwitchCase": 1 }
{
"SwitchCase": 1
}
],
"linebreak-style": [
"error",
"windows"
"unix"
],
"brace-style": [
"error",
"error",
"stroustrup"
],
"quotes": [
@ -36,26 +48,52 @@
"always"
],
"curly": [
"error",
"error",
"multi-or-nest"
],
"no-console": "off",
"no-undef": "off",
"vue/no-side-effects-in-computed-properties": "off",
"vue/multi-word-component-names": "off",
"vue/require-default-prop": "off",
"vue/comment-directive": "off",
"vue/no-v-html": "off",
"vue/html-indent": ["error", 3, {
"attribute": 1,
"baseIndent": 1,
"closeBracket": 0,
"ignores": []
}],
"vue/max-attributes-per-line": ["error", {
"singleline": 2,
"multiline": {
"max": 1,
"allowFirstLine": false
"vue/html-indent": [
"error",
3,
{
"attribute": 1,
"baseIndent": 1,
"closeBracket": 0,
"ignores": []
}
}]
],
"vue/max-attributes-per-line": [
"error",
{
"singleline": {
"max": 2
},
"multiline": {
"max": 1
}
}
],
"@typescript-eslint/member-delimiter-style": [
"warn",
{
"multiline": {
"delimiter": "semi",
"requireLast": true
},
"singleline": {
"delimiter": "semi",
"requireLast": false
}
}
],
"@typescript-eslint/no-var-requires": "off",
"simple-import-sort/imports": "error",
"simple-import-sort/exports": "error"
}
}

6
.gitattributes vendored Normal file
View File

@ -0,0 +1,6 @@
* text eol=lf
*.jpg binary
*.png binary
*.gif binary
*.ico binary
*.icns binary

6
.github/FUNDING.yml vendored
View File

@ -1,7 +1,7 @@
# These are supported funding model platforms
github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
patreon: fabio286
github: [antares-sql,fabio286]
patreon: #fabio286
open_collective: # Replace with a single Open Collective username
ko_fi: # Replace with a single Ko-fi username
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
@ -9,4 +9,4 @@ community_bridge: # Replace with a single Community Bridge project-name e.g., cl
liberapay: # Replace with a single Liberapay username
issuehunt: # Replace with a single IssueHunt username
otechie: # Replace with a single Otechie username
custom: ['https://paypal.me/fabiodistasio']
custom: ['https://paypal.me/fabiodistasio']

41
.github/ISSUE_TEMPLATE/bug_report.md vendored Normal file
View File

@ -0,0 +1,41 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: Fabio286
---
**Describe the bug**
A clear and concise description of what the bug is.
**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
**Expected behavior**
A clear and concise description of what you expected to happen.
**Screenshots**
If applicable, add screenshots to help explain your problem.
**Application (please complete the following information):**
- App client [e.g. MySQL]
- App version [e.g. 0.5.2]
- Installation source: [e.g. exe, Linux Store, AppImage, dmg]
**Environment (please complete the following information):**
- OS name: [e.g. Windows 11]
- OS version [e.g. 21H2]
- DB name [e.g. MariaDB]
- DB version [e.g. 10.3.34]
**Additional context**
Add any other context about the problem here.

View File

@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: Fabio286
---
**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
**Additional context**
Add any other context or screenshots about the feature request here.

View File

@ -6,6 +6,9 @@
version: 2
updates:
- package-ecosystem: "npm"
allow:
- dependency-type: "production"
directory: "/"
schedule:
interval: "daily"
interval: "monthly"
target-branch: "develop"

43
.github/workflows/build-beta.yml vendored Normal file
View File

@ -0,0 +1,43 @@
name: Build & release [BETA]
on:
push:
tags:
- 'v[0-9]+.[0-9]+.[0-9]+-beta.[0-9]+'
env:
BRANCH_NAME: ${{ github.head_ref || github.ref_name }}
jobs:
release:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [macos-latest, ubuntu-latest, windows-latest]
steps:
- name: Check out Git repository
uses: actions/checkout@v3
with:
ref: beta
- name: Install Node.js
uses: actions/setup-node@v3
with:
node-version: 20
- name: Install dependencies
run: npm i
- name: "Build"
run: npm run build
- name: Release
uses: ncipollo/release-action@v1
with:
artifacts: "build/*.AppImage,build/*.yml,build/*.deb,build/*.dmg,build/*.blockmap,build/*.zip,build/*.exe"
allowUpdates: true
draft: true
generateReleaseNotes: true

49
.github/workflows/build.yml vendored Normal file
View File

@ -0,0 +1,49 @@
name: Build & release [STABLE]
on:
push:
tags:
- 'v[0-9]+.[0-9]+.[0-9]+'
env:
BRANCH_NAME: ${{ github.head_ref || github.ref_name }}
jobs:
release:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [macos-latest, ubuntu-latest, windows-latest]
steps:
- name: Exit if not on master branch
if: contains(env.BRANCH_NAME, 'master') == false
run: |
echo "Wrong environment ${{env.BRANCH_NAME}}"
exit 0
- name: Check out Git repository
uses: actions/checkout@v3
with:
ref: master
- name: Install Node.js
uses: actions/setup-node@v3
with:
node-version: 20
- name: Install dependencies
run: npm i
- name: "Build"
run: npm run build
- name: Release
uses: ncipollo/release-action@v1
with:
artifacts: "build/*.AppImage,build/*.yml,build/*.deb,build/*.dmg,build/*.blockmap,build/*.zip,build/*.exe"
allowUpdates: true
draft: true
generateReleaseNotes: true

57
.github/workflows/codeql-analysis.yml vendored Normal file
View File

@ -0,0 +1,57 @@
name: "CodeQL"
on:
push:
branches: [master]
pull_request:
# The branches below must be a subset of the branches above
branches: [master]
schedule:
- cron: '0 15 * * 0'
jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
# Override automatic language detection by changing the below list
# Supported options are ['csharp', 'cpp', 'go', 'java', 'javascript', 'python']
language: ['javascript']
# Learn more...
# https://docs.github.com/en/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#overriding-automatic-language-detection
steps:
- name: Checkout repository
uses: actions/checkout@v2
with:
# We must fetch at least the immediate parents so that if this is
# a pull request then we can checkout the head.
fetch-depth: 2
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
with:
languages: ${{ matrix.language }}
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v1
# Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl
# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
# and modify them (or add more) to build your code if your project
# uses a compiled language
#- run: |
# make bootstrap
# make release
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v1

View File

@ -0,0 +1,34 @@
name: Create artifact [LINUX ARM64]
on:
workflow_dispatch: {}
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Check out Git repository
uses: actions/checkout@v3
with:
ref: master
- name: Install Node.js
uses: actions/setup-node@v3
with:
node-version: 20
- name: Install dependencies
run: npm i
- name: "Build"
run: npm run build -- --arm64 --linux deb AppImage
- name: Upload Artifact
uses: actions/upload-artifact@v3
with:
name: linux-build
retention-days: 3
path: |
build
!build/*-unpacked
!build/.icon-ico

View File

@ -0,0 +1,32 @@
name: Create artifact [LINUX]
on:
workflow_dispatch: {}
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Check out Git repository
uses: actions/checkout@v3
- name: Install Node.js
uses: actions/setup-node@v3
with:
node-version: 20
- name: Install dependencies
run: npm i
- name: "Build"
run: npm run build
- name: Upload Artifact
uses: actions/upload-artifact@v3
with:
name: linux-build
retention-days: 3
path: |
build
!build/*-unpacked
!build/.icon-ico

View File

@ -0,0 +1,58 @@
name: Create artifact [MAC]
on:
workflow_dispatch: {}
jobs:
build:
runs-on: macos-latest
steps:
- name: Check out Git repository
uses: actions/checkout@v3
- name: Install Node.js
uses: actions/setup-node@v3
with:
node-version: 20
- name: npm install & build
run: |
npm install
npm run build
- name: Upload Artifact
uses: actions/upload-artifact@v3
with:
name: macos-build
retention-days: 3
path: |
build
!build/*-unpacked
!build/.icon-ico
build-beta:
runs-on: macos-latest
steps:
- name: Check out Git repository
uses: actions/checkout@v3
with:
ref: beta
- name: Install Node.js
uses: actions/setup-node@v3
with:
node-version: 20
- name: npm install & build
run: |
npm install
npm run build
- name: Upload Artifact
uses: actions/upload-artifact@v3
with:
name: macos-build-beta
retention-days: 3
path: |
build
!build/*-unpacked
!build/.icon-ico

View File

@ -0,0 +1,50 @@
name: Create generated-rources.json
on:
workflow_dispatch: {}
jobs:
build:
runs-on: ubuntu-latest
steps:
# Install flatpak-node-generator
- name: Install Python
uses: actions/setup-python@v5
with:
python-version: '3.8'
- name: Install pipx
uses: CfirTsabari/actions-pipx@v1
- name: Install flatpak-node-generator
run: |
cd ../
git clone https://github.com/flatpak/flatpak-builder-tools.git
cd flatpak-builder-tools/node
pipx install .
# Install Antares
- name: Check out Git repository
uses: actions/checkout@v3
- name: Install Node.js
uses: actions/setup-node@v3
with:
node-version: 18
# - name: Delete old package-lock.json
# run: rm package-lock.json
- name: Install dependencies
run: npm i --lockfile-version 2
- name: Generate generated-sources.json
run: flatpak-node-generator npm -r package-lock.json --electron-node-headers
- name: Upload Artifact
uses: actions/upload-artifact@v3
with:
name: generated-sources
retention-days: 3
path: |
generated-sources.json

33
.github/workflows/test-builds.yml vendored Normal file
View File

@ -0,0 +1,33 @@
name: Test build [DEVELOP]
on:
workflow_dispatch: {}
env:
BRANCH_NAME: ${{ github.head_ref || github.ref_name }}
jobs:
release:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [macos-latest, ubuntu-latest, windows-latest]
steps:
- name: Check out Git repository
uses: actions/checkout@v3
with:
ref: develop
- name: Install Node.js
uses: actions/setup-node@v3
with:
node-version: 20
- name: Install dependencies
run: npm i
- name: "Build"
run: npm run build

29
.github/workflows/test-e2e-win.yml vendored Normal file
View File

@ -0,0 +1,29 @@
name: Test end-to-end
on:
push:
branches:
- develop
jobs:
release:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [windows-latest]
steps:
- name: Check out Git repository
uses: actions/checkout@v3
- name: Install Node.js
uses: actions/setup-node@v3
with:
node-version: 20
- name: Install dependencies
run: npm i
- name: Run tests
run: npm run test:e2e

13
.gitignore vendored
View File

@ -1,9 +1,10 @@
.DS_Store
dist/
node_modules/
dist
build
misc/*
!misc/.gitkeep
node_modules
thumbs.db
.idea/
.vscode
TODO.md
NOTES.md
*.txt
package-lock.json
*.heapsnapshot

1
.husky/commit-msg Normal file
View File

@ -0,0 +1 @@
npx --no -- commitlint --edit $1

1
.husky/pre-commit Normal file
View File

@ -0,0 +1 @@
npm run lint

BIN
.nvmrc Normal file

Binary file not shown.

View File

@ -1,14 +1,18 @@
{
"extends": [
"stylelint-config-standard"
"stylelint-config-standard",
"stylelint-config-recommended-vue"
],
"fix": true,
"formatter": "verbose",
"customSyntax": "postcss-html",
"plugins": [
"stylelint-scss"
],
"rules": {
"at-rule-no-unknown": null
"at-rule-no-unknown": null,
"no-descending-specificity": null,
"font-family-no-missing-generic-family-keyword": null
},
"syntax": "scss"
}

View File

@ -1,38 +0,0 @@
language: node_js
node_js: 12
before_install:
- npm install
cache:
directories:
- node_modules
- app/node_modules
- $HOME/.cache/electron
- $HOME/.cache/electron-builder
- $HOME/.npm/_prebuilds
env:
global:
- ELECTRON_CACHE=$HOME/.cache/electron
- ELECTRON_BUILDER_CACHE=$HOME/.cache/electron-builder
jobs:
include:
- stage: Test
script:
- npm test
- stage: Deploy Linux & Windows
if: tag IS present
os: linux
services: docker
script:
- docker run --rm --env-file <(env | grep -iE 'DEBUG|NODE_|ELECTRON_|NPM_|CI|CIRCLE|TRAVIS|APPVEYOR_|CSC_|_TOKEN|_KEY|AWS_|STRIP|BUILD_') -v ${PWD}:/project -v ~/.cache/electron:/root/.cache/electron -v ~/.cache/electron-builder:/root/.cache/electron-builder electronuserland/builder:wine /bin/bash -c "npm run build -- --linux --win -p always"
before_cache:
- rm -rf $HOME/.cache/electron-builder/wine
- stage: Deploy Mac
if: tag IS present
os: osx
osx_image: xcode10.2
script:
- npm run build -- -p always

7
.versionrc.json Normal file
View File

@ -0,0 +1,7 @@
{
"types": [
{"type":"feat","section":"Features"},
{"type":"perf","section":"Improvements"},
{"type":"fix","section":"Bug Fixes"}
]
}

28
.vscode/launch.json vendored Normal file
View File

@ -0,0 +1,28 @@
{
"version": "0.2.0",
"configurations": [
{
"name": "Electron: Main",
"cwd": "${workspaceFolder}",
"port": 9222,
"request": "attach",
"sourceMaps": true,
"type": "node",
"timeout": 1000000
},
{
"name": "Electron: Renderer",
"port": 9223,
"request": "attach",
"sourceMaps": true,
"type": "chrome",
"webRoot": "${workspaceFolder}"
}
],
"compounds": [
{
"name": "Electron: All",
"configurations": ["Electron: Main", "Electron: Renderer"]
}
]
}

17
.vscode/settings.json vendored Normal file
View File

@ -0,0 +1,17 @@
{
"conventionalCommits.scopes": [
"UI",
"core",
"MySQL",
"PostgreSQL",
"SQLite",
"Firebird SQL",
"Windows",
"translation",
"Linux",
"MacOS",
"deps",
"Flatpak"
],
"svg.preview.background": "transparent"
}

File diff suppressed because it is too large Load Diff

133
CODE_OF_CONDUCT.md Normal file
View File

@ -0,0 +1,133 @@
# Contributor Covenant Code of Conduct
## Our Pledge
We as members, contributors, and leaders pledge to make participation in our
community a harassment-free experience for everyone, regardless of age, body
size, visible or invisible disability, ethnicity, sex characteristics, gender
identity and expression, level of experience, education, socio-economic status,
nationality, personal appearance, race, caste, color, religion, or sexual
identity and orientation.
We pledge to act and interact in ways that contribute to an open, welcoming,
diverse, inclusive, and healthy community.
## Our Standards
Examples of behavior that contributes to a positive environment for our
community include:
* Demonstrating empathy and kindness toward other people
* Being respectful of differing opinions, viewpoints, and experiences
* Giving and gracefully accepting constructive feedback
* Accepting responsibility and apologizing to those affected by our mistakes,
and learning from the experience
* Focusing on what is best not just for us as individuals, but for the overall
community
Examples of unacceptable behavior include:
* The use of sexualized language or imagery, and sexual attention or advances of
any kind
* Trolling, insulting or derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or email address,
without their explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting
## Enforcement Responsibilities
Community leaders are responsible for clarifying and enforcing our standards of
acceptable behavior and will take appropriate and fair corrective action in
response to any behavior that they deem inappropriate, threatening, offensive,
or harmful.
Community leaders have the right and responsibility to remove, edit, or reject
comments, commits, code, wiki edits, issues, and other contributions that are
not aligned to this Code of Conduct, and will communicate reasons for moderation
decisions when appropriate.
## Scope
This Code of Conduct applies within all community spaces, and also applies when
an individual is officially representing the community in public spaces.
Examples of representing our community include using an official e-mail address,
posting via an official social media account, or acting as an appointed
representative at an online or offline event.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the community leaders responsible for enforcement at
info@fabiodistasio.it.
All complaints will be reviewed and investigated promptly and fairly.
All community leaders are obligated to respect the privacy and security of the
reporter of any incident.
## Enforcement Guidelines
Community leaders will follow these Community Impact Guidelines in determining
the consequences for any action they deem in violation of this Code of Conduct:
### 1. Correction
**Community Impact**: Use of inappropriate language or other behavior deemed
unprofessional or unwelcome in the community.
**Consequence**: A private, written warning from community leaders, providing
clarity around the nature of the violation and an explanation of why the
behavior was inappropriate. A public apology may be requested.
### 2. Warning
**Community Impact**: A violation through a single incident or series of
actions.
**Consequence**: A warning with consequences for continued behavior. No
interaction with the people involved, including unsolicited interaction with
those enforcing the Code of Conduct, for a specified period of time. This
includes avoiding interactions in community spaces as well as external channels
like social media. Violating these terms may lead to a temporary or permanent
ban.
### 3. Temporary Ban
**Community Impact**: A serious violation of community standards, including
sustained inappropriate behavior.
**Consequence**: A temporary ban from any sort of interaction or public
communication with the community for a specified period of time. No public or
private interaction with the people involved, including unsolicited interaction
with those enforcing the Code of Conduct, is allowed during this period.
Violating these terms may lead to a permanent ban.
### 4. Permanent Ban
**Community Impact**: Demonstrating a pattern of violation of community
standards, including sustained inappropriate behavior, harassment of an
individual, or aggression toward or disparagement of classes of individuals.
**Consequence**: A permanent ban from any sort of public interaction within the
community.
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
version 2.1, available at
[https://www.contributor-covenant.org/version/2/1/code_of_conduct.html][v2.1].
Community Impact Guidelines were inspired by
[Mozilla's code of conduct enforcement ladder][Mozilla CoC].
For answers to common questions about this code of conduct, see the FAQ at
[https://www.contributor-covenant.org/faq][FAQ]. Translations are available at
[https://www.contributor-covenant.org/translations][translations].
[homepage]: https://www.contributor-covenant.org
[v2.1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct.html
[Mozilla CoC]: https://github.com/mozilla/diversity
[FAQ]: https://www.contributor-covenant.org/faq
[translations]: https://www.contributor-covenant.org/translations

100
CONTRIBUTING.md Normal file
View File

@ -0,0 +1,100 @@
# Contributors Guide
Antares SQL is an application based on [Electron.js](https://www.electronjs.org/) that uses [Vue.js](https://vuejs.org/) and [Spectre.css](https://picturepan2.github.io/spectre/) as frontend frameworks.
For the build process it takes advantage of [electron-builder](https://www.electron.build/).
This application uses [Pinia🍍](https://pinia.vuejs.org/) as application state manager and [electron-store](https://github.com/sindresorhus/electron-store) to save the various settings on disc.
This guide aims to provide useful information and guidelines to everyone wants to contribute with this open-source project.
For every other question related to this project please [contact me](https://github.com/Fabio286).
## Project Structure
The main files of the application are located inside `src` folder and are groupped in three subfolders.
### `common`
This folder contains small libraries, classes and objects. The purpose of `common` folder is to group together utilities used by **renderer** and **main** processes.
Noteworthy is the `customizations` folder that contains clients related customizations. Those settings are merged with `default.js` that lists every option.
Client related customizations are stored on Pinia and can be accessed by `customizations` property of current workspace object, or importing `common/customizations`.
An use case of customizations object can be the following:
```js
computed: {
defaultEngine () {
if (this.workspace.customizations.engines)
return this.workspace.engines.find(engine => engine.isDefault).name;
return '';
}
}
```
In this case the computed property `defaultEngine` returns the default engine for MySQL client, or an empty string with PostgreSQL that doesn't have engines.
Customization properties are also useful **if some features are ready for one client but not others**.
### `main`
Inside this folder are located all files required by main process.
`ipc-handlers` subfolder includes all IPC handlers for events sent from renderer process.
`libs` subfolder includes classes related to clients and **query and connection logics**.
**Everything above client's class level should be "client agnostic"** with a neutral and uniformed api interface
### `renderer`
In this folder is located the structure of Vue frontend application.
## Build
The command to build Antares SQL locally is `npm run build`.
## Conventions
### Electron
- **kebab-case** for IPC event names.
### Vue
- **PascalCase** for file names (with .vue extension) and including components inside others (`<MyComponent/>`).
- "**Base**" prefix for [base component names](https://vuejs.org/v2/style-guide/#Base-component-names-strongly-recommended).
- "**The**" prefix for [single-instance component names](https://vuejs.org/v2/style-guide/#Single-instance-component-names-strongly-recommended).
- [Tightly coupled component names](https://vuejs.org/v2/style-guide/#Tightly-coupled-component-names-strongly-recommended).
- [Order of words in component names](https://vuejs.org/v2/style-guide/#Order-of-words-in-component-names-strongly-recommended).
- **kebab-case** in templates for property and event names.
### Code Style
The project includes [ESlint](https://eslint.org/) and [StyleLint](https://stylelint.io/) config files with style rules. I recommend to set the lint on-save option in your code editor.
Alternatively you can launch following commands to lint the project.
Check if all the style rules have been followed:
```console
npm run lint
```
Apply style rules globally if possible:
```console
npm run lint:fix
```
### Other recommendations
Please, use if possible **template literals** to compose strings and **avoid unnecessary dependencies**.
### Commits
The commit style adopted for this project is [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/).
Basicly it's important to have **single scoped commits with a prefix** that follows this style because Antares SQL uses [standard-version](https://github.com/conventional-changelog/standard-version) to generate new releases and [CHANGELOG.md](https://github.com/Fabio286/antares/blob/master/CHANGELOG.md) file to track all notable changes.
For Visual Studio Code users may be useful [Conventional Commits](https://marketplace.visualstudio.com/items?itemName=vivaxy.vscode-conventional-commits) extension.
## Debug
**Debug mode**:
```console
npm run debug
```
After running the debug mode Antares will listen on port 9222 (main process) for a debugger.
On **Visual Studio Code** just launch "*Electron: Main*" configurations after running Antares in debug mode.

155
README.md
View File

@ -1,35 +1,164 @@
<!-- markdownlint-disable -->
<p align="center">
<img width="800" src="https://raw.githubusercontent.com/Fabio286/antares/master/docs/screen-alpha.png">
<img width="800" src="https://raw.githubusercontent.com/Fabio286/antares/master/docs/gh-logo.png">
</p>
<!-- markdownlint-restore -->
# Antares SQL Client
![GitHub package.json version](https://img.shields.io/github/package-json/v/estarium/antares) [![Build Status](https://travis-ci.com/EStarium/antares.svg?branch=master)](https://travis-ci.com/EStarium/antares) ![GitHub All Releases](https://img.shields.io/github/downloads/estarium/antares/total) ![GitHub](https://img.shields.io/github/license/estarium/antares)
![GitHub package.json version](https://img.shields.io/github/package-json/v/fabio286/antares) ![GitHub](https://img.shields.io/github/license/fabio286/antares) ![Test e2e](https://github.com/antares-sql/antares/actions/workflows/test-e2e-win.yml/badge.svg?branch=develop) ![Mastodon Follow](https://img.shields.io/mastodon/follow/%20110860460902482117?domain=https%3A%2F%2Ffosstodon.org&style=social) [![Plant a Tree](https://raw.githubusercontent.com/Fabio286/treedom-badge/master/svg/plant-a-tree.svg)](https://www.treedom.net/en/user/fabio-di-stasio/event/antares-for-the-planet)
Antares is an SQL client based on Electron.js and Vue.js that aims to become a useful tool, especially for developers.
My target is to support as many databases as possible, and all major operating systems, including the ARM versions.
Antares is an SQL client based on [Electron.js](https://github.com/electron/electron) and [Vue.js](https://github.com/vuejs/vue) that aims to become a useful tool, especially for developers.
Our target is to support as many databases as possible, and all major operating systems, including the ARM versions.
At the moment this application is in a development state, it lacks many features, and is'nt ready as a main SQL client. However i'm actively working on it, hoping to provide all essential features as soon as possible.
**At the moment this application is in development state, many features will come in future updates**, and supports only MySQL/MariaDB, PostgreSQL, SQLite and Firebird SQL.
However, there are all the features necessary to have a pleasant database management experience, so give it a chance and send us your feedback, we would really appreciate it.
We are actively working on it, hoping to provide new cool features, improvements and fixes as soon as possible.
If you are curious to try this early state of Antares you can download and install the [latest release](https://github.com/EStarium/antares/releases), and stay tuned for updates. At moment i'm testing only on Windows.
🔗 If you are curious to try Antares you can download and install the [latest release](https://github.com/Fabio286/antares/releases/latest).
👁 To stay tuned for new releases follow Antares SQL on [Mastodon](https://fosstodon.org/@AntaresSQL).
🌟 Don't forget to **leave a star** if you appreciate this project.
🗳️ Polls:
- **[Which is the main OS you use Antares on?](https://github.com/antares-sql/antares/discussions/379)**
- **[Which database do you use the most?](https://github.com/antares-sql/antares/discussions/594)**
## Current key features
- Multiple database connections at same time.
- Database management (add/edit/delete).
- Full tables management, including indexes and foreign keys.
- Views, triggers, stored routines, functions and schedulers management (add/edit/delete).
- A modern and friendly tab system; keep open every kind of tab you need in your workspace.
- Fake table data filler to generate tons of data for test purpose.
- Query suggestions and auto complete.
- Query history: search through the last 1000 queries.
- Save queries, notes or todo.
- SSH tunnel support.
- Manual commit mode.
- Import and export database dumps.
- Customizable keyboard shortcuts.
- Dark and light theme.
- Editor themes.
## Philosophy
Why are we developing an SQL client when there are a lot of them on the market?
The main goal is to develop a **forever 100% free (without paid premium feature)**, full featured, as possible community driven, cross platform and open source alternative, empowered by JavaScript ecosystem.
A modern application created with minimalism and simplicity in mind, with features in the right places, not hundreds of tiny buttons, nested tabs or submenues; productivity comes first.
## Installation
Based on your operating system you can have one or more distribution formats to choose based on your preferences.
Since Antares SQL is a free software we don't have a budget to spend on annual licenses or certificates. This can result that on some platforms you might need to put in some additional work to install this app.
### Linux
On Linux you can simply download and run the `.AppImage` distribution, install from FlatHub, Snap Store, AUR or from our [PPA repository](https://github.com/antares-sql/antares-ppa).
### Windows
On Windows you can choose between downloading the app from Microsoft Store or downloading the `.exe` from our [website](https://antares-sql.app/downloads) or [this github repo](https://github.com/Fabio286/antares/releases/latest). Distributions that are not from Microsoft Store are not signed with a certificate, so to install you need to click on "More info" and then "Run anyway" on SmartScreen prompt.
### MacOS
On macOS you can run `.dmg` distribution following [this guide](https://support.apple.com/guide/mac-help/mh40616/mac) to install apps from unknown developers.
## Download
[<img height='56' alt='Download on Flathub' src='https://dl.flathub.org/assets/badges/flathub-badge-en.svg'/>](https://flathub.org/apps/it.fabiodistasio.AntaresSQL) [![Get it from the Snap Store](https://snapcraft.io/static/images/badges/en/snap-store-black.svg)](https://snapcraft.io/antares) [![Get it from AUR](https://raw.githubusercontent.com/antares-sql/antares/master/docs/aur-badge.svg)](https://aur.archlinux.org/packages/antares-sql-bin) [<img src="https://developer.microsoft.com/store/badges/images/English_get-it-from-MS.png" style="height: 56px">](https://www.microsoft.com/p/antares-sql-client/9nhtb9sq51r1?cid=storebadge&ocid=badge&rtc=1&activetab=pivot:overviewtab)
🚀 **[Other Downloads](https://github.com/antares-sql/antares/releases/latest)**
## Currently supported
### Databases
- [x] MySQL/MariaDB
- [ ] PostrgreSQL
- [ ] MSSQL
- [ ] SQLite
- [ ] OracleDB
- [x] PostgreSQL
- [x] SQLite
- [x] Firebird SQL
- [ ] DuckDB
- [ ] SQL Server
- [ ] More...
### Operating Systems
#### • x64
- [x] Windows
- [ ] Linux
- [x] Linux
- [x] MacOS
#### • ARM
- [ ] Windows
- [x] Linux
- [ ] MacOS
## Translations
## How to contribute
[Giuseppe Gigliotti](https://github.com/ReverbOD) / [Italian Translation](https://github.com/EStarium/antares/pull/20)
- 🌍 [Translate Antares](https://github.com/Fabio286/antares/wiki/Translate-Antares)
- 📖 [Contributors Guide](https://github.com/Fabio286/antares/wiki/Contributors-Guide)
- 🚧 [Project Board](https://github.com/orgs/antares-sql/projects/3/views/2)
## Contributors ✨
Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):
<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
<!-- prettier-ignore-start -->
<!-- markdownlint-disable -->
<table>
<tbody>
<tr>
<td align="center" valign="top" width="14.28%"><a href="https://fabiodistasio.it/"><img src="https://avatars.githubusercontent.com/u/31471771?v=4?s=100" width="100px;" alt="Fabio Di Stasio"/><br /><sub><b>Fabio Di Stasio</b></sub></a><br /><a href="https://github.com/antares-sql/antares/commits?author=Fabio286" title="Code">💻</a> <a href="#translation-Fabio286" title="Translation">🌍</a> <a href="https://github.com/antares-sql/antares/commits?author=Fabio286" title="Documentation">📖</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://www.linkedin.com/in/giulioganci/"><img src="https://avatars.githubusercontent.com/u/4192159?v=4?s=100" width="100px;" alt="Giulio Ganci"/><br /><sub><b>Giulio Ganci</b></sub></a><br /><a href="https://github.com/antares-sql/antares/commits?author=toriphes" title="Code">💻</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://christianratz.de/"><img src="https://avatars.githubusercontent.com/u/2630316?v=4?s=100" width="100px;" alt="Christian Ratz"/><br /><sub><b>Christian Ratz</b></sub></a><br /><a href="https://github.com/antares-sql/antares/commits?author=digitalgopnik" title="Code">💻</a> <a href="#translation-digitalgopnik" title="Translation">🌍</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://reverb6821.github.io/"><img src="https://avatars.githubusercontent.com/u/55198803?v=4?s=100" width="100px;" alt="Giuseppe Gigliotti"/><br /><sub><b>Giuseppe Gigliotti</b></sub></a><br /><a href="#translation-reverb6821" title="Translation">🌍</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/Mohd-PH"><img src="https://avatars.githubusercontent.com/u/9362157?v=4?s=100" width="100px;" alt="Mohd-PH"/><br /><sub><b>Mohd-PH</b></sub></a><br /><a href="#translation-Mohd-PH" title="Translation">🌍</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/hongkfui"><img src="https://avatars.githubusercontent.com/u/37477191?v=4?s=100" width="100px;" alt="hongkfui"/><br /><sub><b>hongkfui</b></sub></a><br /><a href="#translation-hongkfui" title="Translation">🌍</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/MrAnyx"><img src="https://avatars.githubusercontent.com/u/44176707?v=4?s=100" width="100px;" alt="Robin"/><br /><sub><b>Robin</b></sub></a><br /><a href="#translation-MrAnyx" title="Translation">🌍</a></td>
</tr>
<tr>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/daeleduardo"><img src="https://avatars.githubusercontent.com/u/8599078?v=4?s=100" width="100px;" alt="Daniel Eduardo"/><br /><sub><b>Daniel Eduardo</b></sub></a><br /><a href="#translation-daeleduardo" title="Translation">🌍</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://ngoquocdat.com/"><img src="https://avatars.githubusercontent.com/u/56961917?v=4?s=100" width="100px;" alt="Ngô Quốc Đạt"/><br /><sub><b>Ngô Quốc Đạt</b></sub></a><br /><a href="#translation-datlechin" title="Translation">🌍</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/IsamuSugi"><img src="https://avatars.githubusercontent.com/u/7746658?v=4?s=100" width="100px;" alt="Isamu Sugiura"/><br /><sub><b>Isamu Sugiura</b></sub></a><br /><a href="#translation-IsamuSugi" title="Translation">🌍</a></td>
<td align="center" valign="top" width="14.28%"><a href="http://rsacchetto.nexxontech.it/"><img src="https://avatars.githubusercontent.com/u/18429412?v=4?s=100" width="100px;" alt="Riccardo Sacchetto"/><br /><sub><b>Riccardo Sacchetto</b></sub></a><br /><a href="#platform-Occhioverde" title="Packaging/porting to new platform">📦</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://kilianstallinger.com"><img src="https://avatars.githubusercontent.com/u/5290318?v=4?s=100" width="100px;" alt="Kilian Stallinger"/><br /><sub><b>Kilian Stallinger</b></sub></a><br /><a href="https://github.com/antares-sql/antares/commits?author=kilianstallz" title="Code">💻</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/wenj91"><img src="https://avatars.githubusercontent.com/u/12549338?v=4?s=100" width="100px;" alt="文杰"/><br /><sub><b>文杰</b></sub></a><br /><a href="https://github.com/antares-sql/antares/commits?author=wenj91" title="Code">💻</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/goYou"><img src="https://avatars.githubusercontent.com/u/62732795?v=4?s=100" width="100px;" alt="goYou"/><br /><sub><b>goYou</b></sub></a><br /><a href="#translation-goYou" title="Translation">🌍</a></td>
</tr>
<tr>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/raliqala"><img src="https://avatars.githubusercontent.com/u/30502407?v=4?s=100" width="100px;" alt="Topollo"/><br /><sub><b>Topollo</b></sub></a><br /><a href="https://github.com/antares-sql/antares/commits?author=raliqala" title="Code">💻</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/SmileYzn"><img src="https://avatars.githubusercontent.com/u/5851851?v=4?s=100" width="100px;" alt="Cleverson"/><br /><sub><b>Cleverson</b></sub></a><br /><a href="#translation-SmileYzn" title="Translation">🌍</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/fredatgithub"><img src="https://avatars.githubusercontent.com/u/6720055?v=4?s=100" width="100px;" alt="fred"/><br /><sub><b>fred</b></sub></a><br /><a href="#translation-fredatgithub" title="Translation">🌍</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/xak666"><img src="https://avatars.githubusercontent.com/u/38811437?v=4?s=100" width="100px;" alt="xaka_xak"/><br /><sub><b>xaka_xak</b></sub></a><br /><a href="#translation-xak666" title="Translation">🌍</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://codepen.io/theo-billardey"><img src="https://avatars.githubusercontent.com/u/48206778?v=4?s=100" width="100px;" alt="Théo Billardey"/><br /><sub><b>Théo Billardey</b></sub></a><br /><a href="#translation-brdtheo" title="Translation">🌍</a></td>
<td align="center" valign="top" width="14.28%"><a href="http://yaskur.net"><img src="https://avatars.githubusercontent.com/u/9539970?v=4?s=100" width="100px;" alt="Muhammad Dyas Yaskur"/><br /><sub><b>Muhammad Dyas Yaskur</b></sub></a><br /><a href="#translation-dyaskur" title="Translation">🌍</a> <a href="https://github.com/antares-sql/antares/commits?author=dyaskur" title="Code">💻</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/jimcat8"><img src="https://avatars.githubusercontent.com/u/86754294?v=4?s=100" width="100px;" alt="tianci li"/><br /><sub><b>tianci li</b></sub></a><br /><a href="#translation-jimcat8" title="Translation">🌍</a></td>
</tr>
<tr>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/555cider"><img src="https://avatars.githubusercontent.com/u/73565447?v=4?s=100" width="100px;" alt="555cider"/><br /><sub><b>555cider</b></sub></a><br /><a href="#translation-555cider" title="Translation">🌍</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/m1khal3v"><img src="https://avatars.githubusercontent.com/u/41085561?v=4?s=100" width="100px;" alt="Anton Mikhalev"/><br /><sub><b>Anton Mikhalev</b></sub></a><br /><a href="#translation-m1khal3v" title="Translation">🌍</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://64k.nl/"><img src="https://avatars.githubusercontent.com/u/3864423?v=4?s=100" width="100px;" alt="René"/><br /><sub><b>René</b></sub></a><br /><a href="https://github.com/antares-sql/antares/commits?author=64knl" title="Code">💻</a> <a href="#translation-64knl" title="Translation">🌍</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/zxp19821005"><img src="https://avatars.githubusercontent.com/u/4915850?v=4?s=100" width="100px;" alt="Woodenman"/><br /><sub><b>Woodenman</b></sub></a><br /><a href="#platform-zxp19821005" title="Packaging/porting to new platform">📦</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/markusand"><img src="https://avatars.githubusercontent.com/u/12972543?v=4?s=100" width="100px;" alt="Marc Vilella"/><br /><sub><b>Marc Vilella</b></sub></a><br /><a href="#translation-markusand" title="Translation">🌍</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/Lawondyss"><img src="https://avatars.githubusercontent.com/u/272130?v=4?s=100" width="100px;" alt="Ladislav Vondráček"/><br /><sub><b>Ladislav Vondráček</b></sub></a><br /><a href="#translation-Lawondyss" title="Translation">🌍</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/zvlad"><img src="https://avatars.githubusercontent.com/u/9055134?v=4?s=100" width="100px;" alt="Vladyslav"/><br /><sub><b>Vladyslav</b></sub></a><br /><a href="#translation-zvlad" title="Translation">🌍</a></td>
</tr>
<tr>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/bagusindrayana"><img src="https://avatars.githubusercontent.com/u/36830534?v=4?s=100" width="100px;" alt="Bagus Indrayana"/><br /><sub><b>Bagus Indrayana</b></sub></a><br /><a href="https://github.com/antares-sql/antares/commits?author=bagusindrayana" title="Code">💻</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/penguinlab"><img src="https://avatars.githubusercontent.com/u/10959317?v=4?s=100" width="100px;" alt="Naoki Ishikawa"/><br /><sub><b>Naoki Ishikawa</b></sub></a><br /><a href="#translation-penguinlab" title="Translation">🌍</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://fazevedo.dev"><img src="https://avatars.githubusercontent.com/u/1640325?v=4?s=100" width="100px;" alt="Filipe Azevedo"/><br /><sub><b>Filipe Azevedo</b></sub></a><br /><a href="https://github.com/antares-sql/antares/commits?author=mangas" title="Code">💻</a></td>
</tr>
</tbody>
</table>
<!-- markdownlint-restore -->
<!-- prettier-ignore-end -->
<!-- ALL-CONTRIBUTORS-LIST:END -->
This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

BIN
assets/appx/StoreLogo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.4 KiB

View File

@ -0,0 +1,9 @@
[Desktop Entry]
Name=Antares SQL
Exec=startantares
Terminal=false
Type=Application
Icon=it.fabiodistasio.AntaresSQL
StartupWMClass=antares
Comment=A modern, fast and productivity driven SQL client with a focus in UX
Categories=Development;

View File

@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<component type="desktop-application">
<id>it.fabiodistasio.AntaresSQL</id>
<name>Antares SQL</name>
<metadata_license>CC0-1.0</metadata_license>
<project_license>MIT</project_license>
<developer_name>Fabio Di Stasio</developer_name>
<summary>A modern, fast and productivity driven SQL client with a focus in UX</summary>
<url type="homepage">https://antares-sql.app/</url>
<url type="bugtracker">https://github.com/antares-sql/antares/issues</url>
<url type="help">https://github.com/antares-sql/antares/discussions</url>
<url type="donation">https://paypal.me/fabiodistasio</url>
<description>
<p>Antares is an SQL client that aims to become an useful and complete tool, especially for developers. </p>
<p>The main goal is to develop a totally free, full featured, cross platform and open source alternative.
A modern application created with minimalism and semplicity in mind, with features in the right places, not hundreds of tiny buttons, nested tabs or submenu; productivity comes first.</p>
<p>Supported database: </p>
<ul>
<li>MySQL/MariaDB</li>
<li>PostgreSQL</li>
<li>SQLite</li>
<li>Firebird SQL</li>
</ul>
</description>
<screenshots>
<screenshot type="default">
<image type="source">https://lh3.googleusercontent.com/drive-viewer/AK7aPaC00fbmJIUcfwSPv-hjoxEmHS8NapR8qyOqOpopMIdcDFqYKNDs5mdIK08hnhZdHMrozTfR4Hx3Yj6bQ0zgfStEEFhxWg=s1600</image>
</screenshot>
</screenshots>
<content_rating type="oars-1.1" />
<releases>
<release version="v0.7.19" date="2023-11-01"/>
</releases>
</component>

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

BIN
assets/icon.icns Normal file

Binary file not shown.

BIN
assets/icon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

BIN
assets/linux/128x128.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

BIN
assets/linux/16x16.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 889 B

BIN
assets/linux/256x256.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

BIN
assets/linux/32x32.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

BIN
assets/linux/64x64.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

33
commitlint.config.js Normal file
View File

@ -0,0 +1,33 @@
module.exports = {
extends: ['@commitlint/config-conventional'],
rules: {
// TODO Add Scope Enum Here
// 'scope-enum': [2, 'always', ['yourscope', 'yourscope']],
'type-enum': [
2,
'always',
[
'feat',
'fix',
'docs',
'chore',
'style',
'refactor',
'build',
'ci',
'test',
'revert',
'perf'
]
],
'subject-case': [
2,
'never',
[
'upper-case',
'pascal-case',
'start-case'
]
]
}
};

38
docs/aur-badge.svg Normal file
View File

@ -0,0 +1,38 @@
<svg xmlns="http://www.w3.org/2000/svg" style="isolation:isolate" width="182" height="56">
<defs>
<clipPath id="prefix__a">
<path d="M0 0h182v56H0z" />
</clipPath>
</defs>
<g clip-path="url(#prefix__a)">
<!-- <path d="M2.5.5h178a2 2 0 012 2v52a2 2 0 01-2 2H2.5a2 2 0" fill="#252525" stroke="#FFF" stroke-width="2"/> -->
<rect x="0" y="0" width="182" height="56" fill="#252525" stroke="#FFF" stroke-width="1" rx="0" />
<g fill-rule="evenodd" fill="#FFF">
<path
d="M60.898 13.777c-2.343-.003-4.288.477-5.04.739l-.775 4.181c-.002.015 3.854-1.028 5.552-.967 2.812.101 3.071 1.075 3.021 2.389.048.077-.725-1.188-3.158-1.23-3.068-.053-7.4 1.087-7.394 5.719-.082 5.21 3.893 6.743 6.6 6.771 2.434-.044 3.575-.921 4.2-1.391.822-.859 1.761-1.723 2.657-2.759-.847 1.541-1.583 2.606-2.348 3.422v.688l3.7-.623.025-10.056c-.037-1.423.816-6.869-7.04-6.883zm-.531 8.756c1.533.021 3.292.777 3.295 2.596.007 1.655-2.073 2.545-3.427 2.531-1.354-.014-3.15-1.064-3.158-2.678.026-1.442 1.694-2.486 3.29-2.449zM70.378 14.707l-.026 16.653 4.31-.831.008-9.442c.001-1.406 2.009-3.048 4.528-3.022.535-.968 1.54-3.44 1.785-4.003-5.629-.013-5.701 1.618-6.68 2.421-.01-1.531-.003-2.45-.003-2.45l-3.922.674zM94.632 16.893c-.041-.02-2.247-2.581-6.683-2.601-4.154-.069-8.814 1.542-8.888 8.508.036 6.125 4.476 8.518 8.912 8.565 4.747.049 6.636-2.969 6.749-3.043-.566-.492-2.688-2.594-2.688-2.594s-1.325 1.887-3.896 1.911c-2.572.025-4.807-1.988-4.839-4.795-.033-2.808 2.055-4.329 4.858-4.452 2.427 0 3.827 1.567 3.827 1.567l2.648-3.066zM100.065 8.879l-4.069.956.03 21.691 4.008-.724.046-10.207c.009-1.071 1.548-2.715 4.12-2.662 2.458.025 3.007 1.638 3.001 1.842l.071 11.817 3.952-.698.015-12.531c.026-1.206-2.641-3.753-6.928-3.771-2.038.004-3.166.465-3.74.805-.983.759-2.105 1.486-3.209 2.414 1.02-1.31 1.877-2.216 2.713-2.89l-.01-6.042z" />
</g>
<g fill-rule="evenodd" fill="#1793D1">
<path
d="M114.673 9.441l1.835-.459.087 21.868-1.865.318-.057-21.727zM119.663 15.968l1.608-.716.014 15.68-1.554.321-.068-15.285zm-.383-5.654l1.297-1.059 1.078 1.199-1.298 1.086-1.077-1.226zM124.296 15.682l1.835-.374.009 3.278c0 .141 1.008-3.662 5.868-3.577 4.719.026 5.491 3.679 5.465 4.498l.058 11.527-1.609.35-.009-11.386c.019-.333-.735-3.145-4.07-3.155-3.334-.01-5.644 2.422-5.64 3.975l.026 10.03-1.864.487-.069-15.653zM153.547 31.117l-1.836.375-.008-3.278c0-.141-1.009 3.662-5.868 3.577-4.719-.026-5.491-3.679-5.465-4.498l-.059-11.528 1.95-.393.031 11.386c0 .311.373 3.189 3.707 3.199 3.335.01 5.67-2.008 5.687-5.046l-.024-8.983 1.815-.464.07 15.653zM157.144 15.553l-1.287 1.007 4.935 6.458-5.263 7.46 1.365 1.014 4.947-6.929 5.107 7.093 1.263-1.007-5.473-7.584 4.366-6.132-1.342-1.136-3.977 5.675-4.641-5.919z" />
</g>
<path
d="M33.112 3.879c-2.147 5.264-3.442 8.708-5.833 13.816 1.466 1.553 3.265 3.363 6.187 5.406-3.141-1.292-5.284-2.59-6.885-3.937C23.521 25.549 18.728 34.643 9 52.121c7.645-4.414 13.572-7.135 19.095-8.173a13.965 13.965 0 01-.362-3.275l.009-.245c.121-4.898 2.669-8.665 5.688-8.409 3.018.255 5.364 4.436 5.243 9.334a13.819 13.819 0 01-.309 2.631c5.464 1.069 11.327 3.783 18.869 8.137-1.487-2.738-2.814-5.206-4.082-7.556-1.997-1.548-4.079-3.562-8.328-5.743 2.92.759 5.011 1.634 6.641 2.613C38.575 17.439 37.532 14.251 33.112 3.879z"
fill-rule="evenodd" fill="#1793D1" />
<g fill="#1793D1">
<path
d="M170.614 30.156v-1.354h-.505v-.181h1.216v.181h-.508v1.354h-.203zM171.536 30.156v-1.535h.306l.363 1.087c.033.101.058.176.073.227a8.63 8.63 0 01.082-.246l.367-1.068H173v1.535h-.196v-1.285l-.446 1.285h-.183l-.443-1.307v1.307h-.196z" />
</g>
<g fill="#1793D1">
<path
d="M57.471 47.815v-1.322h-.494v-.177h1.189v.177h-.496v1.322h-.199zM58.372 47.815v-1.499h.299l.355 1.061.072.222c.017-.054.043-.134.079-.24l.359-1.043h.267v1.499h-.191V46.56l-.436 1.255h-.179l-.433-1.276v1.276h-.192" />
</g>
<g clip-path="url(#prefix__b)"><text transform="translate(95.023 43.899)" font-family="sans-serif"
font-weight="700" font-size="10" fill="#fff">user repository</text></g>
<defs>
<clipPath id="prefix__b">
<path transform="translate(87 32.142)" d="M0 0h86v14.98H0z" />
</clipPath>
</defs>
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.2 KiB

BIN
docs/gh-logo-2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

BIN
docs/gh-logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 304 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 172 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 224 KiB

After

Width:  |  Height:  |  Size: 260 KiB

0
misc/.gitkeep Normal file
View File

31375
package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

View File

@ -1,30 +1,108 @@
{
"name": "antares",
"productName": "Antares",
"version": "0.0.4",
"description": "A cross-platform easy to use SQL client.",
"main": "src/main/index.js",
"version": "0.7.24",
"description": "A modern, fast and productivity driven SQL client with a focus in UX.",
"license": "MIT",
"repository": "https://github.com/EStarium/antares.git",
"repository": "https://github.com/antares-sql/antares.git",
"scripts": {
"dev": "cross-env NODE_ENV=development electron-webpack dev",
"compile": "electron-webpack",
"build": "cross-env NODE_ENV=production npm run compile && electron-builder",
"debug": "npm run rebuild:electron && npm run debug-runner",
"debug-runner": "node scripts/devRunner.js --remote-debug",
"compile": "npm run compile:main && npm run compile:workers && npm run compile:renderer",
"compile:main": "webpack --mode=production --config webpack.main.config.js",
"compile:workers": "webpack --mode=production --config webpack.workers.config.js",
"compile:renderer": "webpack --mode=production --config webpack.renderer.config.js",
"build": "cross-env NODE_ENV=production npm run compile && electron-builder --publish never",
"build:appx": "npm run build -- --win appx",
"rebuild:electron": "rimraf ./dist && npm run postinstall && npm run devtools:install",
"release": "standard-version",
"release:pre": "npm run release -- --prerelease alpha"
"release:beta": "npm run release -- --prerelease beta",
"devtools:install": "node scripts/devtoolsInstaller",
"postinstall": "electron-builder install-app-deps",
"translation:check": "ts-node ./scripts/translationCheck.ts",
"test:e2e": "npm run compile && npm run test:e2e-dry",
"test:e2e-dry": "xvfb-maybe -- playwright test",
"lint": "eslint . --ext .js,.ts,.vue && stylelint \"./src/**/*.{css,scss,sass,vue}\"",
"lint:fix": "eslint . --ext .js,.ts,.vue --fix && stylelint \"./src/**/*.{css,scss,sass,vue}\" --fix",
"contributors:add": "all-contributors add",
"contributors:generate": "all-contributors generate",
"prepare": "husky"
},
"author": "Fabio Di Stasio <info@fabiodistasio.it>",
"main": "./dist/main.js",
"antares": {
"devtoolsId": "nhdogjmejiglipccpnnnanhbledajbpd"
},
"author": "Fabio Di Stasio <fabio286@gmail.com>",
"build": {
"npmRebuild": false,
"asar": true,
"appId": "com.estarium.antares",
"appId": "com.fabio286.antares",
"artifactName": "${productName}-${version}-${os}_${arch}.${ext}",
"asar": true,
"buildDependenciesFromSource": true,
"directories": {
"output": "build",
"buildResources": "assets"
},
"asarUnpack": "**\\*.{node,dll}",
"files": [
"dist/**/*",
"src/**/*",
"node_modules/**/*",
"node_modules",
"package.json"
],
"win": {
"target": [
"nsis",
"portable"
]
},
"mac": {
"target": {
"target": "default",
"arch": [
"x64"
]
}
},
"linux": {
"target": [
{
"target": "deb",
"arch": [
"x64",
"armv7l"
]
},
{
"target": "AppImage",
"arch": [
"x64",
"armv7l"
]
}
],
"icon": "assets/linux",
"category": "Development"
},
"appImage": {
"license": "./LICENSE",
"category": "Development"
},
"nsis": {
"license": "./LICENSE",
"installerIcon": "assets/icon.ico",
"uninstallerIcon": "assets/icon.ico",
"installerHeader": "assets/icon.ico"
},
"portable": {
"artifactName": "${productName}-${version}-portable.exe"
},
"appx": {
"displayName": "Antares SQL",
"backgroundColor": "transparent",
"showNameOnTiles": true,
"identityName": "62514FabioDiStasio.AntaresSQLClient",
"publisher": "CN=1A2729ED-865C-41D2-9038-39AE2A63AA52",
"applicationId": "FabioDiStasio.AntaresSQLClient"
},
"dmg": {
"contents": [
{
@ -38,69 +116,102 @@
"path": "/Applications"
}
]
},
"win": {
"target": [
"nsis"
]
},
"linux": {
"target": [
"deb",
"AppImage"
],
"category": "Development"
}
},
"electronWebpack": {
"whiteListedModules": [
"codemirror"
],
"renderer": {
"webpackConfig": "webpack.config.js"
}
},
"dependencies": {
"codemirror": "^5.56.0",
"electron-log": "^4.2.2",
"electron-updater": "^4.3.4",
"lodash": "^4.17.19",
"material-design-icons": "^3.0.1",
"moment": "^2.27.0",
"mssql": "^6.2.1",
"mysql": "^2.18.1",
"pg": "^8.3.0",
"source-map-support": "^0.5.16",
"spectre.css": "^0.5.9",
"vue-click-outside": "^1.1.0",
"vue-i18n": "^8.20.0",
"vue-the-mask": "^0.11.1",
"vuedraggable": "^2.24.0",
"vuex": "^3.5.1",
"vuex-persist": "^2.2.0"
"@electron/remote": "~2.0.1",
"@fabio286/ssh2-promise": "~1.0.4-b",
"@faker-js/faker": "~6.1.2",
"@jamescoyle/vue-icon": "~0.1.2",
"@mdi/js": "~7.2.96",
"@turf/helpers": "~6.5.0",
"@vue/compiler-sfc": "~3.2.33",
"@vueuse/core": "~10.4.1",
"ace-builds": "~1.24.1",
"babel-loader": "~8.2.3",
"better-sqlite3": "~9.4.1",
"chalk": "~4.1.2",
"cross-env": "~7.0.2",
"css-loader": "~6.5.0",
"electron-log": "~5.0.1",
"electron-store": "~8.1.0",
"electron-updater": "~4.6.5",
"electron-window-state": "~5.0.3",
"encoding": "~0.1.13",
"file-loader": "~6.2.0",
"floating-vue": "~2.0.0-beta.20",
"html-webpack-plugin": "~5.5.0",
"json2php": "~0.0.7",
"leaflet": "~1.7.1",
"marked": "~12.0.0",
"mini-css-extract-plugin": "~2.4.5",
"moment": "~2.30.1",
"mysql2": "~3.9.1",
"node-firebird": "~1.1.4",
"node-loader": "~2.0.0",
"pg": "~8.11.3",
"pg-connection-string": "~2.5.0",
"pg-query-stream": "~4.2.3",
"pgsql-ast-parser": "~7.2.1",
"pinia": "~2.1.7",
"postcss-html": "~1.5.0",
"progress-webpack-plugin": "~1.0.12",
"rimraf": "~3.0.2",
"sass": "~1.42.1",
"sass-loader": "~12.3.0",
"source-map-support": "~0.5.20",
"spectre.css": "~0.5.9",
"sql-formatter": "~13.0.0",
"sql-highlight": "~4.4.0",
"style-loader": "~3.3.1",
"tree-kill": "~1.2.2",
"ts-loader": "~9.2.8",
"typescript": "~4.6.3",
"unzip-crx-3": "~0.2.0",
"v-mask": "~2.3.0",
"vue": "~3.4.19",
"vue-i18n": "~9.2.2",
"vue-loader": "~16.8.3",
"vuedraggable": "~4.1.0",
"webpack": "~5.72.0",
"webpack-cli": "~4.9.1"
},
"devDependencies": {
"babel-eslint": "^10.1.0",
"cross-env": "^7.0.2",
"electron": "^9.1.2",
"electron-builder": "^22.8.0",
"electron-devtools-installer": "^3.1.1",
"electron-webpack": "^2.8.2",
"electron-webpack-vue": "^2.4.0",
"eslint": "^6.8.0",
"eslint-config-standard": "^14.1.1",
"eslint-plugin-import": "^2.22.0",
"eslint-plugin-node": "^11.1.0",
"eslint-plugin-promise": "^4.2.1",
"eslint-plugin-standard": "^4.0.1",
"eslint-plugin-vue": "^6.2.2",
"node-sass": "^4.14.1",
"sass-loader": "^9.0.3",
"standard-version": "^8.0.2",
"stylelint": "^13.6.1",
"stylelint-config-standard": "^20.0.0",
"stylelint-scss": "^3.18.0",
"vue": "^2.6.11",
"webpack": "^4.44.1"
"@babel/eslint-parser": "~7.15.7",
"@babel/preset-env": "~7.15.8",
"@babel/preset-typescript": "~7.16.7",
"@commitlint/cli": "~19.0.3",
"@commitlint/config-conventional": "~19.0.3",
"@playwright/test": "~1.28.1",
"@types/better-sqlite3": "~7.5.0",
"@types/leaflet": "~1.7.9",
"@types/marked": "~4.0.7",
"@types/node": "~17.0.23",
"@types/pg": "~8.6.5",
"@types/ssh2": "~1.11.6",
"@typescript-eslint/eslint-plugin": "~5.18.0",
"@typescript-eslint/parser": "~5.18.0",
"all-contributors-cli": "~6.20.0",
"electron": "~26.6.9",
"electron-builder": "~24.6.4",
"eslint": "~7.32.0",
"eslint-config-standard": "~16.0.3",
"eslint-plugin-import": "~2.24.2",
"eslint-plugin-node": "~11.1.0",
"eslint-plugin-promise": "~5.2.0",
"eslint-plugin-simple-import-sort": "~10.0.0",
"eslint-plugin-vue": "~8.0.3",
"husky": "~9.0.11",
"playwright": "~1.28.1",
"playwright-core": "~1.28.1",
"standard-version": "~9.3.1",
"stylelint": "^15.11.0",
"stylelint-config-recommended-vue": "~1.5.0",
"stylelint-config-standard": "~34.0.0",
"stylelint-scss": "~5.3.0",
"ts-node": "~10.9.1",
"vue-eslint-parser": "~8.3.0",
"webpack-dev-server": "~4.11.1",
"xvfb-maybe": "~0.2.1"
}
}

128
scripts/devRunner.js Normal file
View File

@ -0,0 +1,128 @@
process.env.NODE_ENV = 'development';
// process.env.ELECTRON_ENABLE_LOGGING = true
process.env.ELECTRON_DISABLE_SECURITY_WARNINGS = false;
const chalk = require('chalk');
const electron = require('electron');
const webpack = require('webpack');
const WebpackDevServer = require('webpack-dev-server');
const kill = require('tree-kill');
const path = require('path');
const { spawn } = require('child_process');
const mainConfig = require('../webpack.main.config');
const rendererConfig = require('../webpack.renderer.config');
const workersConfig = require('../webpack.workers.config');
let electronProcess = null;
let manualRestart = null;
const remoteDebugging = process.argv.includes('--remote-debug');
if (remoteDebugging) {
// disable devtools open in electron
process.env.RENDERER_REMOTE_DEBUGGING = true;
}
async function killElectron (pid) {
return new Promise((resolve, reject) => {
if (pid) {
kill(pid, 'SIGKILL', err => {
if (err) reject(err);
resolve();
});
}
else
resolve();
});
}
async function restartElectron () {
console.log(chalk.gray('\nStarting electron...'));
const { pid } = electronProcess || {};
await killElectron(pid);
electronProcess = spawn(electron, [
path.join(__dirname, '../dist/main.js'),
// '--enable-logging', // Enable to show logs from all electron processes
remoteDebugging ? '--inspect=9222' : '',
remoteDebugging ? '--remote-debugging-port=9223' : ''
]);
electronProcess.stdout.on('data', data => {
console.log(chalk.white(data.toString()));
});
electronProcess.stderr.on('data', data => {
console.error(chalk.red(data.toString()));
});
electronProcess.on('exit', () => {
if (!manualRestart) process.exit(0);
});
}
function startWorkers () {
const compiler = webpack(workersConfig);
const { name } = compiler;
compiler.hooks.afterEmit.tap('afterEmit', () => {
console.log(chalk.gray(`\nCompiled ${name} script!`));
console.log(chalk.gray(`\nWatching file changes for ${name} script...`));
});
compiler.watch({ aggregateTimeout: 500 }, err => {
if (err) console.error(chalk.red(err));
});
}
function startMain () {
const compiler = webpack(mainConfig);
const { name } = compiler;
compiler.hooks.afterEmit.tap('afterEmit', async () => {
console.log(chalk.gray(`\nCompiled ${name} script!`));
manualRestart = true;
await restartElectron();
startWorkers();
setTimeout(() => {
manualRestart = false;
}, 2500);
console.log(chalk.gray(`\nWatching file changes for ${name} script...`));
});
compiler.watch({ aggregateTimeout: 500 }, err => {
if (err) console.error(chalk.red(err));
});
}
function startRenderer (callback) {
const compiler = webpack(rendererConfig);
const { name } = compiler;
compiler.hooks.afterEmit.tap('afterEmit', () => {
console.log(chalk.gray(`\nCompiled ${name} script!`));
console.log(chalk.gray(`\nWatching file changes for ${name} script...`));
});
const server = new WebpackDevServer(compiler, {
port: 9080,
hot: true,
client: {
overlay: true,
logging: 'warn'
}
});
server.startCallback(err => {
if (err) console.error(chalk.red(err));
callback();
});
}
startRenderer(startMain);

View File

@ -0,0 +1,50 @@
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-nocheck
const fs = require('fs');
const path = require('path');
const https = require('https');
const unzip = require('unzip-crx-3');
const { antares } = require('../package.json');
const extensionID = antares.devtoolsId;
const destFolder = path.resolve(__dirname, `../misc/${extensionID}`);
const filePath = path.resolve(__dirname, `${destFolder}${extensionID}.crx`);
const fileUrl = `https://clients2.google.com/service/update2/crx?response=redirect&acceptformat=crx2,crx3&x=id%3D${extensionID}%26uc&prodversion=32`;
const fileStream = fs.createWriteStream(filePath);
const downloadFile = url => {
return new Promise((resolve, reject) => {
const request = https.get(url);
request.on('response', response => {
if (response.statusCode && response.statusCode >= 300 && response.statusCode < 400 && response.headers.location) {
return downloadFile(response.headers.location)
.then(resolve)
.catch(reject);
}
response.pipe(fileStream);
response.on('close', () => {
console.log('Devtools download completed!');
resolve();
});
response.on('error', reject);
});
request.on('error', reject);
request.end();
});
};
(async () => {
try {
await downloadFile(fileUrl);
await unzip(filePath, destFolder);
fs.unlinkSync(filePath);
fs.unlinkSync(`${destFolder}/package.json`);// <- Avoid to display annoyng npm script in vscode
process.exit();
}
catch (error) {
console.log(error);
}
})();

View File

@ -0,0 +1,45 @@
/* eslint-disable @typescript-eslint/ban-ts-comment */
import { enUS } from '../src/renderer/i18n/en-US';
import { localesNames } from '../src/renderer/i18n/supported-locales';
const locale = process.argv[2];
let fullCount = 0;
let checkCount = 0;
if (!locale) {
console.log('Please specify locale code as first argument.');
process.exit();
}
if (!Object.keys(localesNames).includes(locale)) {
console.log(`Translation ${locale} not fount in supported locales.`);
process.exit();
}
console.log('Checking missing translations for:', locale);
const i18nFile = require(`../src/renderer/i18n/${locale}`)[locale.replace('-', '')];
for (const group in enUS) {
// @ts-ignore
fullCount += Object.keys(enUS[group]).length;
if (!Object.keys(i18nFile).includes(group)) {
console.log(`Group "\u001b[31m${group}\u001b[0m" missing!`);
continue;
}
// @ts-ignore
for (const term in enUS[group]) {
if (!Object.keys(i18nFile[group]).includes(term))
console.log(`Translation "\u001b[33m${group}.${term}\u001b[0m" missing!`);
// @ts-ignore
else if (i18nFile[group][term] === enUS[group][term]) {
console.log(`Term "\u001b[36m${group}.${term}\u001b[0m" not translated!`);
checkCount++;
}
else
checkCount++;
}
}
console.log(checkCount, 'of', fullCount, 'strings are present in', locale, `(\u001b[32m${(checkCount*100/fullCount).toFixed(1)}%\u001b[0m)`);

158
snap/snapcraft.yaml Normal file
View File

@ -0,0 +1,158 @@
name: antares
adopt-info: antares
summary: Open source SQL client made to be simple and complete.
description: |
Antares is an SQL client that aims to become an useful and complete tool, especially for developers.
The target is to support as many databases as possible, and all major operating systems, including the ARM versions.
base: core22
grade: stable
confinement: strict
architectures:
- build-on: amd64
compression: lzo
layout:
/etc/nsswitch.conf:
bind-file: $SNAP/etc/nsswitch.conf
parts:
antares:
plugin: dump
source: .
override-build: |
snapcraftctl build
ARCHITECTURE=$(dpkg --print-architecture)
if [ "${ARCHITECTURE}" = "amd64" ]; then
FILTER="amd64.deb"
else
echo "ERROR! Antares only produces debs for amd64. Failing the build here."
exit 1
fi
# Get the latest releases json
echo "Get GitHub releases..."
wget --quiet https://api.github.com/repos/fabio286/antares/releases -O releases.json
# Get the version from the tag_name and the download URL.
VERSION=$(jq . releases.json | grep tag_name | head -1 | cut -d'"' -f4 | sed s'/release-//')
DEB_URL=$(cat releases.json | jq -r ".[0].assets[] | select(.name | test(\"${FILTER}\")) | .browser_download_url")
DEB=$(basename "${DEB_URL}")
echo "Downloading ${DEB_URL}..."
wget --quiet "${DEB_URL}" -O "${SNAPCRAFT_PART_INSTALL}/${DEB}"
echo "Unpacking ${DEB}..."
dpkg -x "${SNAPCRAFT_PART_INSTALL}/${DEB}" ${SNAPCRAFT_PART_INSTALL}
rm -f releases.json 2>/dev/null
rm -f "${SNAPCRAFT_PART_INSTALL}/${DEB}" 2>/dev/null
echo $VERSION > $SNAPCRAFT_STAGE/version
# Correct path to icon.
sed -i 's|Icon=antares|Icon=/usr/share/icons/hicolor/256x256/apps/antares\.png|g' ${SNAPCRAFT_PART_INSTALL}/usr/share/applications/antares.desktop
# Delete usr/bin/antares, it's a broken symlink pointing outside the snap.
rm -f ${SNAPCRAFT_PART_INSTALL}/usr/bin/antares
chmod -s ${SNAPCRAFT_PART_INSTALL}/opt/Antares/chrome-sandbox
snapcraftctl set-version "$(echo $VERSION)"
build-packages:
- dpkg
- jq
- sed
- wget
stage-packages:
- fcitx-frontend-gtk3
- libappindicator3-1
- libasound2
- libcurl4
- libgconf-2-4
- libgtk-3-0
- libnotify4
- libnspr4
- libnss3
- libpcre3
- libpulse0
- libxss1
- libsecret-1-0
- libxtst6
- libxkbfile1
- gcc-10-base
- libapparmor1
- libblkid1
- libbsd0
- libcom-err2
- libcrypt1
- libdb5.3
- libdbus-1-3
- libexpat1
- libffi8
- libgcc-s1
- libgcrypt20
- libglib2.0-0
- libgmp10
- libgnutls30
- libgpg-error0
- libgssapi-krb5-2
- libhogweed6
- libidn2-0
- libjson-c5
- libk5crypto3
- libkeyutils1
- libkrb5-3
- libkrb5support0
- liblz4-1
- liblzma5
- libmount1
- libnettle8
- libp11-kit0
- libpcre2-8-0
- libselinux1
- libsqlite3-0
- libssl3
- libstdc++6
- libsystemd0
- libtasn1-6
- libudev1
- libunistring2
- libuuid1
- libwrap0
- libzstd1
- zlib1g
- libx11-xcb1
- libdrm2
- libgbm1
- libxcb-dri3-0
cleanup:
after: [antares]
plugin: nil
build-snaps: [gnome-42-2204]
override-prime: |
set -eux
cd /snap/gnome-42-2204/current
find . -type f,l -exec rm -f $SNAPCRAFT_PRIME/{} \;
mdns-lookup:
# Make resolution of ".local" host names (Zero-Conf/mDNS/DNS-SD)
# working: Take the original nsswitch.conf file from the base
# Snap and add "mdns4_minimal [NOTFOUND=return]" to its "hosts:" line
# Also install corresponding mdns4_minimal plug-in
# See: https://forum.snapcraft.io/t/no-mdns-support-in-snaps-should-core-have-a-modified-nsswitch-conf/
plugin: nil
stage-packages:
- libnss-mdns
override-prime: |
set -eux
sed -Ee 's/^\s*hosts:(\s+)files/hosts:\1files mdns4_minimal \[NOTFOUND=return\]/' /snap/core22/current/etc/nsswitch.conf > $SNAPCRAFT_STAGE/etc/nsswitch.conf
snapcraftctl prime
prime:
- lib/$SNAPCRAFT_ARCH_TRIPLET/libnss_mdns4_minimal*
- etc/nsswitch.conf
apps:
antares:
command: opt/Antares/antares --no-sandbox
desktop: usr/share/applications/antares.desktop
extensions: [gnome]
plugs:
- browser-support
- cups-control
- home
- network
- opengl
- pulseaudio
- removable-media
- unity7

221
src/common/FakerMethods.ts Normal file
View File

@ -0,0 +1,221 @@
/* eslint-disable @typescript-eslint/no-explicit-any */
export default class {
static get _methods () {
return [
{ name: 'zipCode', group: 'address', types: ['string'] },
{ name: 'zipCodeByState', group: 'address', types: ['string'] },
{ name: 'city', group: 'address', types: ['string'] },
{ name: 'cityPrefix', group: 'address', types: ['string'] },
{ name: 'citySuffix', group: 'address', types: ['string'] },
{ name: 'streetName', group: 'address', types: ['string'] },
{ name: 'streetAddress', group: 'address', types: ['string'] },
{ name: 'streetSuffix', group: 'address', types: ['string'] },
{ name: 'streetPrefix', group: 'address', types: ['string'] },
{ name: 'secondaryAddress', group: 'address', types: ['string'] },
{ name: 'county', group: 'address', types: ['string'] },
{ name: 'country', group: 'address', types: ['string'] },
{ name: 'countryCode', group: 'address', types: ['string'] },
{ name: 'state', group: 'address', types: ['string'] },
{ name: 'stateAbbr', group: 'address', types: ['string'] },
{ name: 'latitude', group: 'address', types: ['string'] },
{ name: 'longitude', group: 'address', types: ['string'] },
{ name: 'direction', group: 'address', types: ['string'] },
{ name: 'cardinalDirection', group: 'address', types: ['string'] },
{ name: 'ordinalDirection', group: 'address', types: ['string'] },
// { name: 'nearbyGPSCoordinate', group: 'address', types: ['string'] },
{ name: 'timeZone', group: 'address', types: ['string'] },
{ name: 'color', group: 'commerce', types: ['string'] },
{ name: 'department', group: 'commerce', types: ['string'] },
{ name: 'productName', group: 'commerce', types: ['string'] },
{ name: 'price', group: 'commerce', types: ['string', 'float'] },
{ name: 'productAdjective', group: 'commerce', types: ['string'] },
{ name: 'productMaterial', group: 'commerce', types: ['string'] },
{ name: 'product', group: 'commerce', types: ['string'] },
{ name: 'productDescription', group: 'commerce', types: ['string'] },
{ name: 'suffixes', group: 'company', types: ['string'] },
{ name: 'companyName', group: 'company', types: ['string'] },
{ name: 'companySuffix', group: 'company', types: ['string'] },
{ name: 'catchPhrase', group: 'company', types: ['string'] },
{ name: 'bs', group: 'company', types: ['string'] },
{ name: 'catchPhraseAdjective', group: 'company', types: ['string'] },
{ name: 'catchPhraseDescriptor', group: 'company', types: ['string'] },
{ name: 'catchPhraseNoun', group: 'company', types: ['string'] },
{ name: 'bsAdjective', group: 'company', types: ['string'] },
{ name: 'bsBuzz', group: 'company', types: ['string'] },
{ name: 'bsNoun', group: 'company', types: ['string'] },
{ name: 'column', group: 'database', types: ['string'] },
{ name: 'type', group: 'database', types: ['string'] },
{ name: 'collation', group: 'database', types: ['string'] },
{ name: 'engine', group: 'database', types: ['string'] },
{ name: 'now', group: 'date', types: ['string', 'datetime'] },
{ name: 'past', group: 'date', types: ['string', 'datetime'] },
{ name: 'future', group: 'date', types: ['string', 'datetime'] },
// { name: 'between', group: 'date', types: ['string'] },
{ name: 'recent', group: 'date', types: ['string', 'datetime'] },
{ name: 'soon', group: 'date', types: ['string', 'datetime'] },
{ name: 'month', group: 'date', types: ['string'] },
{ name: 'weekday', group: 'date', types: ['string'] },
{ name: 'account', group: 'finance', types: ['string', 'number'] },
{ name: 'accountName', group: 'finance', types: ['string'] },
{ name: 'routingNumber', group: 'finance', types: ['string', 'number'] },
{ name: 'mask', group: 'finance', types: ['string', 'number'] },
{ name: 'amount', group: 'finance', types: ['string', 'float'] },
{ name: 'transactionType', group: 'finance', types: ['string'] },
{ name: 'currencyCode', group: 'finance', types: ['string'] },
{ name: 'currencyName', group: 'finance', types: ['string'] },
{ name: 'currencySymbol', group: 'finance', types: ['string'] },
{ name: 'bitcoinAddress', group: 'finance', types: ['string'] },
{ name: 'litecoinAddress', group: 'finance', types: ['string'] },
{ name: 'creditCardNumber', group: 'finance', types: ['string'] },
{ name: 'creditCardCVV', group: 'finance', types: ['string', 'number'] },
{ name: 'ethereumAddress', group: 'finance', types: ['string'] },
{ name: 'iban', group: 'finance', types: ['string'] },
{ name: 'bic', group: 'finance', types: ['string'] },
{ name: 'transactionDescription', group: 'finance', types: ['string'] },
{ name: 'branch', group: 'git', types: ['string'] },
{ name: 'commitEntry', group: 'git', types: ['string'] },
{ name: 'commitMessage', group: 'git', types: ['string'] },
{ name: 'commitSha', group: 'git', types: ['string'] },
{ name: 'shortSha', group: 'git', types: ['string'] },
{ name: 'abbreviation', group: 'hacker', types: ['string'] },
{ name: 'adjective', group: 'hacker', types: ['string'] },
{ name: 'noun', group: 'hacker', types: ['string'] },
{ name: 'verb', group: 'hacker', types: ['string'] },
{ name: 'ingverb', group: 'hacker', types: ['string'] },
{ name: 'phrase', group: 'hacker', types: ['string'] },
// { name: 'avatar', group: 'internet', types: ['string'] },
{ name: 'email', group: 'internet', types: ['string'] },
{ name: 'exampleEmail', group: 'internet', types: ['string'] },
{ name: 'userName', group: 'internet', types: ['string'] },
{ name: 'protocol', group: 'internet', types: ['string'] },
{ name: 'url', group: 'internet', types: ['string'] },
{ name: 'domainName', group: 'internet', types: ['string'] },
{ name: 'domainSuffix', group: 'internet', types: ['string'] },
{ name: 'domainWord', group: 'internet', types: ['string'] },
{ name: 'ip', group: 'internet', types: ['string'] },
{ name: 'ipv6', group: 'internet', types: ['string'] },
{ name: 'userAgent', group: 'internet', types: ['string'] },
{ name: 'color', group: 'internet', types: ['string'] },
{ name: 'mac', group: 'internet', types: ['string'] },
{ name: 'password', group: 'internet', types: ['string'] },
{ name: 'word', group: 'lorem', types: ['string'] },
{ name: 'words', group: 'lorem', types: ['string'] },
{ name: 'sentence', group: 'lorem', types: ['string'] },
{ name: 'slug', group: 'lorem', types: ['string'] },
{ name: 'sentences', group: 'lorem', types: ['string'] },
{ name: 'paragraph', group: 'lorem', types: ['string'] },
{ name: 'paragraphs', group: 'lorem', types: ['string'] },
{ name: 'text', group: 'lorem', types: ['string'] },
{ name: 'lines', group: 'lorem', types: ['string'] },
{ name: 'genre', group: 'music', types: ['string'] },
{ name: 'firstName', group: 'name', types: ['string'] },
{ name: 'lastName', group: 'name', types: ['string'] },
{ name: 'middleName', group: 'name', types: ['string'] },
{ name: 'findName', group: 'name', types: ['string'] },
{ name: 'jobTitle', group: 'name', types: ['string'] },
{ name: 'gender', group: 'name', types: ['string'] },
{ name: 'prefix', group: 'name', types: ['string'] },
{ name: 'suffix', group: 'name', types: ['string'] },
{ name: 'title', group: 'name', types: ['string'] },
{ name: 'jobDescriptor', group: 'name', types: ['string'] },
{ name: 'jobArea', group: 'name', types: ['string'] },
{ name: 'jobType', group: 'name', types: ['string'] },
{ name: 'phoneNumber', group: 'phone', types: ['string'] },
{ name: 'phoneNumberFormat', group: 'phone', types: ['string'] },
{ name: 'phoneFormats', group: 'phone', types: ['string'] },
{ name: 'number', group: 'random', types: ['string', 'number'], params: ['min', 'max'] },
{ name: 'float', group: 'random', types: ['string', 'float'], params: ['min', 'max'] },
{ name: 'arrayElement', group: 'random', types: ['string'] },
{ name: 'arrayElements', group: 'random', types: ['string'] },
{ name: 'objectElement', group: 'random', types: ['string'] },
{ name: 'uuid', group: 'random', types: ['string', 'uuid'] },
{ name: 'boolean', group: 'random', types: ['string'] },
{ name: 'word', group: 'random', types: ['string'] },
{ name: 'words', group: 'random', types: ['string'] },
// { name: 'image', group: 'random', types: ['string'] },
{ name: 'locale', group: 'random', types: ['string'] },
{ name: 'alpha', group: 'random', types: ['string'] },
{ name: 'alphaNumeric', group: 'random', types: ['string'] },
{ name: 'hexaDecimal', group: 'random', types: ['string'] },
{ name: 'fileName', group: 'system', types: ['string'] },
{ name: 'commonFileName', group: 'system', types: ['string'] },
{ name: 'mimeType', group: 'system', types: ['string'] },
{ name: 'commonFileType', group: 'system', types: ['string'] },
{ name: 'commonFileExt', group: 'system', types: ['string'] },
{ name: 'fileType', group: 'system', types: ['string'] },
{ name: 'fileExt', group: 'system', types: ['string'] },
{ name: 'directoryPath', group: 'system', types: ['string'] },
{ name: 'filePath', group: 'system', types: ['string'] },
{ name: 'semver', group: 'system', types: ['string'] },
{ name: 'now', group: 'time', types: ['string', 'time'] },
{ name: 'recent', group: 'time', types: ['string', 'time'] },
{ name: 'random', group: 'time', types: ['string', 'time'] },
{ name: 'vehicle', group: 'vehicle', types: ['string'] },
{ name: 'manufacturer', group: 'vehicle', types: ['string'] },
{ name: 'model', group: 'vehicle', types: ['string'] },
{ name: 'type', group: 'vehicle', types: ['string'] },
{ name: 'fuel', group: 'vehicle', types: ['string'] },
{ name: 'vin', group: 'vehicle', types: ['string'] },
{ name: 'color', group: 'vehicle', types: ['string'] }
];
}
static getGroups () {
const groupsObj = this._methods.reduce((acc, curr) => {
if (curr.group in acc)
curr.types.forEach(type => acc[curr.group].add(type));
else
acc[curr.group] = new Set(curr.types);
return acc;
}, {} as any);
const groupsArr = [];
for (const key in groupsObj)
groupsArr.push({ name: key, types: [...groupsObj[key]] });
return groupsArr.sort((a, b) => {
if (a.name < b.name)
return -1;
if (b.name > a.name)
return 1;
return 0;
});
}
static getGroupsByType (type: string) {
if (!type) return [];
return this.getGroups().filter(group => group.types.includes(type));
}
static getMethods ({ type, group }: {type: string; group: string}) {
return this._methods.filter(method => method.group === group && method.types.includes(type)).sort((a, b) => {
if (a.name < b.name)
return -1;
if (b.name > a.name)
return 1;
return 0;
});
}
}

View File

@ -0,0 +1,102 @@
import { Customizations } from '../interfaces/customizations';
// Everything OFF
export const defaults: Customizations = {
// Defaults
defaultPort: null,
defaultUser: null,
defaultDatabase: null,
dataTypes: [],
indexTypes: [],
foreignActions: [],
operators: ['=', '!=', '>', '<', '>=', '<=', 'IN', 'NOT IN', 'LIKE', 'NOT LIKE', 'BETWEEN', 'IS NULL', 'IS NOT NULL'],
// Core
database: false,
collations: false,
engines: false,
connectionSchema: false,
sslConnection: false,
sshConnection: false,
fileConnection: false,
cancelQueries: false,
singleConnectionMode: false,
// Tools
processesList: false,
usersManagement: false,
variables: false,
// Structure
schemas: false,
tables: false,
views: false,
triggers: false,
triggerFunctions: false,
routines: false,
functions: false,
schedulers: false,
// Misc
elementsWrapper: '',
stringsWrapper: '"',
tableAdd: false,
tableTruncateDisableFKCheck: false,
tableDdl: false,
viewAdd: false,
triggerAdd: false,
triggerFunctionAdd: false,
routineAdd: false,
functionAdd: false,
schedulerAdd: false,
databaseEdit: false,
schemaEdit: false,
schemaDrop: false,
schemaExport: false,
exportByChunks: false,
schemaImport: false,
tableSettings: false,
tableArray: false,
tableRealCount: false,
tableDuplicate: false,
viewSettings: false,
triggerSettings: false,
triggerFunctionSettings: false,
routineSettings: false,
functionSettings: false,
schedulerSettings: false,
indexes: false,
foreigns: false,
sortableFields: false,
unsigned: false,
nullable: false,
nullablePrimary: false,
zerofill: false,
autoIncrement: false,
comment: false,
collation: false,
definer: false,
onUpdate: false,
viewAlgorithm: false,
viewSqlSecurity: false,
viewUpdateOption: false,
procedureDeterministic: false,
procedureDataAccess: false,
procedureSql: null,
procedureContext: false,
procedureContextValues: [],
procedureLanguage: false,
functionDeterministic: false,
functionDataAccess: false,
functionSql: null,
functionContext: false,
functionLanguage: false,
triggerSql: null,
triggerStatementInCreation: false,
triggerMultipleEvents: false,
triggerTableInName: false,
triggerUpdateColumns: false,
triggerOnlyRename: false,
triggerEnableDisable: false,
triggerFunctionSql: null,
triggerFunctionlanguages: null,
parametersLength: false,
languages: null,
readOnlyMode: false
};

View File

@ -0,0 +1,63 @@
import firebirdTypes from '../data-types/firebird';
import { Customizations } from '../interfaces/customizations';
import { defaults } from './defaults';
export const customizations: Customizations = {
...defaults,
// Defaults
defaultPort: 3050,
defaultUser: 'SYSDBA',
defaultDatabase: null,
dataTypes: firebirdTypes,
indexTypes: [
'PRIMARY',
// 'CHECK',
'UNIQUE'
],
foreignActions: [
'RESTRICT',
'NO ACTION',
'CASCADE',
'SET NULL',
'SET DEFAULT'
],
// Core
database: true,
collations: false,
engines: false,
connectionSchema: false,
sslConnection: false,
sshConnection: false,
fileConnection: false,
cancelQueries: false,
// Tools
processesList: false,
usersManagement: false,
variables: false,
// Structure
schemas: false,
tables: true,
views: true,
triggers: true,
routines: true,
functions: false,
// Settings
elementsWrapper: '"',
stringsWrapper: '\'',
tableAdd: true,
tableSettings: true,
tableRealCount: true,
viewAdd: true,
viewSettings: true,
triggerAdd: true,
triggerMultipleEvents: true,
triggerSql: 'BEGIN\r\n\r\nEND',
routineAdd: true,
procedureContext: true,
procedureContextValues: ['IN', 'OUT'],
procedureSql: 'BEGIN\r\n\r\nEND',
parametersLength: true,
indexes: true,
foreigns: true,
nullable: true
};

View File

@ -0,0 +1,19 @@
import * as firebird from 'common/customizations/firebird';
import * as mysql from 'common/customizations/mysql';
import * as postgresql from 'common/customizations/postgresql';
import * as sqlite from 'common/customizations/sqlite';
import { Customizations } from 'common/interfaces/customizations';
export default {
maria: mysql.customizations,
mysql: mysql.customizations,
pg: postgresql.customizations,
sqlite: sqlite.customizations,
firebird: firebird.customizations
} as {
maria: Customizations;
mysql: Customizations;
pg: Customizations;
sqlite: Customizations;
firebird: Customizations;
};

View File

@ -0,0 +1,91 @@
import mysqlTypes from '../data-types/mysql';
import { Customizations } from '../interfaces/customizations';
import { defaults } from './defaults';
export const customizations: Customizations = {
...defaults,
// Defaults
defaultPort: 3306,
defaultUser: 'root',
defaultDatabase: null,
dataTypes: mysqlTypes,
operators: ['=', '!=', '>', '<', '>=', '<=', 'IN', 'NOT IN', 'LIKE', 'NOT LIKE', 'RLIKE', 'NOT RLIKE', 'BETWEEN', 'IS NULL', 'IS NOT NULL'],
indexTypes: [
'PRIMARY',
'INDEX',
'UNIQUE',
'FULLTEXT'
],
foreignActions: [
'RESTRICT',
'CASCADE',
'SET NULL',
'NO ACTION'
],
// Core
connectionSchema: true,
collations: true,
engines: true,
sslConnection: true,
sshConnection: true,
cancelQueries: true,
singleConnectionMode: true,
// Tools
processesList: true,
// Structure
schemas: true,
tables: true,
views: true,
triggers: true,
routines: true,
functions: true,
schedulers: true,
// Settings
elementsWrapper: '`',
stringsWrapper: '"',
tableAdd: true,
tableTruncateDisableFKCheck: true,
tableDuplicate: true,
tableDdl: true,
viewAdd: true,
triggerAdd: true,
routineAdd: true,
functionAdd: true,
schedulerAdd: true,
schemaEdit: true,
schemaDrop: true,
schemaExport: true,
exportByChunks: true,
schemaImport: true,
tableSettings: true,
viewSettings: true,
triggerSettings: true,
routineSettings: true,
functionSettings: true,
schedulerSettings: true,
indexes: true,
foreigns: true,
sortableFields: true,
unsigned: true,
nullable: true,
zerofill: true,
autoIncrement: true,
comment: true,
collation: true,
definer: true,
onUpdate: true,
viewAlgorithm: true,
viewSqlSecurity: true,
viewUpdateOption: true,
procedureDeterministic: true,
procedureDataAccess: true,
procedureSql: 'BEGIN\r\n\r\nEND',
procedureContext: true,
procedureContextValues: ['IN', 'OUT', 'INOUT'],
triggerSql: 'BEGIN\r\n\r\nEND',
functionDeterministic: true,
functionDataAccess: true,
functionSql: 'BEGIN\r\n\r\nEND',
parametersLength: true,
readOnlyMode: true
};

View File

@ -0,0 +1,80 @@
import postgresqlTypes from '../data-types/postgresql';
import { Customizations } from '../interfaces/customizations';
import { defaults } from './defaults';
export const customizations: Customizations = {
...defaults,
// Defaults
defaultPort: 5432,
defaultUser: 'postgres',
defaultDatabase: 'postgres',
dataTypes: postgresqlTypes,
indexTypes: [
'PRIMARY',
'INDEX',
'UNIQUE'
],
foreignActions: [
'RESTRICT',
'CASCADE',
'SET NULL',
'NO ACTION'
],
// Core
database: true,
sslConnection: true,
sshConnection: true,
cancelQueries: true,
// Tools
processesList: true,
// Structure
schemas: true,
tables: true,
views: true,
triggers: true,
triggerFunctions: true,
routines: true,
functions: true,
// Misc
elementsWrapper: '"',
stringsWrapper: '\'',
tableAdd: true,
tableDuplicate: true,
tableDdl: true,
viewAdd: true,
triggerAdd: true,
triggerFunctionAdd: true,
routineAdd: true,
functionAdd: true,
schemaDrop: true,
schemaExport: true,
schemaImport: true,
databaseEdit: false,
tableSettings: true,
viewSettings: true,
triggerSettings: true,
triggerFunctionSettings: true,
routineSettings: true,
functionSettings: true,
indexes: true,
foreigns: true,
nullable: true,
tableArray: true,
procedureSql: '$procedure$\r\n\r\n$procedure$',
procedureContext: true,
procedureContextValues: ['IN', 'OUT', 'INOUT'],
procedureLanguage: true,
functionSql: '$function$\r\n\r\n$function$',
triggerFunctionSql: '$function$\r\nBEGIN\r\n\r\nEND\r\n$function$',
triggerFunctionlanguages: ['plpgsql'],
functionContext: true,
functionLanguage: true,
triggerSql: 'EXECUTE PROCEDURE ',
triggerStatementInCreation: true,
triggerMultipleEvents: true,
triggerTableInName: true,
triggerOnlyRename: false,
triggerEnableDisable: true,
languages: ['sql', 'plpgsql', 'c', 'internal'],
readOnlyMode: true
};

View File

@ -0,0 +1,45 @@
import sqliteTypes from '../data-types/sqlite';
import { Customizations } from '../interfaces/customizations';
import { defaults } from './defaults';
export const customizations: Customizations = {
...defaults,
dataTypes: sqliteTypes,
indexTypes: [
'PRIMARY',
'INDEX',
'UNIQUE'
],
foreignActions: [
'RESTRICT',
'CASCADE',
'SET NULL',
'NO ACTION'
],
// Core
fileConnection: true,
// Structure
schemas: false,
tables: true,
views: true,
triggers: true,
// Settings
elementsWrapper: '"',
stringsWrapper: '\'',
tableAdd: true,
tableDuplicate: true,
viewAdd: true,
triggerAdd: true,
schemaEdit: false,
tableSettings: true,
tableRealCount: true,
viewSettings: true,
triggerSettings: true,
indexes: true,
foreigns: true,
sortableFields: true,
nullable: true,
nullablePrimary: true,
triggerSql: 'BEGIN\r\n\r\nEND',
readOnlyMode: true
};

View File

@ -0,0 +1,136 @@
import { TypesGroup } from 'common/interfaces/antares';
export default [
{
group: 'integer',
types: [
{
name: 'SMALLINT',
length: false,
collation: false,
unsigned: true,
zerofill: true
},
{
name: 'INTEGER',
length: false,
collation: false,
unsigned: true,
zerofill: true
},
{
name: 'BIGINT',
length: false,
collation: false,
unsigned: true,
zerofill: true
}
]
},
{
group: 'float',
types: [
{
name: 'DECIMAL',
length: true,
scale: true,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'NUMERIC',
length: true,
scale: true,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'FLOAT',
length: false,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'DOUBLE PRECISION',
length: false,
collation: false,
unsigned: false,
zerofill: false
}
]
},
{
group: 'string',
types: [
{
name: 'CHAR',
length: true,
collation: true,
unsigned: false,
zerofill: false
},
{
name: 'VARCHAR',
length: true,
collation: true,
unsigned: false,
zerofill: false
},
{
name: 'BLOB-TEXT',
length: false,
collation: true,
unsigned: false,
zerofill: false
}
]
},
{
group: 'binary',
types: [
{
name: 'BLOB',
length: false,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'CHAR-BINARY',
length: false,
collation: false,
unsigned: false,
zerofill: false
}
]
},
{
group: 'time',
types: [
{
name: 'DATE',
length: false,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'TIME',
length: true,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'TIMESTAMP',
length: false,
collation: false,
unsigned: false,
zerofill: false
}
]
}
] as TypesGroup[];

View File

@ -0,0 +1,312 @@
import { TypesGroup } from 'common/interfaces/antares';
export default [
{
group: 'integer',
types: [
{
name: 'TINYINT',
length: 4,
collation: false,
unsigned: true,
zerofill: true
},
{
name: 'SMALLINT',
length: true,
collation: false,
unsigned: true,
zerofill: true
},
{
name: 'INT',
length: true,
collation: false,
unsigned: true,
zerofill: true
},
{
name: 'MEDIUMINT',
length: true,
collation: false,
unsigned: true,
zerofill: true
},
{
name: 'BIGINT',
length: true,
collation: false,
unsigned: true,
zerofill: true
},
{
name: 'BIT',
length: true,
collation: false,
unsigned: true,
zerofill: true
}
]
},
{
group: 'float',
types: [
{
name: 'FLOAT',
length: true,
scale: true,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'DOUBLE',
length: false,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'DECIMAL',
length: true,
scale: true,
collation: false,
unsigned: false,
zerofill: false
}
]
},
{
group: 'string',
types: [
{
name: 'CHAR',
length: true,
collation: true,
unsigned: false,
zerofill: false
},
{
name: 'VARCHAR',
length: true,
collation: true,
unsigned: false,
zerofill: false
},
{
name: 'TINYTEXT',
length: false,
collation: true,
unsigned: false,
zerofill: false
},
{
name: 'MEDIUMTEXT',
length: false,
collation: true,
unsigned: false,
zerofill: false
},
{
name: 'TEXT',
length: false,
collation: true,
unsigned: false,
zerofill: false
},
{
name: 'LONGTEXT',
length: false,
collation: true,
unsigned: false,
zerofill: false
},
{
name: 'JSON',
length: false,
collation: false,
unsigned: false,
zerofill: false
}
]
},
{
group: 'binary',
types: [
{
name: 'BINARY',
length: true,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'VARBINARY',
length: true,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'TINYBLOB',
length: false,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'BLOB',
length: false,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'MEDIUMBLOB',
length: false,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'LONGBLOB',
length: false,
collation: false,
unsigned: false,
zerofill: false
}
]
},
{
group: 'time',
types: [
{
name: 'DATE',
length: true,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'TIME',
length: true,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'YEAR',
length: true,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'DATETIME',
length: true,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'TIMESTAMP',
length: false,
collation: false,
unsigned: false,
zerofill: false
}
]
},
{
group: 'spatial',
types: [
{
name: 'POINT',
length: false,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'LINESTRING',
length: false,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'POLYGON',
length: false,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'GEOMETRY',
length: false,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'MULTIPOINT',
length: false,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'MULTILINESTRING',
length: false,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'MULTIPOLYGON',
length: false,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'GEOMCOLLECTION',
length: false,
collation: false,
unsigned: false,
zerofill: false
}
]
},
{
group: 'other',
types: [
{
name: 'ENUM',
length: true,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'SET',
length: true,
collation: false,
unsigned: false,
zerofill: false
}
]
},
{
group: 'unknown',
types: [
{
name: 'UNKNOWN',
length: false,
collation: false,
unsigned: false,
zerofill: false
}
]
}
] as TypesGroup[];

View File

@ -0,0 +1,295 @@
import { TypesGroup } from 'common/interfaces/antares';
export default [
{
group: 'integer',
types: [
{
name: 'SMALLINT',
length: false,
unsigned: true
},
{
name: 'INTEGER',
length: false,
unsigned: true
},
{
name: 'BIGINT',
length: false,
unsigned: true
},
{
name: 'DECIMAL',
length: false,
unsigned: true
},
{
name: 'SMALLSERIAL',
length: false,
unsigned: true
},
{
name: 'SERIAL',
length: false,
unsigned: true
},
{
name: 'BIGSERIAL',
length: false,
unsigned: true
}
]
},
{
group: 'float',
types: [
{
name: 'REAL',
length: false,
unsigned: true
},
{
name: 'NUMERIC',
length: true,
unsigned: true,
scale: true
},
{
name: 'DOUBLE PRECISION',
length: false,
unsigned: true
}
]
},
{
group: 'monetary',
types: [
{
name: 'MONEY',
length: false,
unsigned: true
}
]
},
{
group: 'string',
types: [
{
name: 'CHARACTER VARYING',
length: true,
unsigned: false
},
{
name: 'CHARACTER',
length: true,
unsigned: false
},
{
name: 'TEXT',
length: false,
unsigned: false
},
{
name: '"CHAR"',
length: false,
unsigned: false
},
{
name: 'NAME',
length: false,
unsigned: false
}
]
},
{
group: 'binary',
types: [
{
name: 'BYTEA',
length: false,
unsigned: false
}
]
},
{
group: 'time',
types: [
{
name: 'TIMESTAMP WITHOUT TIME ZONE',
length: false,
unsigned: false
},
{
name: 'TIMESTAMP WITH TIME ZONE',
length: false,
unsigned: false
},
{
name: 'DATE',
length: false,
unsigned: false
},
{
name: 'TIME WITHOUT TIME ZONE',
length: false,
unsigned: false
},
{
name: 'TIME WITH TIME ZONE',
length: false,
unsigned: false
},
{
name: 'INTERVAL',
length: false,
unsigned: false
}
]
},
{
group: 'boolean',
types: [
{
name: 'BOOLEAN',
length: false,
unsigned: false
}
]
},
{
group: 'geometric',
types: [
{
name: 'POINT',
length: false,
unsigned: false
},
{
name: 'LINE',
length: false,
unsigned: false
},
{
name: 'LSEG',
length: false,
unsigned: false
},
{
name: 'BOX',
length: false,
unsigned: false
},
{
name: 'PATH',
length: false,
unsigned: false
},
{
name: 'POLYGON',
length: false,
unsigned: false
},
{
name: 'CIRCLE',
length: false,
unsigned: false
}
]
},
{
group: 'network',
types: [
{
name: 'CIDR',
length: false,
unsigned: false
},
{
name: 'INET',
length: false,
unsigned: false
},
{
name: 'MACADDR',
length: false,
unsigned: false
},
{
name: 'MACADDR8',
length: false,
unsigned: false
}
]
},
{
group: 'bit',
types: [
{
name: 'BIT',
length: true,
unsigned: false
},
{
name: 'BIT VARYING',
length: true,
unsigned: false
}
]
},
{
group: 'text search',
types: [
{
name: 'TSVECTOR',
length: false,
unsigned: false
},
{
name: 'TSQUERY',
length: false,
unsigned: false
}
]
},
{
group: 'uuid',
types: [
{
name: 'UUID',
length: false,
unsigned: false
}
]
},
{
group: 'xml',
types: [
{
name: 'XML',
length: false,
unsigned: false
}
]
},
{
group: 'json',
types: [
{
name: 'JSON',
length: false,
unsigned: false
},
{
name: 'JSONB',
length: false,
unsigned: false
},
{
name: 'JSONPATH',
length: false,
unsigned: false
}
]
}
] as TypesGroup[];

View File

@ -0,0 +1,146 @@
import { TypesGroup } from 'common/interfaces/antares';
export default [
{
group: 'integer',
types: [
{
name: 'INT',
length: 10,
collation: false,
unsigned: true,
zerofill: true
},
{
name: 'INTEGER',
length: true,
collation: false,
unsigned: true,
zerofill: true
},
{
name: 'INTEGER UNSIGNED',
length: true,
collation: false,
unsigned: true,
zerofill: true
},
{
name: 'BIGINT',
length: true,
collation: false,
unsigned: true,
zerofill: true
},
{
name: 'NUMERIC',
length: true,
collation: false,
unsigned: true,
zerofill: true
},
{
name: 'BOOLEAN',
length: false,
collation: false,
unsigned: true,
zerofill: true
}
]
},
{
group: 'float',
types: [
{
name: 'FLOAT',
length: true,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'REAL',
length: true,
collation: false,
unsigned: false,
zerofill: false
}
]
},
{
group: 'string',
types: [
{
name: 'CHAR',
length: true,
collation: true,
unsigned: false,
zerofill: false
},
{
name: 'VARCHAR',
length: true,
collation: true,
unsigned: false,
zerofill: false
},
{
name: 'TEXT',
length: true,
collation: true,
unsigned: false,
zerofill: false
}
]
},
{
group: 'binary',
types: [
{
name: 'BLOB',
length: true,
collation: false,
unsigned: false,
zerofill: false
}
]
},
{
group: 'time',
types: [
{
name: 'DATE',
length: false,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'TIME',
length: true,
collation: false,
unsigned: false,
zerofill: false
},
{
name: 'DATETIME',
length: true,
collation: false,
unsigned: false,
zerofill: false
}
]
},
{
group: 'other',
types: [
{
name: 'NONE',
length: false,
collation: false,
unsigned: false,
zerofill: false
}
]
}
] as TypesGroup[];

View File

@ -1,12 +0,0 @@
export const TEXT = ['char', 'varchar'];
export const LONG_TEXT = ['text', 'mediumtext', 'longtext'];
export const NUMBER = ['int', 'tinyint', 'smallint', 'mediumint', 'bigint', 'float', 'double', 'decimal'];
export const DATE = ['date'];
export const TIME = ['time'];
export const DATETIME = ['datetime', 'timestamp'];
export const BLOB = ['blob', 'mediumblob', 'longblob'];
export const BIT = ['bit'];

125
src/common/fieldTypes.ts Normal file
View File

@ -0,0 +1,125 @@
export const TEXT = [
'CHAR',
'VARCHAR',
'CHARACTER',
'CHARACTER VARYING'
];
export const LONG_TEXT = [
'TEXT',
'MEDIUMTEXT',
'LONGTEXT',
'JSON',
'VARBINARY',
'BLOB-TEXT'
];
export const ARRAY = [
'ARRAY',
'ANYARRAY'
];
export const TEXT_SEARCH = [
'TSVECTOR',
'TSQUERY'
];
export const NUMBER = [
'INT',
'TINYINT',
'SMALLINT',
'MEDIUMINT',
'BIGINT',
'NUMERIC',
'INTEGER',
'SMALLSERIAL',
'SERIAL',
'BIGSERIAL',
'OID',
'XID',
'INT64'
];
export const FLOAT = [
'FLOAT',
'DECIMAL',
'DOUBLE',
'REAL',
'DOUBLE PRECISION',
'MONEY'
];
export const IS_BIGINT = [
'BIGINT',
'BIGSERIAL',
'DOUBLE PRECISION'
];
export const BOOLEAN = [
'BOOL',
'BOOLEAN'
];
export const DATE = ['DATE'];
export const TIME = [
'TIME',
'TIME WITH TIME ZONE'
];
export const DATETIME = [
'DATETIME',
'TIMESTAMP',
'TIMESTAMP WITHOUT TIME ZONE',
'TIMESTAMP WITH TIME ZONE'
];
// Used to check datetime fields only
export const HAS_TIMEZONE = [
'TIMESTAMP WITH TIME ZONE',
'TIME WITH TIME ZONE'
];
export const BLOB = [
'BLOB',
'TINYBLOB',
'MEDIUMBLOB',
'LONGBLOB',
'LONG_BLOB',
'BYTEA',
'CHAR-BINARY'
];
export const BIT = [
'BIT',
'BIT VARYING'
];
export const BINARY = [
'BINARY'
];
export const UUID = [
'UUID'
];
export const SPATIAL = [
'POINT',
'LINESTRING',
'POLYGON',
'GEOMETRY',
'MULTIPOINT',
'MULTILINESTRING',
'MULTIPOLYGON',
'GEOMCOLLECTION',
'GEOMETRYCOLLECTION'
];
// Used to check multi spatial fields only
export const IS_MULTI_SPATIAL = [
'MULTIPOINT',
'MULTILINESTRING',
'MULTIPOLYGON',
'GEOMCOLLECTION',
'GEOMETRYCOLLECTION'
];

View File

@ -0,0 +1,407 @@
import SSHConfig from '@fabio286/ssh2-promise/lib/sshConfig';
import * as mysql from 'mysql2/promise';
import * as pg from 'pg';
import { FirebirdSQLClient } from 'src/main/libs/clients/FirebirdSQLClient';
import MysqlExporter from 'src/main/libs/exporters/sql/MysqlExporter';
import PostgreSQLExporter from 'src/main/libs/exporters/sql/PostgreSQLExporter';
import MySQLImporter from 'src/main/libs/importers/sql/MySQLlImporter';
import PostgreSQLImporter from 'src/main/libs/importers/sql/PostgreSQLImporter';
import { MySQLClient } from '../../main/libs/clients/MySQLClient';
import { PostgreSQLClient } from '../../main/libs/clients/PostgreSQLClient';
import { SQLiteClient } from '../../main/libs/clients/SQLiteClient';
export type Client = MySQLClient | PostgreSQLClient | SQLiteClient | FirebirdSQLClient
export type ClientCode = 'mysql' | 'maria' | 'pg' | 'sqlite' | 'firebird'
export type Exporter = MysqlExporter | PostgreSQLExporter
export type Importer = MySQLImporter | PostgreSQLImporter
// eslint-disable-next-line @typescript-eslint/no-explicit-any
export interface IpcResponse<T = any> {
status: 'success' | 'error';
response?: T;
}
/**
* Pasameters needed to create a new Antares connection to a database
*/
export interface ClientParams {
client: ClientCode;
uid?: string;
params:
mysql.ConnectionOptions & {schema: string; ssl?: mysql.SslOptions; ssh?: SSHConfig; readonly: boolean}
| pg.ClientConfig & {schema: string; ssl?: mysql.SslOptions; ssh?: SSHConfig; readonly: boolean}
| { databasePath: string; readonly: boolean };
poolSize?: number;
logger?: () => void;
}
/**
* Paramenets insered by user in connection mask
*/
export interface ConnectionParams {
uid: string;
name?: string;
client: ClientCode;
host: string;
database?: string;
schema?: string;
databasePath?: string;
port: number;
user: string;
password: string;
ask: boolean;
readonly: boolean;
singleConnectionMode: boolean;
ssl: boolean;
cert?: string;
key?: string;
ca?: string;
untrustedConnection: boolean;
ciphers?: string;
ssh: boolean;
sshHost?: string;
sshUser?: string;
sshPass?: string;
sshKey?: string;
sshPort?: number;
sshPassphrase?: string;
sshKeepAliveInterval?: number;
}
export interface TypeInformations {
name: string;
length: boolean;
scale: boolean;
collation: boolean;
unsigned: boolean;
zerofill: boolean;
}
export interface TypesGroup {
group: string;
types: TypeInformations[];
}
// Tables
export interface TableInfos {
name: string;
type: string;
rows: number;
engine: string;
comment: string;
size: number | false;
collation: string;
autoIncrement?: boolean;
}
export type TableOptions = Partial<TableInfos>;
export interface TableField {
// eslint-disable-next-line camelcase
_antares_id?: string;
name: string;
type: string;
schema: string;
table?: string;
numPrecision?: number;
numLength?: number;
datePrecision?: number;
charLength?: number;
numScale?: number;
nullable?: boolean;
unsigned?: boolean;
zerofill?: boolean;
order?: number;
default?: string;
defaultType?: string;
enumValues?: string;
charset?: string;
collation?: string;
autoIncrement?: boolean;
isArray?: boolean;
onUpdate?: string;
comment?: string;
after?: string;
orgName?: string;
length?: number | false;
alias: string;
tableAlias: string;
orgTable: string;
key?: 'pri' | 'uni' | '';
}
export interface TableIndex {
// eslint-disable-next-line camelcase
_antares_id?: string;
name: string;
fields: string[];
type: string;
comment?: string;
indexType?: string;
indexComment?: string;
cardinality?: number;
oldType?: string;
oldName?: string;
}
export interface TableForeign {
// eslint-disable-next-line camelcase
_antares_id?: string;
constraintName: string;
refSchema: string;
table: string;
refTable: string;
field: string;
refField: string;
onUpdate: string;
onDelete: string;
oldName?: string;
}
export interface CreateTableParams {
/** Connection UID */
uid?: string;
schema: string;
fields: TableField[];
foreigns: TableForeign[];
indexes: TableIndex[];
options: TableOptions;
}
export interface AlterTableParams {
/** Connection UID */
uid?: string;
schema: string;
table: string;
additions: TableField[];
changes: TableField[];
deletions: TableField[];
tableStructure: {
name: string;
fields: TableField[];
foreigns: TableForeign[];
indexes: TableIndex[];
};
indexChanges: {
additions: TableIndex[];
changes: TableIndex[];
deletions: TableIndex[];
};
foreignChanges: {
additions: TableForeign[];
changes: TableForeign[];
deletions: TableForeign[];
};
options: TableOptions;
}
// Views
export type ViewInfos = TableInfos
export interface CreateViewParams {
schema: string;
name: string;
algorithm: string;
definer: string;
security: string;
sql: string;
updateOption: string;
}
export interface AlterViewParams extends CreateViewParams {
oldName?: string;
}
// Triggers
export interface TriggerInfos {
name: string;
statement: string;
timing: string;
definer: string;
event: string;
table: string;
sqlMode: string;
created: Date;
charset: string;
enabled?: boolean;
}
export interface CreateTriggerParams {
definer?: string;
schema: string;
name: string;
activation: string;
event: string;
table: string;
sql: string;
}
export interface AlterTriggerParams extends CreateTriggerParams {
oldName?: string;
}
// Routines & Functions
export interface FunctionParam {
// eslint-disable-next-line camelcase
_antares_id: string;
context: string;
name: string;
type: string;
length: number;
}
export interface RoutineInfos {
name: string;
type?: string;
definer: string;
created?: string;
sql?: string;
updated?: string;
comment?: string;
charset?: string;
security?: string;
language?: string;
dataAccess?: string;
deterministic?: boolean;
parameters?: FunctionParam[];
// eslint-disable-next-line @typescript-eslint/no-explicit-any
returns?: any;
returnsLength?: number;
}
export type FunctionInfos = RoutineInfos
export type TriggerFunctionInfos = FunctionInfos
export interface CreateRoutineParams {
name: string;
parameters?: FunctionParam[];
definer: string;
schema: string;
deterministic: boolean;
dataAccess: string;
security: string;
comment?: string;
language?: string;
sql: string;
}
export interface AlterRoutineParams extends CreateRoutineParams {
oldName?: string;
}
export interface CreateFunctionParams {
name: string;
parameters?: FunctionParam[];
definer: string;
schema: string;
deterministic: boolean;
dataAccess: string;
security: string;
comment?: string;
sql: string;
returns: string;
returnsLength: number;
language?: string;
}
export interface AlterFunctionParams extends CreateFunctionParams {
oldName?: string;
}
// Events
export interface EventInfos {
definer?: string;
schema: string;
name: string;
execution: string;
every: string[];
starts: string;
ends: string;
at: string;
preserve: boolean;
state: string;
comment: string;
enabled?: boolean;
sql: string;
}
export type CreateEventParams = EventInfos;
export interface AlterEventParams extends CreateEventParams {
oldName?: string;
}
// Schema
export interface SchemaInfos {
name: string;
size: number;
tables: TableInfos[];
functions: FunctionInfos[];
procedures: RoutineInfos[];
triggers: TriggerInfos[];
schedulers: EventInfos[];
}
export interface CollationInfos {
charset: string;
collation: string;
compiled: boolean;
default: boolean;
id: string | number;
sortLen: number;
}
// Query
export interface QueryBuilderObject {
schema: string;
select: string[];
from: string;
where: string[];
groupBy: string[];
orderBy: string[];
limit: number;
offset: number;
join: string[];
update: string[];
insert: Record<string, string | boolean | number>[];
delete: boolean;
}
export interface QueryParams {
nest?: boolean;
details?: boolean;
split?: boolean;
comments?: boolean;
autocommit?: boolean;
schema?: string;
tabUid?: string;
}
/**
* @deprecated Use TableFIeld
*/
export type QueryField = TableField
export interface QueryForeign {
schema: string;
table: string;
field: string;
position: number;
constraintPosition: number;
constraintName: string;
refSchema: string;
refTable: string;
refField: string;
onUpdate: string;
onDelete: string;
}
// eslint-disable-next-line @typescript-eslint/no-explicit-any
export interface QueryResult<T = any> {
rows: T[];
report: { affectedRows: number };
fields: QueryField[];
keys: QueryForeign[];
duration: number;
}

View File

@ -0,0 +1,102 @@
import { TypesGroup } from './antares';
import { TableFilterOperator } from './tableApis';
export interface Customizations {
// Defaults
defaultPort?: number;
defaultUser?: string;
defaultDatabase?: string;
dataTypes?: TypesGroup[];
indexTypes?: string[];
foreignActions?: string[];
operators?: TableFilterOperator[];
// Core
database?: boolean;
collations?: boolean;
engines?: boolean;
connectionSchema?: boolean;
sslConnection?: boolean;
sshConnection?: boolean;
fileConnection?: boolean;
cancelQueries?: boolean;
singleConnectionMode?: boolean;
// Tools
processesList?: boolean;
usersManagement?: boolean;
variables?: boolean;
// Structure
schemas?: boolean;
tables?: boolean;
views?: boolean;
triggers?: boolean;
triggerFunctions?: boolean;
routines?: boolean;
functions?: boolean;
schedulers?: boolean;
// Misc
elementsWrapper: string;
stringsWrapper: string;
tableAdd?: boolean;
tableSettings?: boolean;
tableDuplicate?: boolean;
tableArray?: boolean;
tableRealCount?: boolean;
tableTruncateDisableFKCheck?: boolean;
tableDdl?: boolean;
viewAdd?: boolean;
viewSettings?: boolean;
triggerAdd?: boolean;
triggerFunctionAdd?: boolean;
routineAdd?: boolean;
functionAdd?: boolean;
schedulerAdd?: boolean;
databaseEdit?: boolean;
schemaEdit?: boolean;
schemaDrop?: boolean;
schemaExport?: boolean;
exportByChunks?: boolean;
schemaImport?: boolean;
triggerSettings?: boolean;
triggerFunctionSettings?: boolean;
routineSettings?: boolean;
functionSettings?: boolean;
schedulerSettings?: boolean;
indexes?: boolean;
foreigns?: boolean;
sortableFields?: boolean;
unsigned?: boolean;
nullable?: boolean;
nullablePrimary?: boolean;
zerofill?: boolean;
autoIncrement?: boolean;
comment?: boolean;
collation?: boolean;
definer?: boolean;
onUpdate?: boolean;
viewAlgorithm?: boolean;
viewSqlSecurity?: boolean;
viewUpdateOption?: boolean;
procedureDeterministic?: boolean;
procedureDataAccess?: boolean;
procedureSql?: string;
procedureContext?: boolean;
procedureContextValues?: string[];
procedureLanguage?: boolean;
functionDeterministic?: boolean;
functionDataAccess?: boolean;
functionSql?: string;
functionContext?: boolean;
functionLanguage?: boolean;
triggerSql?: string;
triggerStatementInCreation?: boolean;
triggerMultipleEvents?: boolean;
triggerTableInName?: boolean;
triggerUpdateColumns?: boolean;
triggerOnlyRename?: boolean;
triggerEnableDisable?: boolean;
triggerFunctionSql?: string;
triggerFunctionlanguages?: string[];
parametersLength?: boolean;
languages?: string[];
readOnlyMode?: boolean;
}

View File

@ -0,0 +1,28 @@
export interface TableParams {
table: string;
includeStructure: boolean;
includeContent: boolean;
includeDropStatement: boolean;
}
export interface ExportOptions {
schema: string;
tables: {
table: string;
includeStructure: boolean;
includeContent: boolean;
includeDropStatement: boolean;
}[];
includes: Record<string, boolean>;
outputFormat: 'sql' | 'sql.zip';
outputFile: string;
sqlInsertAfter: number;
sqlInsertDivider: 'bytes' | 'rows';
}
export interface ExportState {
totalItems?: number;
currentItemIndex?: number;
currentItem?: string;
op?: string;
}

View File

@ -0,0 +1,16 @@
import * as antares from './antares';
export interface ImportOptions {
uid: string;
schema: string;
type: antares.ClientCode;
file: string;
}
export interface ImportState {
fileSize?: number;
readPosition?: number;
percentage?: number;
queryCount?: number;
op?: string;
}

View File

@ -0,0 +1,50 @@
import { UsableLocale } from '@faker-js/faker';
export interface TableUpdateParams {
uid: string;
schema: string;
table: string;
primary?: string;
id: number | string;
content: number | string | boolean | Date | Blob | null;
type: string;
field: string;
}
export interface TableDeleteParams {
uid: string;
schema: string;
table: string;
primary?: string;
field: string;
// eslint-disable-next-line @typescript-eslint/no-explicit-any
rows: Record<string, any>;
}
export type TableFilterOperator = '=' | '!=' | '>' | '<' | '>=' | '<=' | 'IN' | 'NOT IN' | 'LIKE' | 'NOT LIKE' | 'RLIKE' | 'NOT RLIKE' | 'BETWEEN' | 'IS NULL' | 'IS NOT NULL'
export interface TableFilterClausole {
active: boolean;
field: string;
op:TableFilterOperator;
value: '';
value2: '';
}
export interface InsertRowsParams {
uid: string;
schema: string;
table: string;
row: Record<string, {
group: string;
method: string;
// eslint-disable-next-line @typescript-eslint/no-explicit-any
params: any;
// eslint-disable-next-line @typescript-eslint/no-explicit-any
value: any;
length: number;
}>;
repeat: number;
fields: Record<string, string>;
locale: UsableLocale;
}

View File

@ -0,0 +1,7 @@
export type WorkerEvent = 'export-progress' | 'import-progress' | 'query-error' | 'end' | 'cancel' | 'error'
export interface WorkerIpcMessage {
type: WorkerEvent;
// eslint-disable-next-line @typescript-eslint/no-explicit-any
payload: any;
}

View File

@ -1,7 +0,0 @@
'use strict';
export function bufferToBase64 (buf) {
const binstr = Array.prototype.map.call(buf, ch => {
return String.fromCharCode(ch);
}).join('');
return btoa(binstr);
}

View File

@ -0,0 +1,6 @@
export function bufferToBase64 (buf: Buffer) {
const binstr = Array.prototype.map.call(buf, (ch: number) => {
return String.fromCharCode(ch);
}).join('');
return Buffer.from(binstr, 'binary').toString('base64');
}

View File

@ -0,0 +1,28 @@
import * as crypto from 'crypto';
const algorithm = 'aes-256-gcm';
function encrypt (text: string, password: string) {
const iv = crypto.randomBytes(16);
const key = crypto.scryptSync(password, 'antares', 32);
const cipher = crypto.createCipheriv(algorithm, key, iv);
const encrypted = Buffer.concat([cipher.update(text), cipher.final()]);
const authTag = cipher.getAuthTag();
return {
iv: iv.toString('hex'),
authTag: authTag.toString('hex'),
content: encrypted.toString('hex')
};
}
function decrypt (hash: { iv: string; content: string; authTag: string }, password: string) {
const key = crypto.scryptSync(password, 'antares', 32);
const decipher = crypto.createDecipheriv(algorithm, key, Buffer.from(hash.iv, 'hex'));
decipher.setAuthTag(Buffer.from(hash.authTag, 'hex'));
const decrpyted = decipher.update(hash.content, 'hex', 'utf8') + decipher.final('utf8');
return decrpyted;
}
export { decrypt, encrypt };

View File

@ -0,0 +1,17 @@
import { faker } from '@faker-js/faker';
import * as moment from 'moment';
export const fakerCustom = {
seed: faker.seed,
setLocale: faker.setLocale,
...faker,
date: {
now: () => moment().format('YYYY-MM-DD HH:mm:ss'),
...faker.date
},
time: {
now: () => moment().format('HH:mm:ss'),
random: () => moment(faker.date.recent()).format('HH:mm:ss'),
...faker.time
}
};

View File

@ -1,5 +1,4 @@
'use strict';
export function formatBytes (bytes, decimals = 2) {
export function formatBytes (bytes: number, decimals = 2) {
if (bytes === 0) return '0 Bytes';
const k = 1024;

View File

@ -0,0 +1,6 @@
/* eslint-disable @typescript-eslint/no-explicit-any */
export function getArrayDepth (array: any[]): number {
return Array.isArray(array)
? 1 + Math.max(0, ...array.map(getArrayDepth))
: 0;
}

View File

@ -1,5 +1,3 @@
'use strict';
const lookup = {
0: '0000',
1: '0001',
@ -23,17 +21,13 @@ const lookup = {
D: '1101',
E: '1110',
F: '1111'
};
} as const;
/**
* Converts hexadecimal string to binary string
*
* @param {string} hex Hexadecimal string
* @returns {string} Binary string
*/
export default function hexToBinary (hex) {
export type HexChar = keyof typeof lookup
export default function hexToBinary (hex: HexChar[]) {
let binary = '';
for (let i = 0, len = hex.length; i < len; i++)
for (let i = 0; i < hex.length; i++)
binary += lookup[hex[i]];
return binary;

View File

@ -0,0 +1,192 @@
function isJSON (str: string) {
try {
if (!['{', '['].includes(str.trim()[0]))
return false;
JSON.parse(str);
return true;
}
catch (_) {
return false;
}
}
function isHTML (str: string) {
const tags = [
'a',
'abbr',
'address',
'area',
'article',
'aside',
'audio',
'b',
'base',
'bdi',
'bdo',
'blockquote',
'body',
'br',
'button',
'canvas',
'caption',
'cite',
'code',
'col',
'colgroup',
'data',
'datalist',
'dd',
'del',
'details',
'dfn',
'dialog',
'div',
'dl',
'dt',
'em',
'embed',
'fieldset',
'figcaption',
'figure',
'footer',
'form',
'h1',
'h2',
'h3',
'h4',
'h5',
'h6',
'head',
'header',
'hgroup',
'hr',
'html',
'i',
'iframe',
'img',
'input',
'ins',
'kbd',
'label',
'legend',
'li',
'link',
'main',
'map',
'mark',
'math',
'menu',
'menuitem',
'meta',
'meter',
'nav',
'noscript',
'object',
'ol',
'optgroup',
'option',
'output',
'p',
'param',
'picture',
'pre',
'progress',
'q',
'rb',
'rp',
'rt',
'rtc',
'ruby',
's',
'samp',
'script',
'section',
'select',
'slot',
'small',
'source',
'span',
'strong',
'style',
'sub',
'summary',
'sup',
'svg',
'table',
'tbody',
'td',
'template',
'textarea',
'tfoot',
'th',
'thead',
'time',
'title',
'tr',
'track',
'u',
'ul',
'var',
'video',
'wbr'
];
const doc = new DOMParser().parseFromString(str, 'text/html');
const lowerStr = str.toLowerCase();
if (Array.from(doc.body.childNodes).some(node => node.nodeType === 1))
return tags.some((tag) => lowerStr.includes(`<${tag}>`));
return false;
}
function isSVG (str: string) {
const doc = new DOMParser().parseFromString(str, 'text/xml');
const lowerStr = str.toLowerCase();
const errorNode = doc.querySelector('parsererror');
if (!errorNode)
return lowerStr.includes('<svg');
return false;
}
function isXML (str: string) {
const doc = new DOMParser().parseFromString(str, 'text/xml');
const errorNode = doc.querySelector('parsererror');
return !errorNode;
}
function isMD (str: string) {
const mdChecks = [
'# ',
'`',
'- ',
'+ ',
'* ',
'1. ',
'**',
'__',
'~~',
'>> ',
'](http',
'![',
'[ ]',
'[x]'
];
return mdChecks.some((tag) => str.includes(tag));
}
export function langDetector (str: string) {
if (!str || !str.trim().length)
return 'text';
if (isJSON(str))
return 'json';
if (isHTML(str))
return 'html';
if (isSVG(str))
return 'svg';
if (isXML(str))
return 'xml';
if (isMD(str))
return 'markdown';
return 'text';
}

View File

@ -1,5 +1,4 @@
'use strict';
export function mimeFromHex (hex) {
export function mimeFromHex (hex: string) {
switch (hex.substring(0, 4)) { // 2 bytes
case '424D':
return { ext: 'bmp', mime: 'image/bmp' };
@ -43,4 +42,4 @@ export function mimeFromHex (hex) {
}
}
}
};
}

View File

@ -1,19 +0,0 @@
/* eslint-disable no-useless-escape */
// eslint-disable-next-line no-control-regex
const regex = new RegExp(/[\0\x08\x09\x1a\n\r"'\\\%]/g);
/**
* Escapes a string
*
* @param {String} string
* @returns {String}
*/
function sqlEscaper (string) {
return string.replace(regex, (char) => {
const m = ['\\0', '\\x08', '\\x09', '\\x1a', '\\n', '\\r', '\'', '"', '\\', '\\\\', '%'];
const r = ['\\\\0', '\\\\b', '\\\\t', '\\\\z', '\\\\n', '\\\\r', '\'\'', '""', '\\\\', '\\\\\\\\', '\\%'];
return r[m.indexOf(char)];
});
}
export { sqlEscaper };

199
src/common/libs/sqlUtils.ts Normal file
View File

@ -0,0 +1,199 @@
/* eslint-disable @typescript-eslint/no-explicit-any */
/* eslint-disable no-useless-escape */
import { lineString, point, polygon } from '@turf/helpers';
import { BIT, BLOB, DATE, DATETIME, FLOAT, IS_MULTI_SPATIAL, NUMBER, SPATIAL, TEXT_SEARCH } from 'common/fieldTypes';
import * as moment from 'moment';
import customizations from '../customizations';
import { ClientCode } from '../interfaces/antares';
import { getArrayDepth } from './getArrayDepth';
import hexToBinary, { HexChar } from './hexToBinary';
/**
* Escapes a string fo SQL use
*
* @param { String } string
* @returns { String } Escaped string
*/
export const sqlEscaper = (string: string): string => {
// eslint-disable-next-line no-control-regex
const pattern = /[\0\x08\x09\x1a\n\r"'\\\%]/gm;
const regex = new RegExp(pattern);
return string.replace(regex, char => {
const m = ['\\0', '\\x08', '\\x09', '\\x1a', '\\n', '\\r', '\'', '\"', '\\', '\\\\', '%'];
const r = ['\\\\0', '\\\\b', '\\\\t', '\\\\z', '\\\\n', '\\\\r', '\\\'', '\\\"', '\\\\', '\\\\\\\\', '\%'];
return r[m.indexOf(char)] || char;
});
};
export const objectToGeoJSON = (val: any) => {
if (Array.isArray(val)) {
if (getArrayDepth(val) === 1)
return lineString(val.reduce((acc, curr) => [...acc, [curr.x, curr.y]], []));
else
return polygon(val.map(arr => arr.reduce((acc: any, curr: any) => [...acc, [curr.x, curr.y]], [])));
}
else
return point([val.x, val.y]);
};
export const escapeAndQuote = (val: string, client: ClientCode) => {
const { stringsWrapper: sw } = customizations[client];
// eslint-disable-next-line no-control-regex
const CHARS_TO_ESCAPE = /[\0\b\t\n\r\x1a"'\\]/g;
const CHARS_ESCAPE_MAP: Record<string, string> = {
'\0': '\\0',
'\b': '\\b',
'\t': '\\t',
'\n': '\\n',
'\r': '\\r',
'\x1a': '\\Z',
'"': '\\"',
'\'': '\\\'',
'\\': '\\\\'
};
let chunkIndex = CHARS_TO_ESCAPE.lastIndex = 0;
let escapedVal = '';
let match;
while ((match = CHARS_TO_ESCAPE.exec(val))) {
escapedVal += val.slice(chunkIndex, match.index) + CHARS_ESCAPE_MAP[match[0]];
chunkIndex = CHARS_TO_ESCAPE.lastIndex;
}
if (chunkIndex === 0)
return `${sw}${val}${sw}`;
if (chunkIndex < val.length)
return `${sw}${escapedVal + val.slice(chunkIndex)}${sw}`;
return `${sw}${escapedVal}${sw}`;
};
export const valueToSqlString = (args: {
val: any;
client: ClientCode;
field: {type: string; datePrecision?: number; precision?: number | false; isArray?: boolean};
}): string => {
let parsedValue;
const { val, client, field } = args;
const { stringsWrapper: sw } = customizations[client];
if (val === null)
parsedValue = 'NULL';
else if (DATE.includes(field.type)) {
parsedValue = moment(val).isValid()
? escapeAndQuote(moment(val).format('YYYY-MM-DD'), client)
: val;
}
else if (DATETIME.includes(field.type)) {
let datePrecision = '';
for (let i = 0; i < field.datePrecision; i++)
datePrecision += i === 0 ? '.S' : 'S';
parsedValue = moment(val).isValid()
? escapeAndQuote(moment(val).format(`YYYY-MM-DD HH:mm:ss${datePrecision}`), client)
: escapeAndQuote(val, client);
}
else if ('isArray' in field && field.isArray) {
let localVal;
if (Array.isArray(val))
localVal = JSON.stringify(val).replaceAll('[', '{').replaceAll(']', '}');
else
localVal = typeof val === 'string' ? val.replaceAll('[', '{').replaceAll(']', '}') : '';
parsedValue = `'${localVal}'`;
}
else if (TEXT_SEARCH.includes(field.type))
parsedValue = `'${val.replaceAll('\'', '\'\'')}'`;
else if (BIT.includes(field.type))
parsedValue = `b'${hexToBinary(Buffer.from(new Uint8Array(Object.values(val))).toString('hex') as undefined as HexChar[])}'`;
else if (BLOB.includes(field.type)) {
let buffer: Buffer;
if (val instanceof Uint8Array)
buffer = Buffer.from(val);
else
buffer = val;
if (['mysql', 'maria'].includes(client))
parsedValue = `X'${buffer.toString('hex').toUpperCase()}'`;
else if (client === 'pg')
parsedValue = `decode('${buffer.toString('hex').toUpperCase()}', 'hex')`;
}
else if (NUMBER.includes(field.type))
parsedValue = val;
else if (FLOAT.includes(field.type))
parsedValue = parseFloat(val);
else if (SPATIAL.includes(field.type)) {
let geoJson;
if (IS_MULTI_SPATIAL.includes(field.type)) {
const features = [];
for (const element of val)
features.push(objectToGeoJSON(element));
geoJson = {
type: 'FeatureCollection',
features
};
}
else
geoJson = objectToGeoJSON(val);
parsedValue = `ST_GeomFromGeoJSON('${JSON.stringify(geoJson)}')`;
}
else if (val === '') parsedValue = `${sw}${sw}`;
else {
parsedValue = typeof val === 'string'
? escapeAndQuote(val, client)
: typeof val === 'object'
? escapeAndQuote(JSON.stringify(val), client)
: val;
}
return parsedValue;
};
export const jsonToSqlInsert = (args: {
json: Record<string, any>[];
client: ClientCode;
fields: Record<string, {type: string; datePrecision: number}>;
table: string;
options?: {sqlInsertAfter: number; sqlInsertDivider: 'bytes' | 'rows'};
}) => {
const { client, json, fields, table, options } = args;
const sqlInsertAfter = options && options.sqlInsertAfter ? options.sqlInsertAfter : 1;
const sqlInsertDivider = options && options.sqlInsertDivider ? options.sqlInsertDivider : 'rows';
const { elementsWrapper: ew } = customizations[client];
const fieldNames = Object.keys(json[0]).map(key => `${ew}${key}${ew}`);
let insertStmt = `INSERT INTO ${ew}${table}${ew} (${fieldNames.join(', ')}) VALUES `;
let insertsString = '';
let queryLength = 0;
let rowsWritten = 0;
for (const row of json) {
const values = [];
values.push(Object.keys(row).map(key => (
valueToSqlString({ val: row[key], client, field: fields[key] })
)));
if (
(sqlInsertDivider === 'bytes' && queryLength >= sqlInsertAfter * 1024) ||
(sqlInsertDivider === 'rows' && rowsWritten === sqlInsertAfter)
) {
insertsString += insertStmt+';';
insertStmt = `\nINSERT INTO ${ew}${table}${ew} (${fieldNames.join(', ')}) VALUES `;
rowsWritten = 0;
}
rowsWritten++;
if (rowsWritten > 1) insertStmt += ',\n';
insertStmt += `(${values.join(',')})`;
queryLength = insertStmt.length;
}
if (rowsWritten > 0)
insertsString += insertStmt+';';
return insertsString;
};

View File

@ -1,4 +0,0 @@
'use strict';
export function uidGen () {
return Math.random().toString(36).substr(2, 9).toUpperCase();
};

View File

@ -0,0 +1,3 @@
export function uidGen (prefix?: string) {
return (prefix ? `${prefix}:` : '') + Math.random().toString(36).substring(2, 11).toUpperCase();
}

156
src/common/shortcuts.ts Normal file
View File

@ -0,0 +1,156 @@
export const shortcutEvents: Record<string, { l18n: string; l18nParam?: string | number; context?: 'tab' }> = {
'run-or-reload': { l18n: 'application.runOrReload', context: 'tab' },
'open-new-tab': { l18n: 'application.openNewTab', context: 'tab' },
'close-tab': { l18n: 'application.closeTab', context: 'tab' },
'format-query': { l18n: 'database.formatQuery', context: 'tab' },
'kill-query': { l18n: 'database.killQuery', context: 'tab' },
'query-history': { l18n: 'database.queryHistory', context: 'tab' },
'clear-query': { l18n: 'database.clearQuery', context: 'tab' },
// 'save-file': { l18n: 'application.saveFile', context: 'tab' },
'open-file': { l18n: 'application.openFile', context: 'tab' },
'save-file-as': { l18n: 'application.saveFileAs', context: 'tab' },
'next-tab': { l18n: 'application.nextTab' },
'prev-tab': { l18n: 'application.previousTab' },
'open-all-connections': { l18n: 'application.openAllConnections' },
'open-filter': { l18n: 'application.openFilter' },
'next-page': { l18n: 'application.nextResultsPage' },
'prev-page': { l18n: 'application.previousResultsPage' },
'toggle-console': { l18n: 'application.toggleConsole' },
'save-content': { l18n: 'application.saveContent' },
'create-connection': { l18n: 'connection.createNewConnection' },
'open-settings': { l18n: 'application.openSettings' },
'open-scratchpad': { l18n: 'application.openNotes' }
};
interface ShortcutRecord {
event: string;
keys: Electron.Accelerator[] | string[];
/** Needed for default shortcuts */
os: NodeJS.Platform[];
}
/**
* Default shortcuts
*/
const shortcuts: ShortcutRecord[] = [
{
event: 'run-or-reload',
keys: ['F5'],
os: ['darwin', 'linux', 'win32']
},
{
event: 'save-content',
keys: ['CommandOrControl+S'],
os: ['darwin', 'linux', 'win32']
},
{
event: 'kill-query',
keys: ['CommandOrControl+K'],
os: ['darwin', 'linux', 'win32']
},
{
event: 'format-query',
keys: ['CommandOrControl+B'],
os: ['darwin', 'linux', 'win32']
},
{
event: 'clear-query',
keys: ['CommandOrControl+Alt+W'],
os: ['darwin', 'linux', 'win32']
},
{
event: 'query-history',
keys: ['CommandOrControl+G'],
os: ['darwin', 'linux', 'win32']
},
{
event: 'open-new-tab',
keys: ['CommandOrControl+T'],
os: ['darwin', 'linux', 'win32']
},
{
event: 'close-tab',
keys: ['CommandOrControl+W'],
os: ['darwin', 'linux', 'win32']
},
{
event: 'next-tab',
keys: ['Alt+CommandOrControl+Right'],
os: ['darwin', 'win32']
},
{
event: 'prev-tab',
keys: ['Alt+CommandOrControl+Left'],
os: ['darwin', 'win32']
},
{
event: 'next-tab',
keys: ['CommandOrControl+PageDown'],
os: ['linux', 'win32']
},
{
event: 'prev-tab',
keys: ['CommandOrControl+PageUp'],
os: ['linux', 'win32']
},
{
event: 'open-filter',
keys: ['CommandOrControl+F'],
os: ['darwin', 'linux', 'win32']
},
{
event: 'next-page',
keys: ['CommandOrControl+Right'],
os: ['darwin', 'linux', 'win32']
},
{
event: 'prev-page',
keys: ['CommandOrControl+Left'],
os: ['darwin', 'linux', 'win32']
},
{
event: 'open-all-connections',
keys: ['Shift+CommandOrControl+Space'],
os: ['darwin', 'linux', 'win32']
},
{
event: 'toggle-console',
keys: ['CommandOrControl+F12'],
os: ['darwin', 'linux', 'win32']
},
{
event: 'toggle-console',
keys: ['CommandOrControl+`'],
os: ['darwin', 'linux', 'win32']
},
// {
// event: 'save-file',
// keys: ['CommandOrControl+S'],
// os: ['darwin', 'linux', 'win32']
// },
{
event: 'open-file',
keys: ['CommandOrControl+O'],
os: ['darwin', 'linux', 'win32']
},
{
event: 'save-file-as',
keys: ['Shift+CommandOrControl+S'],
os: ['darwin', 'linux', 'win32']
}
];
for (let i = 1; i <= 9; i++) {
shortcutEvents[`select-tab-${i}`] = {
l18n: 'application.selectTabNumber',
l18nParam: i
};
shortcuts.push({
event: `select-tab-${i}`,
keys: [`CommandOrControl+${i}`],
os: ['darwin', 'linux', 'win32']
});
}
export { ShortcutRecord, shortcuts };

View File

@ -1,90 +0,0 @@
'use strict';
import { app, BrowserWindow, nativeImage } from 'electron';
import * as path from 'path';
import { format as formatUrl } from 'url';
import ipcHandlers from './ipc-handlers';
const isDevelopment = process.env.NODE_ENV !== 'production';
process.env.ELECTRON_DISABLE_SECURITY_WARNINGS = 'true';
// global reference to mainWindow (necessary to prevent window from being garbage collected)
let mainWindow;
async function createMainWindow () {
const icon = require('../renderer/images/logo-32.png');
const window = new BrowserWindow({
width: 1024,
height: 800,
minWidth: 900,
minHeight: 550,
title: 'Antares',
autoHideMenuBar: true,
icon: nativeImage.createFromDataURL(icon.default),
webPreferences: {
nodeIntegration: true,
'web-security': false,
enableRemoteModule: true,
spellcheck: false
},
frame: false,
backgroundColor: '#1d1d1d'
});
if (isDevelopment) {
await window.loadURL(`http://localhost:${process.env.ELECTRON_WEBPACK_WDS_PORT}`);
const { default: installExtension, VUEJS_DEVTOOLS } = require('electron-devtools-installer');
window.webContents.openDevTools();
installExtension(VUEJS_DEVTOOLS)
.then(name => {
console.log(name, 'installed');
})
.catch(err => {
console.log(err);
});
}
else {
await window.loadURL(formatUrl({
pathname: path.join(__dirname, 'index.html'),
protocol: 'file',
slashes: true
}));
}
window.on('closed', () => {
mainWindow = null;
});
window.webContents.on('devtools-opened', () => {
window.focus();
setImmediate(() => {
window.focus();
});
});
return window;
};
// Initialize ipcHandlers
ipcHandlers();
// quit application when all windows are closed
app.on('window-all-closed', () => {
// on macOS it is common for applications to stay open until the user explicitly quits
if (process.platform !== 'darwin')
app.quit();
});
app.on('activate', () => {
// on macOS it is common to re-create a window even after all windows have been closed
if (mainWindow === null)
mainWindow = createMainWindow();
});
// create main BrowserWindow when electron is ready
app.on('ready', () => {
mainWindow = createMainWindow();
});

View File

@ -1,7 +0,0 @@
import { app, ipcMain } from 'electron';
export default () => {
ipcMain.on('closeApp', () => {
app.exit();
});
};

View File

@ -0,0 +1,111 @@
import { app, dialog, ipcMain, safeStorage } from 'electron';
import * as Store from 'electron-store';
import * as fs from 'fs';
import { validateSender } from '../libs/misc/validateSender';
import { ShortcutRegister } from '../libs/ShortcutRegister';
export default () => {
ipcMain.on('close-app', (event) => {
if (!validateSender(event.senderFrame)) {
return {
status: 'error',
response: 'Unauthorized process'
};
}
app.exit();
});
ipcMain.on('set-key', (event, key) => {
if (safeStorage.isEncryptionAvailable()) {
const sessionStore = new Store({
name: 'session',
fileExtension: ''
});
const encrypted = safeStorage.encryptString(key);
sessionStore.set('key', encrypted);
event.returnValue = true;
}
});
ipcMain.on('get-key', (event) => {
if (!safeStorage.isEncryptionAvailable()) {
event.returnValue = false;
return;
}
const sessionStore = new Store({
name: 'session',
fileExtension: ''
});
try {
const encrypted = sessionStore.get('key') as string;
const key = safeStorage.decryptString(Buffer.from(encrypted, 'utf-8'));
event.returnValue = key;
}
catch (error) {
event.returnValue = false;
}
});
ipcMain.handle('show-open-dialog', (event, options) => {
if (!validateSender(event.senderFrame)) return { status: 'error', response: 'Unauthorized process' };
return dialog.showOpenDialog(options);
});
ipcMain.handle('show-save-dialog', (event, options) => {
if (!validateSender(event.senderFrame)) return { status: 'error', response: 'Unauthorized process' };
return dialog.showSaveDialog(options);
});
ipcMain.handle('get-download-dir-path', (event) => {
if (!validateSender(event.senderFrame)) return { status: 'error', response: 'Unauthorized process' };
return app.getPath('downloads');
});
ipcMain.handle('resotre-default-shortcuts', (event) => {
if (!validateSender(event.senderFrame)) return { status: 'error', response: 'Unauthorized process' };
const shortCutRegister = ShortcutRegister.getInstance();
shortCutRegister.restoreDefaults();
});
ipcMain.handle('reload-shortcuts', (event) => {
if (!validateSender(event.senderFrame)) return { status: 'error', response: 'Unauthorized process' };
const shortCutRegister = ShortcutRegister.getInstance();
shortCutRegister.reload();
});
ipcMain.handle('update-shortcuts', (event, shortcuts) => {
if (!validateSender(event.senderFrame)) return { status: 'error', response: 'Unauthorized process' };
const shortCutRegister = ShortcutRegister.getInstance();
shortCutRegister.updateShortcuts(shortcuts);
});
ipcMain.handle('unregister-shortcuts', (event) => {
if (!validateSender(event.senderFrame)) return { status: 'error', response: 'Unauthorized process' };
const shortCutRegister = ShortcutRegister.getInstance();
shortCutRegister.unregister();
});
ipcMain.handle('read-file', (event, filePath) => {
if (!validateSender(event.senderFrame)) return { status: 'error', response: 'Unauthorized process' };
try {
const content = fs.readFileSync(filePath, 'utf-8');
return content;
}
catch (error) {
return { status: 'error', response: error.toString() };
}
});
ipcMain.handle('write-file', (event, filePath, content) => {
if (!validateSender(event.senderFrame)) return { status: 'error', response: 'Unauthorized process' };
try {
fs.writeFileSync(filePath, content, 'utf-8');
return { status: 'success' };
}
catch (error) {
return { status: 'error', response: error.toString() };
}
});
};

View File

@ -1,84 +0,0 @@
import { ipcMain } from 'electron';
import { AntaresConnector } from '../libs/AntaresConnector';
import InformationSchema from '../models/InformationSchema';
import Generic from '../models/Generic';
export default (connections) => {
ipcMain.handle('testConnection', async (event, conn) => {
const Connection = new AntaresConnector({
client: conn.client,
params: {
host: conn.host,
port: +conn.port,
user: conn.user,
password: conn.password
}
});
await Connection.connect();
try {
await InformationSchema.testConnection(Connection);
return { status: 'success' };
}
catch (err) {
return { status: 'error', response: err };
}
});
ipcMain.handle('checkConnection', async (event, uid) => {
return uid in connections;
});
ipcMain.handle('connect', async (event, conn) => {
const Connection = new AntaresConnector({
client: conn.client,
params: {
host: conn.host,
port: +conn.port,
user: conn.user,
password: conn.password
},
poolSize: 3
});
try {
await Connection.connect();
const { rows: structure } = await InformationSchema.getStructure(Connection);
connections[conn.uid] = Connection;
return { status: 'success', response: structure };
}
catch (err) {
return { status: 'error', response: err.toString() };
}
});
ipcMain.handle('disconnect', (event, uid) => {
connections[uid].destroy();
delete connections[uid];
});
ipcMain.handle('refresh', async (event, uid) => {
try {
const { rows: structure } = await InformationSchema.getStructure(connections[uid]);
return { status: 'success', response: structure };
}
catch (err) {
return { status: 'error', response: err.toString() };
}
});
ipcMain.handle('rawQuery', async (event, { uid, query, schema }) => {
if (!query) return;
try {
const result = await Generic.raw(connections[uid], query, schema);
return { status: 'success', response: result };
}
catch (err) {
return { status: 'error', response: err.toString() };
}
});
};

View File

@ -0,0 +1,171 @@
import * as antares from 'common/interfaces/antares';
import { ipcMain } from 'electron';
import * as fs from 'fs';
import { SslOptions } from 'mysql2';
import { ClientsFactory } from '../libs/ClientsFactory';
import { validateSender } from '../libs/misc/validateSender';
export default (connections: Record<string, antares.Client>) => {
ipcMain.handle('test-connection', async (event, conn: antares.ConnectionParams) => {
if (!validateSender(event.senderFrame)) return { status: 'error', response: 'Unauthorized process' };
const params = {
host: conn.host,
port: +conn.port,
user: conn.user,
password: conn.password,
readonly: conn.readonly,
database: '',
schema: '',
databasePath: '',
ssl: undefined as SslOptions,
ssh: undefined as {
host: string;
username: string;
password: string;
port: number;
privateKey: string;
passphrase: string;
keepaliveInterval: number;
}
};
if (conn.database)
params.database = conn.database;
if (conn.databasePath)
params.databasePath = conn.databasePath;
if (conn.ssl) {
params.ssl = {
key: conn.key ? fs.readFileSync(conn.key).toString() : null,
cert: conn.cert ? fs.readFileSync(conn.cert).toString() : null,
ca: conn.ca ? fs.readFileSync(conn.ca).toString() : null,
ciphers: conn.ciphers,
rejectUnauthorized: !conn.untrustedConnection
};
}
if (conn.ssh) {
params.ssh = {
host: conn.sshHost,
username: conn.sshUser,
password: conn.sshPass,
port: conn.sshPort ? conn.sshPort : 22,
privateKey: conn.sshKey ? fs.readFileSync(conn.sshKey).toString() : null,
passphrase: conn.sshPassphrase,
keepaliveInterval: conn.sshKeepAliveInterval ? conn.sshKeepAliveInterval*1000 : null
};
}
try {
const connection = await ClientsFactory.getClient({
uid: conn.uid,
client: conn.client,
params
});
await connection.connect();
if (conn.client === 'firebird')
connection.raw('SELECT rdb$get_context(\'SYSTEM\', \'DB_NAME\') FROM rdb$database');
else
await connection.select('1+1').run();
connection.destroy();
return { status: 'success' };
}
catch (err) {
return { status: 'error', response: err.toString() };
}
});
ipcMain.handle('check-connection', async (event, uid) => {
return uid in connections;
});
ipcMain.handle('connect', async (event, conn: antares.ConnectionParams) => {
if (!validateSender(event.senderFrame)) return { status: 'error', response: 'Unauthorized process' };
const params = {
host: conn.host,
port: +conn.port,
user: conn.user,
password: conn.password,
application_name: 'Antares SQL',
readonly: conn.readonly,
database: '',
schema: '',
databasePath: '',
ssl: undefined as SslOptions,
ssh: undefined as {
host: string;
username: string;
password: string;
port: number;
privateKey: string;
passphrase: string;
keepaliveInterval: number;
}
};
if (conn.database)
params.database = conn.database;
if (conn.databasePath)
params.databasePath = conn.databasePath;
if (conn.schema)
params.schema = conn.schema;
if (conn.ssl) {
params.ssl = {
key: conn.key ? fs.readFileSync(conn.key).toString() : null,
cert: conn.cert ? fs.readFileSync(conn.cert).toString() : null,
ca: conn.ca ? fs.readFileSync(conn.ca).toString() : null,
ciphers: conn.ciphers,
rejectUnauthorized: !conn.untrustedConnection
};
}
if (conn.ssh) {
params.ssh = {
host: conn.sshHost,
username: conn.sshUser,
password: conn.sshPass,
port: conn.sshPort ? conn.sshPort : 22,
privateKey: conn.sshKey ? fs.readFileSync(conn.sshKey).toString() : null,
passphrase: conn.sshPassphrase,
keepaliveInterval: conn.sshKeepAliveInterval ? conn.sshKeepAliveInterval*1000 : null
};
}
try {
const connection = ClientsFactory.getClient({
uid: conn.uid,
client: conn.client,
params,
poolSize: conn.singleConnectionMode ? 0 : 5
});
await connection.connect();
const structure = await connection.getStructure(new Set());
connections[conn.uid] = connection;
return { status: 'success', response: structure };
}
catch (err) {
return { status: 'error', response: err.toString() };
}
});
ipcMain.handle('disconnect', (event, uid) => {
if (!validateSender(event.senderFrame)) return { status: 'error', response: 'Unauthorized process' };
connections[uid].destroy();
delete connections[uid];
});
};

View File

@ -0,0 +1,18 @@
import * as antares from 'common/interfaces/antares';
import { ipcMain } from 'electron';
import { validateSender } from '../libs/misc/validateSender';
export default (connections: Record<string, antares.Client>) => {
ipcMain.handle('get-databases', async (event, uid) => {
if (!validateSender(event.senderFrame)) return { status: 'error', response: 'Unauthorized process' };
try {
const result = await connections[uid].getDatabases();
return { status: 'success', response: result };
}
catch (err) {
return { status: 'error', response: err.toString() };
}
});
};

View File

@ -0,0 +1,78 @@
import * as antares from 'common/interfaces/antares';
import { ipcMain } from 'electron';
import { validateSender } from '../libs/misc/validateSender';
export default (connections: Record<string, antares.Client>) => {
ipcMain.handle('get-function-informations', async (event, params) => {
if (!validateSender(event.senderFrame)) return { status: 'error', response: 'Unauthorized process' };
try {
const result = await connections[params.uid].getFunctionInformations(params);
return { status: 'success', response: result };
}
catch (err) {
return { status: 'error', response: err.toString() };
}
});
ipcMain.handle('drop-function', async (event, params) => {
if (!validateSender(event.senderFrame)) return { status: 'error', response: 'Unauthorized process' };
try {
await connections[params.uid].dropFunction(params);
return { status: 'success' };
}
catch (err) {
return { status: 'error', response: err.toString() };
}
});
ipcMain.handle('alter-function', async (event, params) => {
if (!validateSender(event.senderFrame)) return { status: 'error', response: 'Unauthorized process' };
try {
await connections[params.uid].alterFunction(params);
return { status: 'success' };
}
catch (err) {
return { status: 'error', response: err.toString() };
}
});
ipcMain.handle('alter-trigger-function', async (event, params) => {
if (!validateSender(event.senderFrame)) return { status: 'error', response: 'Unauthorized process' };
try {
await connections[params.uid].alterTriggerFunction(params);
return { status: 'success' };
}
catch (err) {
return { status: 'error', response: err.toString() };
}
});
ipcMain.handle('create-function', async (event, params) => {
if (!validateSender(event.senderFrame)) return { status: 'error', response: 'Unauthorized process' };
try {
await connections[params.uid].createFunction(params);
return { status: 'success' };
}
catch (err) {
return { status: 'error', response: err.toString() };
}
});
ipcMain.handle('create-trigger-function', async (event, params) => {
if (!validateSender(event.senderFrame)) return { status: 'error', response: 'Unauthorized process' };
try {
await connections[params.uid].createTriggerFunction(params);
return { status: 'success' };
}
catch (err) {
return { status: 'error', response: err.toString() };
}
});
};

View File

@ -1,13 +0,0 @@
import connection from './connection';
import tables from './tables';
import updates from './updates';
import application from './application';
const connections = {};
export default () => {
connection(connections);
tables(connections);
updates();
application();
};

Some files were not shown because too many files have changed in this diff Show More