Summary: Filter exceptions allow us to add singular items to table views. Extremely useful for Bloks Debugger where we have to jump between multiple types of rows that could be filtered out
Reviewed By: LukeDefeo
Differential Revision: D47472006
fbshipit-source-id: 74d21a65d364ec5ab88652effc06aade20ad80b2
Summary:
Add support for secondary indices, to allow for cheap lookups, like a set of events for a specific UI element in the events table:
```
#### getAllRecordsByIndex
Usage: `getAllRecordsByIndex({ indexedAttribute: value, indexAttribute2: value2, .... })`
This method allows fast lookups for objects that match specific attributes exactly.
Returns all items matching the specified index query.
Note that the results are unordered, unless
records have not been updated using upsert / update, in that case
insertion order is maintained.
If no index has been specified for this exact keyset in the indexQuery (see options.indices), this method will throw.
Example:
```
```
const ds = createDataSource([eatCookie, drinkCoffee, submitBug], {
key: 'id',
indices: [
['title']
['id', 'title'],
['title', 'done'],
],
});
// Find first element with title === cookie (or undefined)
const todo = ds.getFirstRecordByIndex({
title: 'cookie',
})
// Find all elements where title === cookie, and done === false
const todos = ds.getAllRecordsByIndex({
title: 'cookie',
done: false,
})
```
Reviewed By: antonk52
Differential Revision: D47396435
fbshipit-source-id: 20c4527be83532863b9b07ab20ebf20a80c3c35d
Summary: In the next diffs, we are going to show a message only once when the plugin gets activated. This diff adds a way to unsubscribe from Flipper events after the first execution.
Reviewed By: LukeDefeo
Differential Revision: D47366239
fbshipit-source-id: 18cb99df865f9cf26c055a99b7d1b7058dcb123c
Summary:
Should be available now with
```
getFlipperLib().settings().isDarkMode
```
Differential Revision: D46685851
fbshipit-source-id: 0777437b7ca06051cc3fd4dc1b794242f453f2b5
Summary:
*Potentially.
A big thanks to lblasa and aigoncharov for helping with debugging. Looking at
`ptail -f errorlog_flipper_javascript` reveals that messages now include a spurious amount of unescaped newlines. E.g. P768993195
From memory, these were not there when I wrote the categorizer when I was able to copy-paste from ptail to the unit tests.
D44729490 added prettifying to the results inadvertently.
Reviewed By: lblasa
Differential Revision: D46685543
fbshipit-source-id: 98da5eff92900042fc5306ca5d5652d8940ff2e1
Summary:
^
Basically, update Jest and fix any raised issues. Mainly:
- Update necessary dependencies
- Update snapshots
- `useFakeTimers` caused a few issues which meant that the way we hook into the performance object had to be tweaked. The main code change is: `//fbsource/xplat/sonar/desktop/scripts/jest-setup-after.tsx`
- `mocked` -> `jest.mocked`
Changelog: Update Jest to v29.5.1
Reviewed By: antonk52
Differential Revision: D46319818
fbshipit-source-id: d218ca8f7e43abac6b00844953ddeb7f4e1010a2
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/4732
This diff adds a `language` field into `CreatePasteArgs` type to potentially specify programming language in the paste service
Reviewed By: mweststrate
Differential Revision: D45701098
fbshipit-source-id: 080d76e5ff332518881e9c6b84aa47aaea680309
Summary: Requested by antonk52 and MSYS team
Reviewed By: passy
Differential Revision: D44662243
fbshipit-source-id: 2bace476c4e79b6a05bfb89ddc3e6acb437c6c3b
Summary: It no longer makes sense since we are going to export "isLoggedIn" atom that always stays up-to-date in subsequent diffs
Reviewed By: LukeDefeo
Differential Revision: D44631234
fbshipit-source-id: 3e3b29b77d250eef430e81eef80098afe38a1538
Summary:
This change exposes the env variables via the FlipperLib interface used by plugins.
The variables are already white-listed and safe to be used by plugins according to documentation.
Reviewed By: antonk52
Differential Revision: D40852147
fbshipit-source-id: bbb3b052d33bf5cf75c81166af2400fe6a359256
Summary: Re-expose one of the legacy exports we had before. Requested by MSYS
Reviewed By: passy
Differential Revision: D40979328
fbshipit-source-id: 7e8f089a182a62f392f3a720bee9b81698930f9d
Summary:
Flipper plugins fail when importing css from third-party dependencies. This diff tries to fix that.
Effectively, the plugin can import the css and export it when is bundled.
When we load the plugin, we check if there's a css file for it. If there's one, we return it and try to use it.
Reviewed By: aigoncharov
Differential Revision: D40758178
fbshipit-source-id: e53afffcc481504905d5eeb1aea1f9114ee2a86b
Summary:
In a headless mode we do not have access to local storage. As a result, headless plugins that try to use `persistToLocalStorage` option crash. We should ignore the option for these plugins for now and add a way to persist the plugin state to the disk in a headless mode in the future.
CHANGELOG: Ignore persistToLocalStorage in headless mode
Resolves https://github.com/facebook/flipper/issues/4190
Reviewed By: lblasa
Differential Revision: D40341873
fbshipit-source-id: 40774c0024f79cf1652f24146fd16f6a101ca99e
Summary:
flipper-server-companion depends on flipper-plugin. flipper-plugin includes dependencies that run only in a browser. Splitting flipper-plugin into core and browser packages helps to avoid including browser-only dependencies into flipper-server bundle.
As a result, bundle size could be cut in half. Subsequently, RSS usage drops as there is twice as less code to process for V8.
Note: it currently breaks external flipper-data-source package. It will be restored in subsequent diffs
Reviewed By: lblasa
Differential Revision: D38658285
fbshipit-source-id: 751b11fa9f3a2d938ce166687b8310ba8b059dee