Commit graph

148 commits

Author SHA1 Message Date
Zach Daniel
7083a8363b improvement: build inputs for the underlying get action 2023-02-22 16:25:21 -05:00
Zach Daniel
9d2dcc49d9 fix: never resolve an already resolved field 2023-02-22 13:18:19 -05:00
Zach Daniel
80c3755860 fix: don't run mutations when they've been resolved 2023-02-22 13:13:42 -05:00
Zach Daniel
4d08ea500f fix: don't run resolvers if already been resolved 2023-02-20 12:48:32 -05:00
Zach Daniel
f1d4c1a3cb improvement: better tagged union handling 2023-02-16 23:33:54 -05:00
Zach Daniel
cf8267123e improvement: support new union types in ash 2023-02-15 08:20:35 -05:00
Zach Daniel
913afc6d58 improvement: add AshGraphql.Errors.to_errors/3 2023-02-10 20:02:17 -05:00
Zach Daniel
7bb2387fb8 fix: don't try to get metadata out of an error 2023-02-10 11:34:25 -05:00
Zach Daniel
18e5f86fde improvement: add more? (as has_next_page) to pagination info 2023-02-08 11:16:48 -05:00
Zach Daniel
f0836f18b6 improvement: support metadata on read actions
metadata on read actions is merged with the rest of the fields on the query, so must have a name unique from the attributes/calculations/aggregates.

The system will warn you if there is metadata on the underlying action that is being ignored, and will tell you how to fix it.
2023-01-28 12:32:21 -05:00
Zach Daniel
839bdcb126 improvement: unwrap forbidden errors, instead of reporting on the whole 2023-01-27 17:11:36 -05:00
Zach Daniel
36c70d2f93 improvement: log stacktraces on raised errors 2023-01-03 09:14:08 -05:00
Zach Daniel
5a6bc0cd1d fix: show all errors on show_raised_errors 2022-12-13 17:47:58 -05:00
Zach Daniel
59cb6bae41 improvement: set error on tracer when an exception is raised 2022-12-09 23:22:42 -05:00
Zach Daniel
fcfad512c5 improvement: update to latest ash, fix incorrect behaviour 2022-11-25 14:28:48 -05:00
Zach Daniel
1b3f43391d improvement: support ash tracers and telemetry in graphql 2022-11-22 13:27:53 -05:00
Zach Daniel
9ff395711e improvement: handle keyset & offset pagination when combined on an action (by preferring keyset)
improvement: use new `depend_on_resources/` from Ash to remove the need for registry in schema
fix: various pagination fixes
2022-10-21 08:51:31 -04:00
Zach Daniel
3be18011ea chore: fix CI from last commit 2022-10-20 17:57:37 -04:00
Zach Daniel
07e0c6170c improvement: split keyset_page_of and page_of types
improvement: add `start_keyset` and `end_keyset` to `keyset_page_of` type
improvement: add `count` to relay fields if there exists a countable relay query
2022-10-20 17:57:27 -04:00
Zach Daniel
9cc9da0f2e improvement: support calculation sort input
closes #31
2022-10-12 21:15:42 -04:00
Zach Daniel
3a11d988ab improvement: support encode_primary_key? false, and set single managed relationship primary keys do :id type when its true
closes #28
2022-10-12 19:02:04 -04:00
Zach Daniel
8d79fd7d2a fix: non relay keyset pagination was broken when relay was introduced 2022-10-12 12:11:51 -04:00
Zach Daniel
9a3136fd5d improvement: remove stacktraces? option
improvement: add error handler
improvement: translatable error messages
docs: handle errors guide
2022-10-12 00:51:01 -04:00
Zach Daniel
7de4207de4 improvement: add upsert_identity option 2022-10-09 21:05:58 -04:00
Zach Daniel
41ff7bf9aa improvement: handle generated nil filters better 2022-09-26 21:07:41 -04:00
Zach Daniel
92631f91b6 improvement: add options for remapping field/argument names
fix: use the dataloader for loading calculations, to allow for aliases
2022-09-26 00:12:10 -04:00
Zach Daniel
9095a5ae45 improvement: add attribute_types and attribute_input_types
improvement: require configuration of datetime types
2022-09-22 13:31:40 -04:00
Maxim Martynov
e40e7c573c
improvement: Implement GraphQL Relay support (#36) 2022-09-20 23:07:30 -04:00
Zach Daniel
d70c68eed9 fix: error when selecting only the count for pagination 2022-09-12 12:23:58 -04:00
Zach Daniel
f4cb9213b3 update to latest ash 2022-08-30 19:08:16 -06:00
Zach Daniel
a10f61b9b4 improvement: update to latest ash 2022-08-10 17:34:13 -04:00
Zach Daniel
29909742e2 chore: don't explicitly set type when looking up actions 2022-05-28 21:30:34 -04:00
Maxim Martynov
cc5f3a31f2
fix: Handle error if multitenant resource was fetched without tenant being set (#33) 2022-05-11 12:45:49 -04:00
Zach Daniel
bdf814cae2 fix: fix get resolver not_found message 2021-09-13 16:55:03 -04:00
Zach Daniel
2632e477b3 fix: authorize reads before destroy
fix: return error when get is nil w/ allow_nil? == false
2021-09-12 16:39:48 -04:00
Zach Daniel
300858f418 fix: select in the new after_action hook, for calculations 2021-09-12 02:13:19 -04:00
Michael St Clair
ffa7d3efdd
fix: fix changeset.errors on destroy (#26) 2021-09-11 15:18:38 -04:00
Zach Daniel
f9b1b75edc feat: more configurable error behavior
added `root_level_errors?` and `show_raised_errors?`
2021-09-09 11:49:36 -04:00
Zach Daniel
c11ad2a6a4 WIP 2021-09-09 00:27:49 -04:00
Zach Daniel
d4f97febf5 improvement: support create/update metadata 2021-08-29 15:23:28 -04:00
Zach Daniel
d8a3e1b155 improvement: add groundwork for relay support 2021-08-03 18:56:08 -04:00
Zach Daniel
d4a7012d6e fix: set actor on initial read of record for update 2021-07-30 17:05:22 -04:00
Zach Daniel
6c92a23040 improvement: update to latest ash 2021-07-01 22:59:16 -04:00
Zach Daniel
3a0b0c3f83 improvement: add as_mutation for queries
improvement: support `modify_resolution` for queries
2021-06-29 12:17:33 -04:00
Zach Daniel
dffe4de9f5 improvement: update to latest rc
improvement: add `short_message` and `vars` to errors
2021-06-28 13:33:01 -04:00
Zach Daniel
020ad849ea improvement: add modify_resolution for mutations 2021-06-14 12:08:26 -04:00
Zach Daniel
d86e60ec68 fix: catch error in `massage_filter/2 2021-06-08 17:37:59 -04:00
Zach Daniel
0cc81ce9f6 improvement: support expression calculations 2021-06-04 15:07:12 -04:00
Zach Daniel
0aa2787d52 improvement: support identity: false for read
improvement: don't type embedded resources is nullable
2021-05-22 23:49:31 -04:00
Zach Daniel
2f31650899 fix: don't load fields if no fields to load 2021-05-14 13:08:25 -04:00
Zach Daniel
77bf8788f5 improvement: log error stacktraces 2021-05-14 12:31:12 -04:00
Zach Daniel
8945851fd1 improvement: add stacktraces? option 2021-05-14 12:25:43 -04:00
Zach Daniel
b8ca64590f fix: support soft destroys
fix: support actions with no input objects
2021-05-10 02:19:47 -04:00
Zach Daniel
06d674aac6 fix: don't have leaky errors
fix: support filtering on aggregates in nested resolvers
2021-05-04 13:01:15 -04:00
Zach Daniel
13799c37e7 fix: don't raise on missing relationship actions
fix: properly detect selection of count
2021-04-28 16:54:06 -04:00
Zach Daniel
ce0e275a9a fix: load fields before sorting 2021-04-26 17:37:43 -04:00
Zach Daniel
ae23048ba1 fix: load aggregates used in sort 2021-04-26 17:35:03 -04:00
Zach Daniel
3a88127d0b fix: load aggregates from sorts 2021-04-26 17:25:23 -04:00
Zach Daniel
73efedb8da fix: load any aggregates referenced in the filter 2021-04-26 17:22:45 -04:00
Zach Daniel
347d73ec25 fix: properly unwrap invalid errors 2021-04-26 13:14:25 -04:00
Zach Daniel
d9ead2ef32 fix: unwrap invalid errors 2021-04-26 13:07:00 -04:00
Zach Daniel
68306a7265 improvement: support ash_context key 2021-04-19 16:17:35 -04:00
Zach Daniel
4f71d69c5d improvement: support read_action config for updates and destroys
improvement: support `identity: false` for udpates and destroys
2021-04-19 15:26:20 -04:00
Zach Daniel
e302731d99 fix: project down to multiple levels for result types 2021-04-18 23:19:46 -04:00
Zach Daniel
11db824adc fix: set actor when building changeset 2021-04-18 10:57:18 -04:00
Zach Daniel
6be5c593cd fix: proper not found errors 2021-04-16 13:49:51 -04:00
Zach Daniel
88f912a6aa fix: correctly select fields to clear 2021-04-16 12:59:04 -04:00
Zach Daniel
43dae2ad28 fix: don't clear fields on nil result
chore: add tests for destroy
2021-04-16 12:56:29 -04:00
Zach Daniel
1f098c5fa1 fix: load fields required for relationship 2021-04-15 16:28:04 -04:00
Zach Daniel
6b84bf0f46 fix: detect all embeddable types in arguments and nested
fix: detect enums in embeddable types and arguments
fix: error messages for `InvalidArgument`
improvement: log on unrenderable error messages
fix: store refs in graphql blueprint to fix error messages
improvement: update to latest ash
2021-04-13 17:49:10 -04:00
Zach Daniel
ea6a21586a fix: fix graphql subselections for pagination 2021-04-09 16:29:50 -04:00
Zach Daniel
6ae8715a13 improvement: support upsert?: true flag on create 2021-04-05 14:41:16 -04:00
Michael St Clair
596dc90381
feat: add read_one query (#13) 2021-04-04 03:10:50 -04:00
Zach Daniel
69f34ba55b fix: select fields/aggregates/calculations 2021-03-22 13:03:18 -04:00
Zach Daniel
9151b712f1 improvement: start on error messaging groundwork
fix: properly handle relationship changes on updates
2021-03-15 15:51:17 -04:00
Zach Daniel
b988c4c08c improvement: support debug? at the api level 2021-02-23 12:28:19 -05:00
Zach Daniel
33ce6b952d WIP 2021-02-18 10:16:00 -05:00
Zach Daniel
fbfdb7faf8 feat: update to latest ash
feat: support query arguments
2021-01-21 23:06:06 -05:00
Zach Daniel
a820beb474 feat: support embedded resources 2021-01-12 15:14:35 -05:00
Zach Daniel
89adb954e3 fix: resolve error with non-required pagination 2020-12-30 13:26:03 -05:00
Zach Daniel
0ca1b770e7 chore: don't parse filter input 2020-12-30 13:10:10 -05:00
Zach Daniel
210057d1c3 test: actually have a test :) 2020-12-02 00:07:15 -05:00
Zach Daniel
37d0b6534d
feat: Support configuring identities (#8)
* feat: support using identities for gets
2020-11-18 02:14:33 -05:00
Zach Daniel
daf8513c26
fix: correct sorting enum/args list 2020-11-11 22:41:54 -05:00
Zach Daniel
d5cf6ee3a0
feat: overhaul, better type support, pagination 2020-11-05 20:59:06 -05:00
Zach Daniel
51dc4b8a0c
fix: use the correct tenant function 2020-11-02 21:15:30 -05:00
Zach Daniel
c8b8fc5abd
feat: support multitenancy (#7) 2020-10-28 02:16:16 -04:00
Zach Daniel
bea776326f
chore: formatting 2020-10-09 21:17:40 -04:00
Zach Daniel
77566d96c4
fix: fix usage of new Ash.Query.filter/2 2020-10-09 21:10:22 -04:00
Zach Daniel
244da78444
feat: update to latest ash 2020-10-09 21:04:57 -04:00
Zach Daniel
628865c819
fix: set api_opts properly 2020-09-28 09:42:36 -04:00
Zach Daniel
7adb8c0f22
feat: rewrite with dataloader 2020-09-23 20:54:57 -04:00
Zach Daniel
b7eaa44376
fix: get mix check passing 2020-08-14 10:20:47 -04:00
Zach Daniel
2fc65976a7
chore: release version v0.1.0 2020-08-13 18:55:34 -04:00
Zach Daniel
cd16030324
feat: initial POC release 2020-08-13 17:39:59 -04:00
Zach Daniel
759c92553c
WIP 2020-06-05 14:41:00 -04:00
Zach Daniel
7563cbf971
fix; move pagination into graphql layer 2020-05-30 04:57:39 -04:00
Zach Daniel
705bbdd4ec
First stab at a schema 2020-05-01 18:35:12 -04:00