orbitdb-archive / orbit-db-access-controllers Goto Github PK
View Code? Open in Web Editor NEWAccess Controllers for OrbitDB
License: MIT License
Access Controllers for OrbitDB
License: MIT License
would be good to either update the docs for this in the readme to show the create method; or add a base create method to the interface.
it may be best to update the docs to include the create method being overridden, while also adding an error message to the interface method and making it clear that .create needs to return the class instance.
related: orbitdb/orbitdb#981
If you want.... Thanks!
How about adding custom CRDT operations like "GRANT" and "REVOKE" so we no longer need an extra database?
The access controller could be able to see the database oplog and build capabilities from GRANT and REVOKE operations.
(By the way, this could solve orbitdb/orbitdb#680)
These custom operations could be ignored by the store since it does not need them.
This way could simplify the process of building complex access controllers that support, for example, time-limited capabilities
Currently, each new feature needs to be implemented in both access controller and access controllers' store.
With this way, each new feature would only be implemented once.
In order to implement dynamic access roles,
that can change through changes to the
database, that the access controller is supposed
to control, I have to be able to access
the database from the Access Controller.
I saw in the orbit-db-access-controller.js
file, that there is a _db
field, that is just set to null
though.
Current orbit-db-io
dependency version is 0.3.0 while version 1.0.0 has been released on July 30 2021.
Version 0.3.0 of orbit-db-io
is using a now deprecated interface of multiformats' CID (still calling toBaseEncodedString
instead of toString
). See below for an example of stacktrace I am getting currently when trying to create an OrbitDB instance.
at CID.get toBaseEncodedString [as toBaseEncodedString] (.../node_modules/multiformats/cjs/src/cid.js:94:11)
at Object.writeCbor [as write] (.../node_modules/orbit-db-access-controllers/node_modules/orbit-db-io/index.js:70:19)
at IPFSAccessController.save (.../node_modules/orbit-db-access-controllers/src/ipfs-access-controller.js:46:13)
at Function.create (.../node_modules/orbit-db-access-controllers/src/access-controllers.js:68:20)
...
Calling functions without arguments in several access-controllers fails silently without any error information. An error should be thrown if arguments are missing
I notice this repo is missing topics under the title; perhaps it would be helpful to add the most relevant.
I am faced with this error message when using the feat/new-acs branch of orbit-db in orbit-chat:
Module not found: Error: Can't resolve 'p-map-series'
I believe it is caused by the issue stated in the title.
Here is the code causing this error:
https://github.com/orbitdb/orbit-db-access-controllers/blob/master/src/orbitdb-access-controller.js#L3
I will post a PR fixing the issue.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.