Commit Graph

24 Commits

Author SHA1 Message Date
Stefan 5b9e4faa8a feat(wallet) run WebEngineView as a service in background
This is required to control the resource consumption in case of no
usage of wallet connect
Hence we load the WebEngineView only if we have active pairings and
such that SDK events are expected from the paired dapps.

Also:

- Moved the generic WebEngineView communication bridge to StatusQ
- Added basic tests for WebEngineLoader
- Add a way to know when wallet is loaded (`walletReady`)
- Add storybook support for mock of nim sections as context properties

Updates: #12639
2023-11-27 22:54:11 +01:00
Stefan ccd8c5b65f feat(wallet) Wallet Connect integration prototype
Implement a prototype of integrating [WalletConnect Web SDK]()

- integrate WalletConnect Web SDK using Node.js and packing it using
  [webpack](https://webpack.js.org/guides/getting-started/)
  - this way, we achieve the same versioning strategy for the SDK
- add WalletConnectSDK view
  - it is used to load the web SDK via a WebView (validated working on
  Mac and Windows)
- add new app dependency of WebView QT
  - also update vendor packages `Dotherside` and `nimqml` to add
    required WebView::initialize API used to initialize the WebView
    integration at the app start
- add WalletConnectPage to Storybook for quick prototyping
  - Also add dependency for WebView Qt lib
- index.js is the wrapper used to provide a simple stateful interface
  with the WC SDK
- Entry in ui/generate-rcc.go ensures the node_modules cache is excluded
  from the resource file

Notes:

- Added `com.apple.security.cs.allow-jit` entitlement when signing the
app package. This allows Execution of JIT-compiled Code Entitlement
required by the fast-path of the JavaScriptCore framework on MacOS
platforms.
- Keep some debugging entries expected to help debugging Linux package
- Removed outdated `DerivationPathInputRegressionTests` qml test

Closes #12301
2023-10-30 09:29:33 +01:00
Michał Cieślak ba7d775dac feat(Storybook): Re-run tests automatically for opened page
Closes: #12331
2023-10-16 13:37:08 +02:00
Michał Cieślak 8a996a9175 feat(Storybook): Add tests runner available from the app 2023-10-16 13:37:08 +02:00
Michał Cieślak 853641fb89 feat(Storybook): read Figma links directly from pages 2023-10-03 21:32:41 +02:00
Michał Cieślak d5317a91ba feat(Storybook): Button for opening pages directory
Closes: #12271
2023-10-02 11:17:56 +02:00
Michał Cieślak 0107203a46 feat(Storybook): Validator app to check if all pages can be compiled
Closes: #12282
2023-09-29 14:59:34 +02:00
Michał Cieślak cb07625a57 Storybook: `PagesModel.qml` removed, adding new pages simplified
Closes: #11716
2023-08-01 13:10:56 +02:00
Cuteivist f7e75208a5
feat(@desktop/wallet): Added transaction address component (#10665)
closes #10583
2023-05-19 11:51:47 +02:00
Igor Sirotin aefa2b9f48
fix(StatusQ): StatusQ is QML module (#10207)
* StatusQ QML module
* qzxing is static lib again
* updated StatusQ resources
* fixed Emoji lookup
* added display to tests-imports ci
2023-04-14 11:18:56 +03:00
Lukáš Tinkl 3fd196323e chore: silence warnings 2023-03-08 18:45:27 +01:00
Michał Cieślak 8f25b93f96 chore(general): Move QClipboardProxy to StatusQ 2023-02-09 12:48:11 +01:00
Michał Cieślak 8e39d761dc feat(Storybook): Figma links loaded from json file
Closes: #8187
2022-11-29 11:30:13 +01:00
Michał Cieślak a998f654a2 fix(Storybook): linking WebEngine causes errors on Linux
Linking to WE is not needed. Setting Qt::AA_ShareOpenGLContexts
attribute is sufficient to make QWebEngine working properly.

Closes: #8454
2022-11-28 15:04:31 +01:00
alexjba 1b2fd40b20 Adding qmake project file for wasm
This changeset contains the prerequisites required to compile StoryBook on wasm_32 and the README file with instructions
2022-11-23 16:20:37 +02:00
Michał Cieślak c5b409a42a feat(Storybook): Foldable sections in pages list
Based on SectionsDecoratorModel extending source model
by foldable sections.

Closes: #7928
2022-11-21 12:51:22 +01:00
Lukáš Tinkl 77fa884a36 chore: fix storybook regressions 2022-11-14 14:14:32 +01:00
Jonathan Rainville cea4945cba feat(storybook): add browser settings in the storybook 2022-10-25 14:27:50 -04:00
Lukáš Tinkl 6e664564e0 feat(storybook): add Profile Popup
This adds the ProfileDialogView to storybook pages

For now, there's just one control to switch between own profile and
another profile; more to come in later PRs.

The mocked global objects (mainModuleInst and globalUtilsInst) are
injected via QML

Fixes: #7820
2022-10-21 18:12:39 +02:00
Michał Cieślak dfc5db27d5 feat(Storybook): in-page, state-preserving hot reloading
In comparison to generic page-wise hot reloading, this technique
requires using dedicated component within a storybook page but
provides greater flexibility e.g. preserving component state across
source reloads.

Closes: #7975
2022-10-20 20:34:35 +02:00
Michał Cieślak 8981b8615a feat(Storybook): Hot reloading for pages
Closes: #7975
2022-10-20 20:34:35 +02:00
Michał Cieślak de4ef7daf0 fix(Storybook): mock for DotherSide types added
Additionally `ui/imports/shared/views/chat/qmldir` fixed.

Closes: #7932
2022-10-17 10:50:12 -04:00
Patryk Osmaczko 89f6b5f3cc chore(storybook): fix clang-tidy `readability-static-accessed-through-instance` 2022-10-14 13:57:18 +02:00
Michał Cieślak 38299f7169 feat(Storybook): Initial project config and main qml/cpp
Closes: #7547
2022-10-10 15:09:12 +02:00