mirror of https://github.com/jstrieb/urlpages.git
64 lines
1.4 KiB
JavaScript
64 lines
1.4 KiB
JavaScript
/**
|
|
* api.js
|
|
*
|
|
* API For encoding and decoding URL hash objects
|
|
*
|
|
* Created by Jacob Strieb
|
|
* July 2020
|
|
*/
|
|
|
|
|
|
/*******************************************************************************
|
|
* Global Variables
|
|
******************************************************************************/
|
|
|
|
const LATEST_API_VERSION = "0.2.0";
|
|
|
|
var apiVersions = {};
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
* API Version 0.2.0 (Latest)
|
|
******************************************************************************/
|
|
|
|
apiVersions["0.2.0"] = {
|
|
|
|
VERSION: "0.2.0",
|
|
|
|
/* Return a link to view the page */
|
|
getViewLink: function(pageData) {
|
|
var urlData = {
|
|
version: this.VERSION,
|
|
compressed: false,
|
|
body: pageData,
|
|
};
|
|
|
|
const hashObject = b64.encode(JSON.stringify(urlData));
|
|
return `http://jstrieb.github.io/urlpages/#${hashObject}`;
|
|
},
|
|
|
|
/* Return the page data from the object */
|
|
decode: function(urlData) {
|
|
return urlData.body;
|
|
},
|
|
|
|
}
|
|
|
|
|
|
|
|
/*******************************************************************************
|
|
* API Version 0.0.1 (Original)
|
|
******************************************************************************/
|
|
|
|
apiVersions["0.0.1"] = {
|
|
|
|
VERSION: "0.0.1",
|
|
|
|
/* Return a link to view the page */
|
|
getViewLink: function(pageData) {
|
|
return `http://jstrieb.github.io/urlpages/#${b64.encode(pageData)}`;
|
|
},
|
|
|
|
}
|