npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@kassamina/cordova-plugin-ionic-migrate-storage

v0.3.5

Published

Cordova plugin that migrates localStorage datafrom `cordova-plugin-ionic-webview` 1.x to 4.x This works for iOS only!

Downloads

14

Readme

cordova-plugin-ionic-migrate-storage

Cordova plugin that migrates localStorage data from [email protected] to [email protected] and above. This works for iOS only!

Installation

Straight forward, just via cordova plugin add.

cordova plugin add --save @kassamina/[email protected]

This work is forked from https://github.com/pointmanhq/cordova-plugin-ionic-migrate-storage, which migrates IndexedDB, LocalStorage, and WebSQL from cordova's default UIWebView to cordova-plugin-ionic-webview. We needed to migrate not from the default UIWebView, but from [email protected] to [email protected], and only localStorage was needed, so IndexedDB and WebSQL support were removed and the migration locations were made configurable. Theoretically, this plugin could also be used to migrate from UIWebView to cordova-plugin-ionic-migrate-storage. The following settings are configurable (defaults listed): This work is forked from https://github.com/pointmanhq/cordova-plugin-ionic-migrate-storage, which migrates IndexedDB, LocalStorage, and WebSQL from cordova's default UIWebView to cordova-plugin-ionic-webview. We needed to migrate not from the default UIWebView, but from [email protected] to [email protected], and only localStorage was needed, so IndexedDB and WebSQL support were removed and the migration locations were made configurable. Theoretically, this plugin could also be used to migrate from UIWebView to cordova-plugin-ionic-migrate-storage. The following settings are configurable (defaults listed):

#define DEFAULT_TARGET_HOSTNAME @"localhost" #define DEFAULT_TARGET_SCHEME @"ionic" #define DEFAULT_TARGET_PORT_NUMBER @"0"

#define DEFAULT_ORIGINAL_HOSTNAME @"localhost" #define DEFAULT_ORIGINAL_SCHEME @"http" #define DEFAULT_ORIGINAL_PORT_NUMBER @"8080"

<!-- [email protected] defaults to serving from http://localhost on Android and ionic://localhost on iOS -->
<preference name="Scheme" value="http" />
<preference name="iosScheme" value="ionic" />
<preference name="Hostname" value="localhost" />
<preference name="WKPort" value="" />

<!-- [email protected] defaults to serving from http://localhost:8080 -->
<preference name="MIGRATE_STORAGE_ORIGINAL_SCHEME" value="http" />
<preference name="MIGRATE_STORAGE_ORIGINAL_HOSTNAME" value="localhost" />
<preference name="MIGRATE_STORAGE_ORIGINAL_PORT_NUMBER" value="8080" />

Testing

To test this, you will have to do the following:

  • Delete the app from your device
  • Remove the webview and migrate plugins from your app:
cordova plugin rm --save cordova-plugin-ionic-webview @kassamina/cordova-plugin-ionic-migrate-storage
  • Build your app and run it. Store something in localStorage, WebSQL and IndexedDB.
  • Add the plugins back:
cordova plugin add --save [email protected] @kassamina/[email protected]
  • Build your app and run it. The stored data must all exist!

Caveats / Warnings / Gotchas

  • Until the plugin reaches v.1.0.0, breaking changes will be introduced in every minor version upgrade! Use one of the tags listed here if you want to lock it down to a specific changeset.
  • This has only been tested with ios, migrating from [email protected] to [email protected]!
  • Currently, this plugin does not work on simulators. PRs welcome!
  • This copy is uni-directional, from old webview to new webview. It does not go the other way around. So essentially, this plugin will run only once!

Thanks

Most of the code in this plugin was either adapted or inspired from a plethora of other sources. Creating this plugin would not have been possible if not for these repositories and their contributors:

  • https://github.com/styleseat/cordova-plugin-ionic-migrate-storage
  • https://github.com/pointmanhq/cordova-plugin-ionic-migrate-storage
  • https://github.com/jairemix/cordova-plugin-migrate-localstorage/
  • https://github.com/MaKleSoft/cordova-plugin-migrate-localstorage
  • https://github.com/Telerik-Verified-Plugins/WKWebView/
  • https://github.com/ccgus/fmdb
  • https://github.com/jacek-marchwicki/leveldb-jni

TODO

  • Pull out debug flags to make them platform specific and not rely on booleans in the code.
  • Add some unit testing.
  • Open source stuff - github issue templates, CONTRIBUTING doc, Local development doc etc.