You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
39 lines
1.1 KiB
39 lines
1.1 KiB
|
|
|
|
/* global document, grist, window */
|
|
|
|
function readDoc() {
|
|
const fetchTable = grist.docApi.fetchSelectedTable();
|
|
const placeholder = document.getElementById('placeholder');
|
|
const fallback = setTimeout(() => {
|
|
placeholder.innerHTML = '<div id="output">no joy</div>';
|
|
}, 1000);
|
|
fetchTable
|
|
.then(table => {
|
|
clearTimeout(fallback);
|
|
placeholder.innerHTML = `<div id="output">${JSON.stringify(table)}</div>`;
|
|
});
|
|
}
|
|
|
|
function setup() {
|
|
grist.ready();
|
|
grist.on('message', function(e) {
|
|
if ('options' in e) return;
|
|
document.getElementById('rowId').innerHTML = e.rowId || '';
|
|
document.getElementById('tableId').innerHTML = e.tableId || '';
|
|
readDoc();
|
|
});
|
|
grist.onRecord(function(rec) {
|
|
document.getElementById('record').innerHTML = JSON.stringify(rec);
|
|
});
|
|
grist.onRecords(function(recs) {
|
|
document.getElementById('records').innerHTML = JSON.stringify(recs);
|
|
});
|
|
grist.onNewRecord(function(rec) {
|
|
document.getElementById('record').innerHTML = 'new';
|
|
});
|
|
grist.enableKeyboardShortcuts();
|
|
}
|
|
|
|
window.onload = setup;
|