<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>Kloudless File Picker</title>
<script src="https://static-cdn.kloudless.com/p/platform/sdk/kloudless.explorer.js"></script>
</head>
<body>
<h1>Welcome to the Kloudless JS File Picker</h1>
<hr />
<h2>Documentation</h2>
<p>Documentation can be found on
<a href="https://github.com/kloudless/file-picker" target="_blank">
GitHub</a>.
</p>
<p>Click the Edit button in the top right corner to view the source and try it out for yourself.</p>
<h2>Example</h2>
<p>Click a button below to launch the Chooser or Saver.</p>
<button id="chooser">Choose a file</button>
<button id="saver">Save a file</button>
<h3>File information</h3>
<div id="file-info"><pre>Result will appear here</pre></div>
</body>
</html>
// File Explorer Configuration
var explorer = window.Kloudless.explorer({
// Chooser and Saver Options
app_id: 'iCZ_ICMy43H0NSoz0QbLvmyjzCHf2frAOPaBfWVgh9_vrFIM',
computer: true,
persist: "local",
services: ['all'],
display_backdrop: true,
create_folder: true,
retrieve_token: false,
tokens: [],
// Chooser options
multiselect: true,
link: true,
direct_link: false,
copy_to_upload_location: false,
upload_location_account: null,
upload_location_folder: null,
types: ['all'],
});
// Initializing Chooser
explorer.choosify(document.getElementById('chooser'));
// Initializing Saver
var files = [{
url: "https://s3-us-west-2.amazonaws.com/static-assets.kloudless.com/static/logo_white.png",
name: "kloudless-logo.png"
}];
explorer.savify(document.getElementById('saver'), files);
/********************************************************
The code below is used for setting event handlers
and not for initialization.
*********************************************************/
var events = {
'success': 'files',
'cancel': null,
'error': 'error',
'open': null,
'close': null,
'selected': 'files',
'addAccount': 'account',
'deleteAccount': 'account',
'startFileUpload': 'file',
'finishFileUpload': 'file'
}
for (var event in events) {
(function(evt) {
if (events[event]) {
explorer.on(evt, function(arg) {
printResult('Fired ' + evt + ' event.', true);
printResult(JSON.stringify(arg, null, 2), false);
});
} else {
explorer.on(evt, function() {
printResult('Fired ' + evt + ' event.', false);
});
}
})(event);
}
function printResult(result, clear) {
var eventContainer = document.getElementById('event-info');
// remove all elements
if (clear) {
while (eventContainer.lastChild) {
eventContainer.removeChild(
eventContainer.lastChild);
}
}
var eventJSON = document.createElement('pre');
eventJSON.appendChild(document.createTextNode(result));
eventContainer.appendChild(eventJSON);
}
Output
300px
You can jump to the latest bin by adding /latest
to your URL
Keyboard Shortcuts
Shortcut | Action |
---|---|
ctrl + [num] | Toggle nth panel |
ctrl + 0 | Close focused panel |
ctrl + enter | Re-render output. If console visible: run JS in console |
Ctrl + l | Clear the console |
ctrl + / | Toggle comment on selected lines |
ctrl + ] | Indents selected lines |
ctrl + [ | Unindents selected lines |
tab | Code complete & Emmet expand |
ctrl + shift + L | Beautify code in active panel |
ctrl + s | Save & lock current Bin from further changes |
ctrl + shift + s | Open the share options |
ctrl + y | Archive Bin |
Complete list of JS Bin shortcuts |
JS Bin URLs
URL | Action |
---|---|
/ | Show the full rendered output. This content will update in real time as it's updated from the /edit url. |
/edit | Edit the current bin |
/watch | Follow a Code Casting session |
/embed | Create an embeddable version of the bin |
/latest | Load the very latest bin (/latest goes in place of the revision) |
/[username]/last | View the last edited bin for this user |
/[username]/last/edit | Edit the last edited bin for this user |
/[username]/last/watch | Follow the Code Casting session for the latest bin for this user |
/quiet | Remove analytics and edit button from rendered output |
.js | Load only the JavaScript for a bin |
.css | Load only the CSS for a bin |
Except for username prefixed urls, the url may start with http://jsbin.com/abc and the url fragments can be added to the url to view it differently. |