Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog.
v3.0.2 (next)
Added
-
[JLClipboard] Added
$clipboard.set(text)
and$clipboard.get()
functions. This will allow copy and access text in native clipboard. -
[JLDevice] Added
$device.info()
function. To provide access to native device information. -
[JLContacts] Added
$contacts.authorize()
function. Now the extension would not trigger authorization on install. -
[JLAudio] Added
$audio
extension. It has$audio.player
,$audio.recorder
and$audio.vibrate
functions. -
[JLPhotoLibrary] Added
$photolibrary.camera.authorize()
and$photolibrary.camera.granted()
functions. The extension no longer triggers authorization on install. -
[Core] Added a Makefile command to fix "bad interpreter: Operation not permitted" errors. This error maybe caused by downloading bash files from untrusted sources. Execute
make permissions
insidesources/xcode
directory to fix any compilation problems with that issue. -
[Core] Add a
example.html
file. Fill it with the examples for the extension. -
[Core] Add a Build Phase Script in the framework project.
Changed
- [Core] Improved the way the example html file is generated. Now extensions can add the examples on compilation time.
NAME="MyExtension"
EXAMPLES_DIR="${PWD}/../../App/Files/Examples"
TEMPLATES_DIR="${EXAMPLES_DIR}/Templates"
SOURCES_DIR="${PWD}/${NAME}"
# Only copy the examples if the examples directory exists
if [ -d "${EXAMPLES_DIR}" ]
then
cat "${SOURCES_DIR}/examples.html" > "${EXAMPLES_DIR}/${NAME}.example.html"
fi
Fixed
- [ARM Macs]. Automatically detects processor and selects the proper build tool.
- [Core]. Fixed crash when clicking a non html link (now shows SFSafariViewController).
Downloads
v3.0.1 (March 2023)
Added
-
Ability for extensions to inject Javascript to the WKWebView instance.
-
Ability for the WKWebView instance to load url by using deep links like:
jasonelle://href?=https://google.cl
. -
Added
JLPhotoLibrary
extension that helps requesting access to photo library. -
$keychain
extension:$keychain.set
,$keychain.get
,$keychain.remove
for usage within the WebView. This will enable storing data securely in the iOS's keychain. -
$cookies
extension:$cookies.set
,$cookies.get
,$cookies.remove
for usage within the WebView. This will help with storing cookies in the keychain. Requires$keychain
extension to be enabled. Also you can use$cookies.Cookies
to access js-cookie library. -
$contacts
extension:$contacts.all
for usage within the WebView. -
Ability to have
allowed
list of urls in configuration. Not allowed urls will launch native browser. -
Added LaunchScreen file (Both in SwiftUI and Storyboard file).
-
Added WebView.edgesIgnoringSafeArea(.all). Some websites need this, specially when using a navbar. Thanks to @Mättu in Telegram for pointing this out.
-
Added meta viewport js fix for websites that do not have proper metatag. In webview.js.
-
Added example extension.
-
Added hook triggering for extensions.
-
Added event triggering in webview for extensions.
-
Added Reachability Events Extension.
Fixed
-
WKWebView
triggeredappdidLoad
event more than once. Now it only triggers the event when loaded. -
build.sh
crashed when using paths with spaces.
Downloads
v3.0.0 (September 2022)
This is a new engine created from scratch by Camilo in 2022. (AGPLv3 or MPLv2 Licenses). It was ditched the old json
based approach to a javascript
one. Consists of mainly a WebView engine, because there are lots of competition of "native over the wire" frameworks, and was better to focus on the Web App market such as Bubble users.
- New rewrite of the engine from scratch.
- Will only focus on webview workflow.
- No need for Cocoapods, Carthage or Swift PM.
- Native over the wire workflows delegated to other frameworks like Native Live.
Downloads
Legacy Versions (2016 - 2022)
These versions are not currently supported, but maybe something can be learned or be useful. These were using the old engine created originally by Ethan. (MIT License).