Add comprehensive installation and setup documentation

- Add GETTING_STARTED.md with quick start guide and development modes
- Add INSTALL.sh automated installation script
- Add INSTALLATION_CHECKLIST.md, INSTALLATION_SUCCESS.md, and INSTALLATION_SUMMARY.md
- Add QUICK_REFERENCE.md for common commands
- Add SETUP_GUIDE.md with detailed setup instructions
- Update README.md with improved project overview
- Add did-wallet app dependencies and node_modules
This commit is contained in:
Dorian
2026-01-27 17:18:21 +00:00
parent a81f655133
commit 0d073fa89e
22658 changed files with 4494151 additions and 6 deletions

35
apps/web5-dwn/node_modules/browser-level/util/clear.js generated vendored Normal file
View File

@@ -0,0 +1,35 @@
'use strict'
module.exports = function clear (db, location, keyRange, options, callback) {
if (options.limit === 0) return db.nextTick(callback)
const transaction = db.db.transaction([location], 'readwrite')
const store = transaction.objectStore(location)
let count = 0
transaction.oncomplete = function () {
callback()
}
transaction.onabort = function () {
callback(transaction.error || new Error('aborted by user'))
}
// A key cursor is faster (skips reading values) but not supported by IE
// TODO: we no longer support IE. Test others
const method = store.openKeyCursor ? 'openKeyCursor' : 'openCursor'
const direction = options.reverse ? 'prev' : 'next'
store[method](keyRange, direction).onsuccess = function (ev) {
const cursor = ev.target.result
if (cursor) {
// Wait for a request to complete before continuing, saving CPU.
store.delete(cursor.key).onsuccess = function () {
if (options.limit <= 0 || ++count < options.limit) {
cursor.continue()
}
}
}
}
}

View File

@@ -0,0 +1,14 @@
'use strict'
const textEncoder = new TextEncoder()
module.exports = function (data) {
if (data instanceof Uint8Array) {
return data
} else if (data instanceof ArrayBuffer) {
return new Uint8Array(data)
} else {
// Non-binary data stored with an old version (level-js < 5.0.0)
return textEncoder.encode(data)
}
}

View File

@@ -0,0 +1,20 @@
/* global IDBKeyRange */
'use strict'
module.exports = function createKeyRange (options) {
const lower = options.gte !== undefined ? options.gte : options.gt !== undefined ? options.gt : undefined
const upper = options.lte !== undefined ? options.lte : options.lt !== undefined ? options.lt : undefined
const lowerExclusive = options.gte === undefined
const upperExclusive = options.lte === undefined
if (lower !== undefined && upper !== undefined) {
return IDBKeyRange.bound(lower, upper, lowerExclusive, upperExclusive)
} else if (lower !== undefined) {
return IDBKeyRange.lowerBound(lower, lowerExclusive)
} else if (upper !== undefined) {
return IDBKeyRange.upperBound(upper, upperExclusive)
} else {
return null
}
}