Compare commits

..

No commits in common. "f80ab7f5d880e8baada55fe80d36acb2d5ae55ec" and "5f8c75408d6ff8e107847900cac109a8cd7b3801" have entirely different histories.

8 changed files with 11 additions and 19 deletions

1
.gitignore vendored
View File

@ -1,5 +1,4 @@
.c9 .c9
npm-debug.log
lerna-debug.log lerna-debug.log
node_modules node_modules
packages/**/dist packages/**/dist

View File

@ -6,7 +6,7 @@ and derived state.
# [property](./src/property.js) # [property](./src/property.js)
A `property` is a simple value store that can report when its value changes. It is good for wrapping A `property` is a simple value store that can report when its value changes. It is good for wrapping
external values passed into a component so compute types can depend on them and only recompute external values passed into a component so compute types can dependent on them and only recompute
when these values change. It can also be used to receive events such as _window.onresize_ to always when these values change. It can also be used to receive events such as _window.onresize_ to always
provide the current viewport size. provide the current viewport size.
@ -167,7 +167,7 @@ gap).
```js ```js
const getToken = stream( const getToken = stream(
async tokenUrl => fetch(tokenUrl), // computation function async tokenUrl => fetch(tokenUrl), // computation function
[getTokenUrl, tokenTimeout] // array of dependencies, can be a property, computed or stream [getTokenUrl] // array of dependencies, can be a property, computed or stream
); );
``` ```

View File

@ -36,7 +36,6 @@ localhost certificate exception in order to operate properly.
In the future, I plan to add: In the future, I plan to add:
- convert server to use [cors-anywhere](https://github.com/Rob--W/cors-anywhere)
- sharable links - sharable links
- local file storage - local file storage
- CSRF for interacting with server component - CSRF for interacting with server component

View File

@ -1,4 +1,4 @@
# Portal # [Portal](https://gitlab.com/explorigin/portal)
Portal is an utility to expose an API between Javascript contexts. For example, web workers and the Portal is an utility to expose an API between Javascript contexts. For example, web workers and the
DOM thread can expose methods to each other. DOM thread can expose methods to each other.

View File

@ -7,23 +7,18 @@ metadata without having the raw data bogging down your PouchDB database.
## Overview ## Overview
Attachment Proxy works by intercepting attachments bound for the pouchdb backend and passing them to Attachment Proxy works by intercepting attachments bound for the pouchdb backend and passing them to
a custom `save` function that will return a blob to be saved in the pouchdb document. The returned a custom `save` function that will return a sentry blob to be saved in the pouchdb document.
blob should be a smaller *sentry* blob with just enough information needed to fetch the full version
that is being proxied. `stringToBlob` is provided to make this process easier for simple string
identifier cases. Alternatively, you can pass the original attachment through if you do not want it
to be proxied.
When an attachment is requested, the document attached blob (returned from `save`) will be provided When an attachment is requested, the sentry blob will be provided to a custom `getFn` function to be
to a custom `getFn` function to be converted into desired document. `blobToString` is provided to converted into desired document.
make this easier for simple string identifier cases.
Similar to `getFn`, the sentry blob is provided to `remove` when an attachment or its containing Similar to `getFn`, the sentry blob is provided to `remove` when an attachment or its containing
document is deleted. document is deleted.
Each function is expected to be asynchronous and the database will not continue its operation until Each function is expected to be asynchronous and the database will not continue its operation until
the proxy function completes to ensure data integrity. It may be desirable to for the `remove` the proxy function completes to ensure data integrity. It may be desirable to for the `remove`
function to delay attachment cleanup. In this case, the document blob will be removed from document function to delay attachment cleanup. The proxy blob will be removed from document (effectively
(effectively orphaning the proxied attachment until it is cleaned asynchronously). orphaning the proxied attachment until it is cleaned).
## Example ## Example

View File

@ -1,4 +1,4 @@
# Projector [WIP] # Projector
A DOM-abstraction communicator. Projector consumes patches to update the DOM in _frames_ and A DOM-abstraction communicator. Projector consumes patches to update the DOM in _frames_ and
provides sanitized event objects to subscribers. This doesn't work yet. Please go look at the provides sanitized event objects to subscribers. This doesn't work yet. Please go look at the

View File

@ -1,7 +1,6 @@
# Router # Router
Router encompases the core functions of a router. It is designed to be slim and have an The core functions of router that is designed to be slim and have an easy-to-read, yet powerful API.
easy-to-read, yet powerful API.
**NOTE** This router is geared toward offline-first apps and thus does not support pushState. **NOTE** This router is geared toward offline-first apps and thus does not support pushState.

View File

@ -1,4 +1,4 @@
# TrimKit # [TrimKit](https://gitlab.com/explorigin/trimkit)
TrimKit is a set of DOM and API abstractions for the purpose of better Javascript minification. For TrimKit is a set of DOM and API abstractions for the purpose of better Javascript minification. For
example: example: