This is a hacky prototype of what IDB-on-Promises could look like.
STATUS: See this updated proposal instead.
See also:
https://github.com/slightlyoff/Promises/tree/master/historical_interest/reworked_APIs/IndexedDB
// Copyright 2019 Google LLC. | |
// SPDX-License-Identifier: Apache-2.0 | |
// Basic p(r)olyfill for proposed feature | |
// This defines no successor of empty arrays, so the range for prefix | |
// [] or [[],[]] has no upper bound. | |
// An alternate definition would preclude adding additional nesting, | |
// so the range for prefix [] would have upper bound [[]] and the | |
// range for prefix [[], []] would have upper bound [[], [[]]]. |
// Copyright 2019 Google LLC. | |
// SPDX-License-Identifier: Apache-2.0 | |
var name = 'db' + Date.now(); | |
var openReq = indexedDB.open(name, 1); | |
openReq.onupgradeneeded = function() { | |
var db = openReq.result; | |
var store = db.createObjectStore('store'); | |
for (var i = 0; i < 100; i += 10) | |
store.put("record-" + i, i); |
This is a hacky prototype of what IDB-on-Promises could look like.
STATUS: See this updated proposal instead.
See also:
https://github.com/slightlyoff/Promises/tree/master/historical_interest/reworked_APIs/IndexedDB
#!/usr/bin/env bash | |
# Usage: | |
# echo -e "... $(text-style style ...) ..." | |
# echo -e "... $(text-reset) ..." | |
# echo -e "... $(text-color r g b) ..." | |
# echo -e "... $(background-color r g b) ..." | |
# | |
# Where: | |
# styles: |
// http://cautionsingularityahead.blogspot.com/2012/07/resource-using-in-javascript.html | |
// Say you have a heavy-weight resource that you can explicitly finalize - either through | |
// some API or just by dropping a reference when you're done even if you want to hold onto | |
// the wrapper: | |
function Resource(a) { | |
var res = "a resource of " + a; | |
this.get = function() { | |
return res; |
STATUS: Obsolete - see this updated proposal instead.
Extend IDBDatabase with:
interface IDBDatabase {
IDBExplicitTransaction explicitTransaction(scope, mode);
};
... to support more fine-grained commenting and collaboration.
# Custom prompt | |
function prompt { | |
write-host -NoNewLine -ForegroundColor Red $pwd | |
# Current git branch name | |
$branch = git rev-parse --abbrev-ref HEAD | |
if ($branch) { | |
write-host -NoNewLine -ForegroundColor Green (' [' + $branch + ']') | |
} |
Status: Initial thought experiment. Feedback welcome.
There are times when Indexed DB's transaction-centric API is too heavyweight: