WOWidget share feature allows users to export/import pre-configured widgets.
The share url consists of https://www.wowidget.com/share
and base64 encoded parameters.
Base64 is used to hide (not encrypt) your shared URL.
iOS makes the URL invalid (cuts out part of the URL) if any of the URL part is longer than 301 characters. Therefore base64 data are split by a hyphen character into 301 long chunks.
The order of the parameters does not matter. Parameters are joined with a vertical bar character and string values are percent-encoded as "value".addingPercentEncoding(withAllowedCharacters: .alphanumerics)
. JavaScript encodeURIComponent can also be used.
Config is represented as a JSON object. Config is optional and depends on the type. The order of the values in config does not matter.
[x, y]
as floats.{ "zoom": 1.11, "allowInteraction": false, "javascript": true, "height": 238.5, "origin": [0, 333.33333333333333], "background": "EFD500FF" }
Same as HTML config.
{ "fields": [ { "label": "Name of field", "path": ["Path", "to", 1, "field"], "background": "EFD500FF" }, { "label": "", "path": [], "background": "00000000" }, { "label": "Emoji", "path": ["Emoji"], "background": "F0F0F0F0" } ] }
Same as JSON config.
u=https%3A%2F%2Fwww%2Ewowidget%2Ecom|n=WOWidget%20%F0%9F%98%80|t=1|s=1|c=%7B%22allowInteraction%22%3Afalse%2C%22background%22%3A%22EFD500FF%22%2C%22height%22%3A300%2C%22javascript%22%3Atrue%2C%22origin%22%3A%5B0%2C0%5D%2C%22zoom%22%3A1%7D
dT1odHRwcyUzQSUyRiUyRnd3dyUyRXdvd2lkZ2V0JTJFY29tfG49V09XaWRnZXQlMjAlRjAlOUYlOTglODB8dD0xfHM9MXxjPSU3QiUyMmFsbG93SW50ZXJhY3Rpb24lMjIlM0FmYWxzZSUyQyUyMmJhY2tncm91bmQlMjIlM0ElMjJFRkQ1MDBGRiUyMiUyQyUyMmhlaWdodCUyMiUzQTMwMCUyQyUyMmphdmFzY3JpcHQlMjIlM0F0cnVlJTJDJTIyb3JpZ2luJTIyJTNBJTVCMCUyQzAlNUQlMkMlMjJ6b29tJTIyJTNBMSU3RA==
dT1odHRwcyUzQSUyRiUyRnd3dyUyRXdvd2lkZ2V0JTJFY29tfG49V09XaWRnZXQlMjAlRjAlOUYlOTglODB8dD0xfHM9MXxjPSU3QiUyMmFsbG93SW50ZXJhY3Rpb24lMjIlM0FmYWxzZSUyQyUyMmJhY2tncm91bmQlMjIlM0ElMjJFRkQ1MDBGRiUyMiUyQyUyMmhlaWdodCUyMiUzQTMwMCUyQyUyMmphdmFzY3JpcHQlMjIlM0F0cnVlJTJDJTIyb3JpZ2luJTIyJTNBJTVCMCUyQzAlNUQlMkMlMjJ6-b29tJTIyJTNBMSU3RA==