* Add basic permissions skeleton
* ...
* Update permissions api
* Wait for server to process management realm, add offer api
* Fix test of apply and get permissions, add offer test
* Accept permission offer
* Accept permission offer test
* Invalidate permission offer
* Add basic docs (still need some links etc)
* Refactor tests
* Only run permission tests where sync is enabled
* Use legal syntax for user name generation
* Add changelog entry
* Streamline permission tests
* Fix casing for access level names etc.
* Add basic definitions to index.d.ts
* Use settimeout for resolving promise from listener
* Complete typescript defs
* Improve docs
* Allow 'any' as default recipient in getGrantedPermissions
* Fix getSpecialPurposeRealm on iOS
* Response to PR comments
* Respond to PR comments
* Fix offer description
* Skip permission tests in chrome debugger :-/
* Stop trying to kill the server twice after testing
* Fix test targets to run before publishing
* ...
* Remove electron runner from publish for now
* Update changelog
Instead of rethrowing the JavaScript error emitted from a callback function, we should instead pass it to `node::FatalException`.
Callbacks are employed when there is no other JavaScript frame on the stack prior so rethrowing the JS error as a C++ exception is not going to propagate the error back to JavaScript. `node::FatalException` will raise the `uncaughtError` event on the `process` object , print the error and stacktrace, and alert the debugger is there is one attached. This would make our async callbacks behave consistently with Node’s own async callbacks such as `setTimeout` when encountering an error.
* Make it possible to assign a List or Results to a List property.
The change made in #1069 to improve error messages when values of
incorrect types were assigned to a given property was being too
narrow in the types it accepted for list properties, allowing only
arrays. Lists and Results are now accepted once more.
* Update CHANGELOG.md
* Add support for linkingObjects
* Test linkingObjects
* Borrow names helper from list tests
* include computed properties when serializing the schema for the RN debugger
* add API docs
* review comments
* Expose admin users to JS (#1100)
The JS binding used to conflate `SyncUser::is_admin()` with the user being created by calling `Realm.Sync.User.adminToken()`, but now that we expose a user’s role on the server under `is_admin()` this supposition is no longer correct.
#1097 attempted to fix one such case, but fixing it only uncovered another: in `UserClass<T>::all_users()`. I’ve gone through all the callsites of `SyncUser::is_admin()` to make sure they don’t assume an admin token user.
* [1.8.3] Bump version
* add linkingObjects method to Realm.Object
* changelog
The JS binding used to conflate `SyncUser::is_admin()` with the user being created by calling `Realm.Sync.User.adminToken()`, but now that we expose a user’s role on the server under `is_admin()` this supposition is no longer correct.
#1097 attempted to fix one such case, but fixing it only uncovered another: in `UserClass<T>::all_users()`. I’ve gone through all the callsites of `SyncUser::is_admin()` to make sure they don’t assume an admin token user.