Summary: Exception showed up in our monitoring. The only `.sort` that happens in that request/response sequence is the one updated. Didn't get to the root of this, but likely the plugin returns nothing rather than an empty array when no databases present?
Reviewed By: LukeDefeo
Differential Revision: D47665268
fbshipit-source-id: 3f8dea591db3e6cb5d4e0d09f893a177ad4f642e
Summary:
Remove reference to limitation of an API to a particular platform or app.
We show in Flipper whether the plugin is compatible or not. For example, if an iOS device is connected, for plugins that don't support iOS, Flipper marks them as disabled and show a message.
Reviewed By: lblasa
Differential Revision: D36241811
fbshipit-source-id: 4f936279c8dd616fc95a4e6c3e149a0b74b98bd6
Summary:
^
Not exactly sure how to reproduce the issue. Having said that:
- A database id is a non-zero number (1..n)
- If there's no selected database and/or there's no databases, then selectedDatabase is '0', which is an invalid database id.
- It is safer to check if the selected database id falls within bounds before attempting to obtain the tables from it.
From Logview, if the database id is '0', which is invalid, then we attempt to access a database at index -1 (database[selectedDatabase - 1]) which is definitely invalid. The returned object is undefined and hence the error.
Changelog: Fixes an issue on the databases plugin when there is no selected database.
Reviewed By: mweststrate
Differential Revision: D35810827
fbshipit-source-id: 4c9f112eebcd0aa3fcd5df316749f48f3922381c
Summary: Restyle of the page, including changes to spelling, grammar, links, and structure (where relevant).
Reviewed By: nikoant
Differential Revision: D35579752
fbshipit-source-id: c06ac9a812b244a9ace5c829df5c347d450f5e3b
Summary: Restyle of the page, including changes to spelling, grammar, links, and structure (where relevant).
Reviewed By: nikoant
Differential Revision: D35579365
fbshipit-source-id: cb04b5e839b3d4ae74c4a20dd4a2fadd853d4181
Summary: From stack trace seems that we don't always get columns from the plugin, in which case we can't display anything
Reviewed By: lawrencelomax
Differential Revision: D33981285
fbshipit-source-id: 0d6bf2d9364f7dac93e2179e372308da51699bd3
Summary:
changelog: make sure database plugin is horizontally scrollable
fixes https://github.com/facebook/flipper/issues/2306
(assumed that'd be fixed by previous diff, but the plugin doesn't use the `DataTable` abstraction yet, athough it has a component with the same name :')
Reviewed By: cekkaewnumchai
Differential Revision: D33368215
fbshipit-source-id: f6a9b876ba3cd4aea7faa85b045a7614278e1c86
Summary:
This diff moves all UI code from app/src to app/flipper-ui-core. That is now slightly too much (e.g. node deps are not removed yet), but from here it should be easier to move things out again, as I don't want this diff to be open for too long to avoid too much merge conflicts.
* But at least flipper-ui-core is Electron free :)
* Killed all cross module imports as well, as they where now even more in the way
* Some unit test needed some changes, most not too big (but emotion hashes got renumbered in the snapshots, feel free to ignore that)
* Found some files that were actually meaningless (tsconfig in plugins, WatchTools files, that start generating compile errors, removed those
Follow up work:
* make flipper-ui-core configurable, and wire up flipper-server-core in Electron instead of here
* remove node deps (aigoncharov)
* figure out correct place to load GKs, plugins, make intern requests etc., and move to the correct module
* clean up deps
Reviewed By: aigoncharov
Differential Revision: D32427722
fbshipit-source-id: 14fe92e1ceb15b9dcf7bece367c8ab92df927a70
Summary: Larger list of fixes. Adding another package to the flipper export is a bit nasty but it unblocks us for now and centralises `remote` access which seems like a win for FAAS.
Reviewed By: mweststrate
Differential Revision: D30785421
fbshipit-source-id: 931297e8566b5d8a213b69ae87d0cda7648b3ed4
Summary: Moved plugin documentation and related assets to plugin folders, fixed links and configured redirects where required. Now these docs are used for both showing docs in Flipper and generating Flipper docs website.
Reviewed By: passy
Differential Revision: D29465567
fbshipit-source-id: 3ec4240b215b0d5baea5154f64266a9ba7ead3a5
Summary: Changed some imports, and again the Flipper initialisation broke. Refactored the store initialization to create nowhere module local constants, which prevents generally against module loading issues, making it possible to load all code first, and then intialise things through the `init()` method, which should make Flipper initialisation a lot more robust to changes
Reviewed By: passy
Differential Revision: D29233603
fbshipit-source-id: 322cb87cba23228b1d7a88634b7b3995e27cc277
Summary: Edit button was not visible which blocked editing of databases
Reviewed By: passy
Differential Revision: D29139000
fbshipit-source-id: d0e8d22ca1a1a39697ec70e94e3eb7422e32de48
Summary: We somehow had both `__test__` and `__tests__`. Moving over to the more common place.
Reviewed By: mweststrate
Differential Revision: D29062420
fbshipit-source-id: 1589fcda18609dcc61b1ca4ef80cbf48c9e8d170
Summary: Changelog: Increase width of database name and table name dropdowns
Reviewed By: fabiomassimo
Differential Revision: D29062064
fbshipit-source-id: 46278ae6587d2feadea20fd1c5b4e04400034362
Summary: Now we support splitting metadata to public and fb-internal (see the previous diff in the stack), and this diff actually cleans up all public plugin metadata from fb-specific things.
Reviewed By: passy
Differential Revision: D28568413
fbshipit-source-id: eae699eabaae489c4bcfbfcc407c3bef42bfd338
Summary:
Changelog: Standardized DataList component
This diff standardizes the DataList component, by reusing the DataList. This is done to be able to take full advantage of all its features like virtualisation, keyboard support, datasource support, etc.
Also cleaned up DataTable properties a bit, by prefixing all flags with `enableXXX` and setting clear defaults
Reviewed By: passy
Differential Revision: D28119721
fbshipit-source-id: b7b241ea18d788bfa035389cc8c6ae7ea95ecadb
Summary: Extracted plugin UI root coomponent to a separate file to avoid falling back to full reloads even when "--fast-refresh" flag provided
Reviewed By: mweststrate
Differential Revision: D28119498
fbshipit-source-id: 18ef891512cbe5ddc34cacf7010dfd82f86c4fcc
Summary:
Moving Value/renderValue API to "database" plugin as these APIs used exclusively by this plugin.
Alternative to that could be moving this API to "flipper-plugin" instead, but I think it doesn't make sense to expose public API which is only used in one plugin.
Reviewed By: mweststrate
Differential Revision: D28110483
fbshipit-source-id: 1576444681c1e0531fe45f0c15f442d65a28f803
Summary: Use DataTable to show table structure
Reviewed By: mweststrate
Differential Revision: D28110485
fbshipit-source-id: 81f843a4763e1fbf5acf870621bc9049f719fd2c
Summary:
Cleaned up margins and paddings by removing hardcoded values and use constant sizes from "themes" instead.
Changelog: Database plugin UI aligned with the new Flipper UI
Reviewed By: mweststrate
Differential Revision: D28094217
fbshipit-source-id: 6514b2f1ea7073ca658a86e49c2be029f054ddf0
Summary: Used Antd's Select component instead of the old one. In addition to that also enabled search in Select which can be quite handly as there might be many databases / tables.
Reviewed By: mweststrate
Differential Revision: D28068179
fbshipit-source-id: 4ff337a532e035c8b53a23858b5ba6d900e65ebd
Summary: Replaced all usages of FlexRow / FlexColumn to new Layout component
Reviewed By: mweststrate
Differential Revision: D28055698
fbshipit-source-id: ad50762b068c897e5c4c182ac2d575d7e3a5f166
Summary: Just small refactoring to extract / memoize some of components
Reviewed By: mweststrate
Differential Revision: D28055699
fbshipit-source-id: 3d689a4e41e3f3c4c4e2e8cc2887cb255b4c4dc2
Summary: I found a bug after migration to Sandy. It is now not possible to add queries to favorites. This diff fixes the issue.
Reviewed By: mweststrate
Differential Revision: D28066435
fbshipit-source-id: 129a62dab9521160f8957abba70e5c7a6e609839
Summary:
Here I'm changing plugin repository structure to allow re-using of shared packages between both public and fb-internal plugins, and to ensure that public plugins has their own yarn.lock as this will be required to implement reproducible jobs checking plugin compatibility with released flipper versions.
Please note that there are a lot of moved files in this diff, make sure to click "Expand all" to see all that actually changed (there are not much of them actually).
New proposed structure for plugin packages:
```
- root
- node_modules - modules included into Flipper: flipper, flipper-plugin, react, antd, emotion
-- plugins
--- node_modules - modules used by both public and fb-internal plugins (shared libs will be linked here, see D27034936)
--- public
---- node_modules - modules used by public plugins
---- pluginA
----- node_modules - modules used by plugin A exclusively
---- pluginB
----- node_modules - modules used by plugin B exclusively
--- fb
---- node_modules - modules used by fb-internal plugins
---- pluginC
----- node_modules - modules used by plugin C exclusively
---- pluginD
----- node_modules - modules used by plugin D exclusively
```
I've moved all public plugins under dir "plugins/public" and excluded them from root yarn workspaces. Instead, they will have their own yarn workspaces config and yarn.lock and they will use flipper modules as peer dependencies.
Reviewed By: mweststrate
Differential Revision: D27034108
fbshipit-source-id: c2310e3c5bfe7526033f51b46c0ae40199fd7586