aboutsummaryrefslogtreecommitdiffstats
path: root/src/webview
Commit message (Collapse)AuthorAge
* refactor: code cleanup (#1476)Libravatar MCMXC2023-12-07
| | | | | - auto update `settings.json` due to new vscode version - replace deprecated `e.keyCode` with `e.key` - fix various code snippets with sonarlint and other lint plugins
* workaround: notifications not displaying for WhatsApp (#1357)Libravatar Drew Green2023-09-13
| | | Added error-handling for notification failure due to object cloning error
* Upgrade npm modules (#1312)Libravatar Vijay Aravamudhan2023-08-16
|
* refactor: more lint improvementsLibravatar MCMXC2023-07-30
| | | | | | | | | - set parserOptions.ecmaVersion to latest and env to es2024 in eslint config - install missing types libraries - install eslint-plugin-sonar - enable eslint-plugin-sonar recommended rules and declare jsx-runtime for react in eslint config - clean up disabled lint rules which don't inflict problems anymore - disable various lint issues and fix others
* refactor: various improvements (#1296)Libravatar MCMXC2023-07-30
| | | | | | | | | | | | | | | | | | | | | | | | | * refactor: various improvements - enable no-use-before-define eslint rule - shuffle code to conform to no-use-before-define eslint rule - remove btoa dependency which is deprecated and replace with Buffer.from(string).toString('base64') - convert some any types into useful ones - add type annotations where possible - remove unused @types/expect.js - install @types/semver and ts-node which were missing - repair and rewrite add-crowdin-contributors script - remove export keyword from variables which are never consumed in another file - remove unity indicator hack where linked issue was closed - remove module declaration for kebab-case which is unused - add missing state interface for certain components - remove default exports for files which already have a named export - export IRecipePreview so it can be used throughout codebase - remove unused removeCacheForCallWith method from CachedRequest.ts - cleanup unused colors and styles inside legacy theme * - improve ColorPickerInput - fix invalid DOM nesting with div inside p in EditSettingsForm - fix progressbarAccentColor color picker not updating input when using slider - install missing @types/react-color dependency
* feat: picture in picture availability for video playersLibravatar MCMXC2023-07-26
| | | | | - add buildMenuForVideo method in contextMenuBuilder.ts - add picture in picture context menu entry which toggles picture in picture mode
* chore: improve lint setupLibravatar MCMXC2023-07-25
| | | | | | | | | | | | | | | - update eslint config - merged eslint rules for JS and TS to avoid duplicates - extended stricter lint ruleset from typescript-eslint - corrected wrong setup for certain eslint rulesets - opt in to reportUnusedDisableDirectives config option - fix or disable a lot of lint issues throughout codebase - remove trailingComma: all from prettier config which is default in prettier v3 - add volta configuration to package.json to autoload correct node and pnpm versions - upgrade all eslint and prettier related dependencies to latest - remove config options from settings.json which are default anyways - remove config options from settings.json which are outdated/unknown - set up prettier as default formatter in settings.json
* Add new context menu item to download images (#935)Libravatar Vijay Aravamudhan2023-05-27
|
* Upgrade npm modulesLibravatar Vijay A2023-05-24
|
* Added debug stmts when loading 'user.css' and 'darkmode.css'Libravatar Vijay A2023-02-01
|
* Bump uuid from 8.3.2 to 9.0.0 (#884)Libravatar dependabot[bot]2023-01-29
| | | | | Use new version of 'uuid' module and also refer to v4 of the uuid spec for generating unique notificationId Co-authored-by: Vijay A <vraravam@users.noreply.github.com>
* Minor refactoringLibravatar Vijay A2022-12-26
|
* chore: [#42] use noop consistently throughout (#808)Libravatar muhamedsalih-tw2022-11-30
|
* fix: ensure default values are working for the all fields in all settings ↵Libravatar Ricardo Cino2022-11-28
| | | | | screens (#750) Co-authored-by: Vijay A <vraravam@users.noreply.github.com>
* fix: fix contextMenu not visibleLibravatar Balaji Vijayakumar2022-11-03
|
* refactor: migrate recipe.js to typescriptLibravatar Balaji Vijayakumar2022-11-02
|
* Feature: Add Ferdium Translator (#548)Libravatar André Oliveira2022-08-17
| | | Add feature to translate text natively using https://github.com/shikar/NODE_GOOGLE_TRANSLATE package and a LibreTranslate self-hosted option (already running on our server on https://translator.ferdium.org).
* fix: dark mode recipe and app handlerLibravatar André Oliveira2022-08-06
|
* eslint needs to be executed at the top-level to actually workv6.0.1-nightly.3Libravatar Vijay A2022-07-25
|
* Change isImage function to link instead of URL (#470)Libravatar André Oliveira2022-07-12
| | | | | | | * Change isImage function * Fix comments * Fix last comments and lint
* chore: Mobx & React-Router upgrade (#406)Libravatar Ricardo Cino2022-07-07
| | | Co-authored-by: Vijay A <vraravam@users.noreply.github.com>
* Use default exports instead of named exportsLibravatar Vijay A2022-07-02
|
* chore: servicesStore + models into typescript (#344)Libravatar Ricardo Cino2022-06-23
|
* Fix images with query strings (#318)Libravatar André Oliveira2022-06-21
|
* Feature: Add ability to navigate recipe with mouse buttons (#223)Libravatar André Oliveira2022-06-09
|
* Expose a new utility method 'Ferdium.isImage' for use by recipesLibravatar André Oliveira2022-05-31
|
* Add new service-level option 'trapLinkUrls' (#154)Libravatar Vijay Aravamudhan2022-05-23
| | | | | | This option can be used to allow the user to choose how to handle links (whether to open in the default browser or within the Ferdium service itself) Co-authored-by: André Oliveira <oliveira.andrerodrigues95@gmail.com>
* Extract utility functions for JSON parsingLibravatar Vijay A2022-05-15
|
* fix: desktopCapturer in electron 17+ (fixes #59)Libravatar Kristóf Marussy2022-04-29
| | | | | | | | | | | Since electron 17, desktopCapturer is only available in the main process: https://www.electronjs.org/blog/electron-17-0#desktopcapturergetsources-in-the-renderer This patch adds a new IPC message from the service renderer to the main process so it can still invoke desktopCapturer.getSources Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* Preload safe debug shim (#29)Libravatar Kristóf Marussy2022-04-22
| | | | | | | | | | | | | | | | In https://github.com/ferdium/ferdium-app/pull/23 we removed usages of the debug package due to an electron bug. This patch aims to restore some debug functionality by introducing a shim. The shim detect whether if it is being introduced in a preload script where the electron but would be triggered, and falls back to a simple replacement for debug. However, in the main and renderer processes, where a preload script is not being used, we still get full debug functionality. In this way, a module can be used both in a preload script and outside of it, while still preserving debug functionality whenever possible. Signed-off-by: Kristóf Marussy <kristof@marussy.com>
* Turn off usage of 'debug' npm package using with electron-16 (fixes #17)Libravatar Vijay Aravamudhan2022-04-22
|
* Matched casing for almost all replacementsLibravatar Aditya Mangalampalli2022-04-16
|
* chore: do not assume that the recipe contains a 'webview.js' fileLibravatar Vijay A2021-12-03
|
* chore: convert various files to TS (#2246)Libravatar Markus Hatvan2021-11-18
| | | | | | * convert various files to TS * removed outdated docs/example-feature folder * turn off unicorn/no-empty-file * update eslint config
* refactor: Remove duplicate codeLibravatar Vijay A2021-10-29
|
* build: use node 16 and npm 8 (#2157)Libravatar Markus Hatvan2021-10-28
| | | | | | | | | | | - change node version from 14.18.1 to 16.13.0 - change npm version from 6.14.13 to 8.1.0 - update package-lock.json to lockfileVersion 2 - use @sindresorhus/do-not-disturb instead of macos-notification-state to avoid failing CI - run ferdi build on latest macos and windows - skip husky in CI builds - move 'cld' and 'node-mac-permissions' to optionalDependency Co-authored-by: Vijay A <vraravam@users.noreply.github.com>
* Add active dialog title feature (#2114)Libravatar Iaroslav2021-10-23
| | | | https://github.com/getferdi/ferdi/issues/1280 WhatsApp-like services can set active dialog title to the app title eg. Ferdi - WhatsApp - Contact Name
* fix: Remove 'counterCache' which was precluding from resetting the badge ↵Libravatar Vijay Aravamudhan2021-10-23
| | | | once the counts reached zero (#2113)
* chore: update eslint setup (#2074)Libravatar Markus Hatvan2021-10-15
|
* chore: convert various JS to TS (#2062)Libravatar Markus Hatvan2021-10-14
|
* refactor: move 'DEFAULT_APP_SETTINGS' from 'environment' to 'config' since ↵Libravatar Vijay A2021-10-01
| | | | it doesn't depend on the running process any more.
* chore: update various outdated node_modules (#1969)Libravatar Markus Hatvan2021-09-29
|
* refactor: remove optional parameters from 'popup' invocation which was tying ↵Libravatar Vijay A2021-09-27
| | | | us into 'electron/remote'
* refactor: remove references 'Ferdi.ipcRenderer' in recipes - create an ↵Libravatar Vijay A2021-09-27
| | | | abstraction layer instead for better maintainance
* refactor: remove references 'Ferdi.ipcRenderer' in recipes - create an ↵Libravatar Vijay A2021-09-27
| | | | abstraction layer instead for better maintainance
* refactor: remove references to 'electron/remote' - part deux (#1987)Libravatar Vijay Aravamudhan2021-09-26
|
* security: do not expose electron API to services 2Libravatar Kristóf Marussy2021-09-21
| | | | After refactoring some recipes in getferdi#1964, we no longer need to expose some APIs to recipes.
* remove reference to '@electron/remote' module (for spell-checker) (#1968)Libravatar Vijay Aravamudhan2021-09-20
| | | | | * fix: remove reference to '@electron/remote' module for spell-checker * chore: removed redundant methods from being exposed via 'window.ferdi' to the recipes
* security: do not expose electron API to services (#1964)Libravatar Kristóf Marussy2021-09-19
| | | | | | | | | | | | | | | | | | | | | * security: do not expose electron API to services Service code running the the main world should not have access to any electron API. This still allows recipes from webview.js accessing these APIs through the @electron/remote module and/or the Ferdi object, but webview-unsafe.js and the untrusted code coming from the service will not have any access. Currently, no recipe accesses these APIs in its webview-unsafe.js, so the change should not break any recipes. * Expose electron API through the Ferdi object Instead of the unsafe window.ferdi in the main world, we should expose functionality to recipes through the RecipeWebview class. * Update CHANGELOG.md
* feat: add eslint-plugin-unicorn (#1936)Libravatar Markus Hatvan2021-09-14
|