This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| create view items_view | |
| with (security_barrier) | |
| as | |
| select items.* | |
| from items | |
| join permissions on item_id = items.id | |
| and user_or_group_id = | |
| any(regexp_split_to_array(current_setting('jwt.claims.roles'), ',')::uuid[]); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| import get from 'lodash/get' | |
| import { graphql } from 'graphql' | |
| import Pool from 'pg-pool' | |
| import { | |
| createPostGraphileSchema, | |
| withPostGraphileContext | |
| } from 'postgraphile' | |
| import config from './config' |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| create or replace function insert_permission() | |
| returns trigger | |
| as $$ | |
| begin | |
| insert into permissions (item_id, user_or_group_id, role) values ( | |
| new.id, | |
| current_setting('user_id')::uuid[] | |
| ); | |
| return new; | |
| end |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| create role application_user; | |
| grant all on all table in schema public to application_user; | |
| create policy thing_owner | |
| on things | |
| as permissive | |
| for all | |
| to application_user | |
| using ( | |
| exists( |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| async function authorizeCharge() { | |
| return true | |
| } | |
| const canAddCharge = (context) => { | |
| return context.batteryLevel < context.batteryCapacity | |
| } | |
| const cantAddCharge = (context) => { | |
| return context.batteryLevel === context.batteryCapacity |
OlderNewer