Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

github.com/stalniy/casl

CASL is an isomorphic authorization JavaScript library which restricts what resources a given user is allowed to access
https://github.com/stalniy/casl

docs(advanced): adds information about debugging and testing

Fixes #145, Relates to #193

e7ab97f692bffe6bbd458b6a137798f96a196c8a authored almost 5 years ago by Sergii <[email protected]>
refactor(ability): changes `CollectSubjects` to `InferSubjects`

Improves typings for `subject` helper

Relates to #248

959224a540b71e7b760a4027ecdc1432eb97aac2 authored almost 5 years ago by Sergii <[email protected]>
docs(advanced): writes page about typescript

Adds support for images in markdown with ability to override their root url

Relates to #193

8a5dd8eeb47c61a9ab8ef72c10d06ff7e4e41507 authored almost 5 years ago by Sergii <[email protected]>
fix(react): makes sure `Can` infers types for props from provided `Ability`

Relates to #248 BREAKING CHANGE: removes react v15 from peer deps due to usage of `Consumer` typ...

5813b25d286af6ff76bec6c266fe21af817fe45b authored almost 5 years ago by Sergii <[email protected]>
refactor(ability): fix `RawRule` generic parameter

Relates to #248

56af1d390060e6889f97bee18a6637c4b8712520 authored almost 5 years ago by Sergii <[email protected]>
refactor(types): makes sure types has proper inference

Relates to #248

0aca689ac1558a1632eafc42e906dd70ac32f3ff authored almost 5 years ago by Sergii <[email protected]>
refactor(react): improves type inference in casl/react

Relates to #248

83f86553ee3ce183c9c79d171697ebf5f3984e46 authored almost 5 years ago by Sergii <[email protected]>
refactor(vue): improves type inference in casl/vue

Relates to #248

e020caa216f4f9fedd9532092791b5e081785f70 authored almost 5 years ago by Sergii <[email protected]>
refactor(mongoose): improves type safety in mongoose

Simplifies type inference in @casl/ability

Relates to #248

d01276e257fc94a356f2bd1ecad00eae94436116 authored almost 5 years ago by Sergii <[email protected]>
refactor(aurelia): removes dependency on `AbilityParameters` type

Relates to #248

118406f29d70b78e40b3204b87a0e44c75bff04f authored almost 5 years ago by Sergii <[email protected]>
refactor(angular): removes dependecy on `AbilityParameters` type

Fixes issue related to `npm test` using the wrong jest config

Relates to #248

7f104329d6ea73e52fd20da7ce29167d6b83af13 authored almost 5 years ago by Sergii <[email protected]>
feat(ability): allows to do fine grained

Relates to #248

2b97c579b5d0841b75ba28a0bf969247fdb54beb authored almost 5 years ago by Sergii <[email protected]>
feat(ability): adds `subject` helper which allows to define subject type for DTO

834c24fa8014ee193caa260c97a29ed2edbb52df authored almost 5 years ago by Sergii <[email protected]>
docs(guide): documented subject type extraction algorithm

Relates to #193

e1fe5485ec6f11b6d11beec9f0a4e0787cb506e1 authored almost 5 years ago by Sergii <[email protected]>
fix(navigation): fixes navigation between pages and anchor navigation

Fixes eslint styles

d1b04f4d06cb3916eda0aacc92968be183a9b78a authored almost 5 years ago by Sergii <[email protected]>
docs(guide): finishes restricting fields and conditions-in-depth pages

Relates to #193

fe70bc3806183b7cdb8a24d7a8fcb3269c50ab8d authored almost 5 years ago by Sergii <[email protected]>
refactor(ability): removes `$not` operator support as it's behavior can be mimiced by `cannot`

7980c773d2333728759e8e08b5e941c812bc9e12 authored almost 5 years ago by Sergii <[email protected]>
docs(ability): conditions in depth

Relates to #193

e03867c34cd817b134ae63254d4c3e882801d8d4 authored almost 5 years ago by Sergii <[email protected]>
refactor(ability): get rid of ES6 Set in extra module

Relates to #249

cece55670cf4a9365e60f722170c95e6e8f1cb27 authored almost 5 years ago by Sergii <[email protected]>
docs(ability): adds guide/intro, guide/define-rules, guide/install

Also fixes look and view

896ce8f5292d7d0d4aad50a8765f74d3d7d89051 authored almost 5 years ago by Sergii <[email protected]>
fix(deps): update dependency sift to v12

71593cad97c7611ae9dfe8f1dfeb5483173bff2a authored almost 5 years ago by Renovate Bot <[email protected]>
docs(app): adds sidebar and page nav

d6bfc2097409eccaead95a1303456cd6ae4792e1 authored almost 5 years ago by Sergii <[email protected]>
Merge remote-tracking branch 'origin/master' into 4.x

32c48f62fc2122e742cdb931ccc4c0b3303b291a authored almost 5 years ago by Sergii <[email protected]>
chore(release): @casl/[email protected] [skip ci]

8e03450f15341ca9ed6275ad8e2a7e72bb43e7ce authored almost 5 years ago by semantic-release-bot <[email protected]>
fix(mongoose): makes sure abilityConditions does not override existing `$and` conditions (#273)

Fixes #272

c13300f37d218d2c0754133557e3795887c6ef3b authored almost 5 years ago by m-weeks <[email protected]>
docs(casl): adds docs app and removes jekyll based website [skip ci]

d40a11f5115ccba081506a0b918a2f5a121cde7a authored almost 5 years ago by Sergii <[email protected]>
docs(casl): updates to README to be more clear and reflect the changes in 4.x

14d32a658e7edca9133b48f550f5098521d65400 authored almost 5 years ago by Sergii <[email protected]>
chore(ability): removes obsolete global declartion for sift/operations

8292c0588e0d6cab5cf29159f75348fcf0e6ac2f authored almost 5 years ago by Sergii <[email protected]>
chore(deps): update dependency rollup to v2

d471aa0281be258ff33af3daae622dabc3b2a675 authored almost 5 years ago by Renovate Bot <[email protected]>
Merge branch 'master' into 4.x

ad36a40109002e702a6a587f05293828283849c3 authored almost 5 years ago by Sergii <[email protected]>
chore(release): @casl/[email protected] [skip ci]

606d2dcccc339f31c41f9b286aeb3a0ef3765432 authored almost 5 years ago by semantic-release-bot <[email protected]>
fix(angular): reverts back anngular to not use Ivy as it was not recommend by angular team

Based on https://indepth.dev/the-angular-ivy-guide-for-library-authors/
Use ngc to build casl/an...

b8831184f4bbfc3924e95f1fd4f2861d88b43fdf authored almost 5 years ago by Sergii <[email protected]>
test(react|vue): replaces AbilityBuilder.define with defineAbility

Relates to #249

893b67ee122b3962968fecd9f0bde748e73d5226 authored almost 5 years ago by Sergii <[email protected]>
chore(ci): ensure that github actions are run on PRs

fe0d5ce513c5838201b767384dac68cfbf43c418 authored almost 5 years ago by Sergii <[email protected]>
Revert "chore(deps): update dependency typescript to ~3.8.0"

This reverts commit 1cdd3a87fc8044a85218f3cf9a548ce77c63f906.

df730d3913bf0437d9dfdb4bf143f5524f060a2e authored almost 5 years ago by Sergii <[email protected]>
chore(deps): update dependency typescript to ~3.8.0

1cdd3a87fc8044a85218f3cf9a548ce77c63f906 authored almost 5 years ago by Renovate Bot <[email protected]>
chore(release): @casl/[email protected] [skip ci]

9c5038b6364827bb2bfeec6bfb1a00b15f08c246 authored almost 5 years ago by semantic-release-bot <[email protected]>
fix(angular): moves postinstall hook to postbootstrap hook which links modules

Relates to #266

769e099902eca821e17d4f6a3e5a44fd29191915 authored almost 5 years ago by Sergii <[email protected]>
chore(release): @casl/[email protected] [skip ci]

ffb35eadb2590b26206b289c8aa10a5e63c2ce3b authored almost 5 years ago by semantic-release-bot <[email protected]>
fix(angular): adds postinstall script into npm package

Relates to #266

c753d446532a994766860631939f8000b69f06ae authored almost 5 years ago by Sergii <[email protected]>
fix(mongoose): ensures mongoose works with MongoQuery conditions

Also includes updated version of sift with fixed issues

Relates to #249

f92b7df532ecca24ee05d02cf9388b21f8d242fa authored almost 5 years ago by Sergii <[email protected]>
feat(package): replaces `Ability` with `PureAbility` in order to improve tree shaking

Relates to #249 BREAKING CHANGE: replaces `Ability` DI token with `PureAbility`

**Before**

```...

c6a01c8b51dc2d46928436f673dbb6a0e56a4764 authored almost 5 years ago by Sergii <[email protected]>
feat(angular): allows to use custom `Ability` instances and improves tree shaking support

Relates to #249 BREAKING CHANGE: removes `AbilityModule.forRoot()` method and default `Ability` ...

2e7a1498c27d0c542e9f6507ba9b5195ae3a1da8 authored almost 5 years ago by Sergii <[email protected]>
feat(ability): split `Ability` into `PureAbility` (base class) and `Ability` (preconfigured PureAbility)

This should make migration easier and at the same time open more possibilities to configure `Abi...

953620523359f1c90b13a46a5314b9c034e28ec8 authored almost 5 years ago by Sergii <[email protected]>
chore(release): @casl/[email protected] [skip ci]

fbffff90aaedc26cac77e920c6ac5a274c2e4b21 authored almost 5 years ago by semantic-release-bot <[email protected]>
fix(angular): reverts back prerelease hook

Relates to #266

1fc60c248d7e837fae39eb760cb308a73959b59d authored almost 5 years ago by Sergii <[email protected]>
chore(release): @casl/[email protected] [skip ci]

c03b15ef4164f270f75ea9179244408c94d5b040 authored almost 5 years ago by semantic-release-bot <[email protected]>
fix(angular): adds missing file exists utility

Relates to #266

732e253f65801631a3128fc92e2514bdb6f79987 authored almost 5 years ago by Sergii <[email protected]>
chore(release): @casl/[email protected] [skip ci]

fae9309afe82ea5bb7d0b898826f22dfada2ece5 authored almost 5 years ago by semantic-release-bot <[email protected]>
fix(angular): ensures postinstall script uses node to check whether file exists

eba8ef460dec655783204819fbb0e0721c34db13 authored almost 5 years ago by Sergii <[email protected]>
test(ability): adds test for checking by only action

Removes test in casl/vue which checks subject validation

Relates to #107

735547e80dc18836e2953d88a51ea25eb8a091c1 authored almost 5 years ago by Sergii <[email protected]>
feat(mongoose): simplifies generics for mongoose

Relates to #107

7ff65f75cf715ca9428dda2fe6e0c91715646979 authored almost 5 years ago by Sergii <[email protected]>
feat(vue): adds better generics typying for Vue

Also fixed some corner cases in types of other packages

Relates to #107

5cc7b60d8a2a53db217f8ad1a4673a28f67aefce authored almost 5 years ago by Sergii <[email protected]>
feat(react): adds support for action only components

Relates to #107 BREAKING CHANGE: `I` and `do` props now accepts only actions, `field` was moved ...

a2db577910763ecc0b5eca3196bdc22fc8ff3dba authored almost 5 years ago by Sergii <[email protected]>
test(builder): adds tests for defining ability with only action parameter

Relates to #107

a4ceab8226804147cbce9eacdae820b2dd0fd8d9 authored almost 5 years ago by Sergii <[email protected]>
feat(aurelia): adds `able` value converter that allows to do checks only by action

Deprecates `can` value converter. Replaced with `able`

Relates to #107

490434bbd5296110d5874e67bc07cf7e7ed66a0e authored almost 5 years ago by Sergii <[email protected]>
feat(angular): adds support for action only checks

Adds `able` pipe which eventually should replace `can` pipe. CanPipe doesn't allow to check only...

0462edb854ba4094e735287744404ea2d378defb authored almost 5 years ago by Sergii <[email protected]>
feat(ability): adds typescript support for checks only by action

Relates to #107

b652df1256bd66e1aa5d47f27b41fb0c527840d2 authored almost 5 years ago by Sergii <[email protected]>
chore(release): @casl/[email protected] [skip ci]

44da0cfc2af02778be0df4956b723752644b61f4 authored almost 5 years ago by semantic-release-bot <[email protected]>
fix(angular): ensure postinstall hook is executed only during local dev

BREAKING CHANGE: upgrades angular to v9

a47bac8f60c544b90be476ae73a17e0ddfdc479c authored almost 5 years ago by Sergii <[email protected]>
chore(ci): ensures ngcc is called after installation @casl/angular deps

c2e39a6dc2c4f70b4449dd0d7eb8d1b9c74450a6 authored almost 5 years ago by Sergii <[email protected]>
feat(ability): returns `all` for empty subjects

This is an initial support for claim based abilities in #107

Relates to #256 BREAKING CHANGES

f5d41e04dea9bf1baf1b9e1aac5b3264727296e7 authored almost 5 years ago by Sergii <[email protected]>
feat(mongoose): adds generics to mongoose types

Relates to #256

6cdf82ee2f547fdb6c5dcd9cb51cef1c4b4c542d authored almost 5 years ago by Sergii <[email protected]>
feat(react): adds generics for Ability and related components [skip ci]

Prefixed private methods with _

Relates to #256 BREAKING CHANGES

3102b6e639213553570cf97661b7b7f4c3640687 authored almost 5 years ago by Sergii <[email protected]>
feat(ability): updates typings for vue

Relates to #256 BREAKING CHANGES

8ac4ca14a59ed87bc0f84a853466418e6a74cd74 authored almost 5 years ago by Sergii <[email protected]>
feat(aurelia): adds generics to can converter and plugin

Relates to #256 BREAKING CHANGES

4d634d7694e7f29fd7c3b4188845c82d82f013da authored almost 5 years ago by Sergii <[email protected]>
feat(ability): improves typing for GetSubjectName and adds default values for generics

Also adds default generic values for AbilityModule in angular package

Relates to #256

c08929301a1b06880c054cbb2f21cda3725028a4 authored almost 5 years ago by Sergii <[email protected]>
feat(angular): adds generics to CanPipe

Relates to #256 BREAKING CHANGES

68bd287e7af165b82bbf8076ea88e83b51754a31 authored almost 5 years ago by Sergii <[email protected]>
feat(ability): adds generic types to Ability and related types [skip ci]

deprecates `actions` field in `Rule` types use `action` instead
deprecates `AbilityBuilder.defin...

4e56fdaf92baabcdfece758e7a6ca369176e7fee authored almost 5 years ago by Sergii <[email protected]>
chore(deps): upgrades sift and removes types hack for it

Relates to #248

40c53cf8040a49ddbe4969b2894d3b39fe27587e authored almost 5 years ago by Sergii <[email protected]>
refactor(ability): makes ForbiddenError to be newable type

Relates to #248

236f39af36a223b559914ad0766c164337e66e58 authored almost 5 years ago by Sergii <[email protected]>
feat(ability): allows to pass fieldMatcher and conditionsMatcher

This allows customization of Ability checking logic

Fixes #258

d23af562376fd6d2389a7bfcdeb3b5140b682ec8 authored almost 5 years ago by Sergii <[email protected]>
refactor(ability): renames internal files

54bdfd720ae9750978fcdfb32eef679fce40e8e1 authored almost 5 years ago by Sergii <[email protected]>
feat(ability): allows to specify class as subject type

Fixes #187

9c6041adbad9bcb2c5655ad9656b4a705ed88a79 authored almost 5 years ago by Sergii <[email protected]>
test(builder): adds test for `cannot().because()` construct

9326136da35c90f721a983df7c9809ac04eda570 authored almost 5 years ago by Sergii <[email protected]>
feat(ability): removes deprecated methods

`ability.throwUnlessCan(...args)` is now replaced with `ForbiddenError.from(ability).throwUnless...

7d26f569f37254c7a21b0ce0fd96601ed0c6d8f0 authored almost 5 years ago by Sergii <[email protected]>
fix(mongoose): fixes mongoose typings

Relates to #248

d320eba70c14c7fc6700aba3e38fee062fdd9c3a authored almost 5 years ago by Sergii <[email protected]>
refactor(mongoose): adds missed types export

Relates to #248

a5808ba61d49184d09dbbbfac769a74a71289fb4 authored almost 5 years ago by Sergii <[email protected]>
chore(eslint): removes redundant .eslintrc

2837bb0bba124023d0955fc37766f3fce8d6147d authored almost 5 years ago by Sergii <[email protected]>
refactor(mongoose): migrates to TypeScript

Removed deprecated `permittedFieldsOf`

Relates to #248 BREAKING CHANGES

34f85c1620e7f37fa598caae132013896fc6b36a authored almost 5 years ago by Sergii <[email protected]>
refactor(aurelia): migrates to Typescript

Relates to #248

44ee21b10af1ddbf66ae1c77d50c633f6da735ed authored almost 5 years ago by Sergii <[email protected]>
chore(deps): upgrads typescript and babel

Disables eslint rule prefer-destructuring to simplify type casting

Relates to #248

08872970c72ac70acbd546471edc419630feea00 authored almost 5 years ago by Sergii <[email protected]>
fix(angular): makes sure reflect polyfill is added before angular imports

@abraham/reflection MUST be imported before @angular/* modules

Relates to #248

2acbb35cc179275e23f3d83dd27ef8d5a3ef1099 authored almost 5 years ago by Sergii <[email protected]>
fix(vue): adds `an` alias, so types are compatible between React and Vue

Relates to #248

8276942da1660ac3eb1cd928cc80db891ed7e275 authored almost 5 years ago by Sergii <[email protected]>
refactor(react): migrates @casl/react to typescript

Relates to #248

02da9131a2566201900f8a0e856fff13a995ef14 authored almost 5 years ago by Sergii <[email protected]>
test(vue): fixes error message text in tests

Relates to #248

8437ef53cd2e0e6eda67ec6f9db527c696241d3d authored almost 5 years ago by Sergii <[email protected]>
style(angular): enables linting for typescript files

Relates to #248

5f00631c3a150a29d5cae216c0949e9e33f73dda authored almost 5 years ago by Sergii <[email protected]>
fix(ability): extracts types to a separate file

This allows to re-export from that files without errors from rollup side. This is a workaround f...

df1fec1ea6b3af6fb5a0f1c5792ac990f4343abf authored almost 5 years ago by Sergii <[email protected]>
style(ability): fixes semicolon position

Relates to #248

db7ec73d7f125c4ce542403629555518aadf3ac6 authored almost 5 years ago by Sergii <[email protected]>
style(vue): fixes eslint for specs

Also unifies eslint rules for all repositories

Relates to #248

979395cf52ebc77b2051f22862ab6d08d7692cab authored almost 5 years ago by Sergii <[email protected]>
feat(vue): migrates vue to typescript

Relates to #248

7bacadd8878afe14898929ebeb7c3efd9af88d3c authored almost 5 years ago by Sergii <[email protected]>
fix(ability): improves PackedRule type

Relates to #248

a781921ca7330d9858d93cb15457602a857dcb96 authored almost 5 years ago by Sergii <[email protected]>
style(react): fixes linting error

22262fb80c52eb7c1dc6b341f4661cd494feb6b2 authored almost 5 years ago by Sergii <[email protected]>
refactor(ability): migrates @casl/ability to TypeScript

Relates to #248

e3ff3dbf87d0506f9bc315e905c3155676d8e7aa authored almost 5 years ago by Sergii <[email protected]>
chore(ci): removes travis configuration because of migration to github actions

6f087264fab906b76b0dbd6e10a7e293f3627861 authored almost 5 years ago by Sergii <[email protected]>
chore(ci): fixes reference to codecov secret

646c9924b11bfa7169f1e0bd263f1ef86a20f1ee authored almost 5 years ago by Sergii Stotskyi <[email protected]>
chore(release): replaces npmignore with package.files list for ability

b2298d05ef4fd3f84c74f66732871c3e2bb8a52e authored almost 5 years ago by Sergii <[email protected]>
chore(ci): configures github actions [skip ci]

5417def5cc325b9c9555ef78a146000f15494b78 authored almost 5 years ago by Sergii Stotskyi <[email protected]>
chore(ci): switches build & test stages during release phase in angular

a0149c01b7abf7944130a84e9151b1d392f1882a authored almost 5 years ago by Sergii <[email protected]>
chore(release): @casl/[email protected] [skip ci]

5eed4be665cdd386c96fe27172866806d1420893 authored almost 5 years ago by semantic-release-bot <[email protected]>