graphiti 2.0.0.beta.4 → 2.0.0.beta.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.github/workflows/ci.yml +5 -0
- data/.github/workflows/docs.yml +4 -7
- data/CHANGELOG.md +29 -0
- data/docs/concepts/links.md +3 -3
- data/docs/concepts/relationships.md +109 -9
- data/docs/topics/debugging.md +26 -0
- data/docs/upgrading.md +18 -17
- data/graphiti.gemspec +1 -19
- data/lib/generators/graphiti/resource_generator.rb +25 -1
- data/lib/generators/graphiti/templates/controller.rb.erb +1 -1
- data/lib/graphiti/audit/report.rb +226 -0
- data/lib/graphiti/audit.rb +231 -0
- data/lib/graphiti/errors.rb +47 -0
- data/lib/graphiti/rails/rake_helpers.rb +42 -0
- data/lib/graphiti/request_validators/validator.rb +10 -1
- data/lib/graphiti/resource/configuration.rb +16 -1
- data/lib/graphiti/resource/polymorphism.rb +10 -0
- data/lib/graphiti/schema.rb +1 -1
- data/lib/graphiti/sideload/belongs_to.rb +22 -29
- data/lib/graphiti/sideload.rb +48 -13
- data/lib/graphiti/spec_helpers/matchers.rb +196 -0
- data/lib/graphiti/spec_helpers/rspec.rb +1 -0
- data/lib/graphiti/spec_helpers.rb +1 -0
- data/lib/graphiti/util/serializer_relationships.rb +27 -4
- data/lib/graphiti/version.rb +1 -1
- data/lib/graphiti.rb +2 -0
- data/lib/tasks/graphiti.rake +16 -32
- data/website/docusaurus.config.js +67 -11
- data/website/src/css/custom.css +29 -2
- data/website/static/1.13/assets/img/fancy-cushion.png +0 -0
- data/website/static/1.13/assets/img/home-bg.jpg +0 -0
- data/website/static/1.13/assets/img/sunrise.png +0 -0
- data/website/static/1.13/assets/main.css +4 -4
- data/website/static/CNAME +1 -0
- metadata +9 -9
data/website/src/css/custom.css
CHANGED
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
--docusaurus-highlighted-code-line-bg: rgba(255, 102, 217, 0.12);
|
|
22
22
|
}
|
|
23
23
|
|
|
24
|
-
[data-theme='dark'] {
|
|
24
|
+
html[data-theme='dark'] {
|
|
25
25
|
--ifm-color-primary: #ff66d9;
|
|
26
26
|
--ifm-color-primary-dark: #ff45d1;
|
|
27
27
|
--ifm-color-primary-darker: #ff34cd;
|
|
@@ -32,10 +32,13 @@
|
|
|
32
32
|
|
|
33
33
|
--ifm-background-color: #292e33;
|
|
34
34
|
--ifm-navbar-background-color: #292e33;
|
|
35
|
-
--ifm-footer-background-color: #21252a;
|
|
36
35
|
--docusaurus-highlighted-code-line-bg: rgba(255, 102, 217, 0.2);
|
|
37
36
|
}
|
|
38
37
|
|
|
38
|
+
html[data-theme='dark'] .footer--dark {
|
|
39
|
+
--ifm-footer-background-color: #21252a;
|
|
40
|
+
}
|
|
41
|
+
|
|
39
42
|
.navbar__title { font-family: 'Bungee', cursive; font-weight: 400; font-size: 1.35rem; }
|
|
40
43
|
|
|
41
44
|
/* Black sets tight at display sizes and needs more room above it than a
|
|
@@ -56,3 +59,27 @@
|
|
|
56
59
|
vertical-align: baseline;
|
|
57
60
|
padding: 0.15em 0.3em;
|
|
58
61
|
}
|
|
62
|
+
|
|
63
|
+
/* The bar is full-bleed on every page, so it takes a tint of the brand pink
|
|
64
|
+
rather than the pink itself, which at that width reads as a promo banner.
|
|
65
|
+
Docusaurus hashes the class name, hence the prefix selector. */
|
|
66
|
+
.theme-announcement-bar {
|
|
67
|
+
background: #fdeef7;
|
|
68
|
+
color: #7a1758;
|
|
69
|
+
font-size: 1.1rem;
|
|
70
|
+
border-bottom: 1px solid rgba(224, 40, 157, 0.25);
|
|
71
|
+
font-weight: 500;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
[data-theme='dark'] .theme-announcement-bar {
|
|
75
|
+
background: #33272f;
|
|
76
|
+
color: #ffcbf1;
|
|
77
|
+
border-bottom-color: rgba(255, 102, 217, 0.25);
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
/* The link and the close button both carry their own colour, so they drift
|
|
81
|
+
from the bar's text unless told to inherit it. */
|
|
82
|
+
.theme-announcement-bar a,
|
|
83
|
+
.theme-announcement-bar button {
|
|
84
|
+
color: inherit;
|
|
85
|
+
}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -14890,7 +14890,7 @@ a.header:hover {
|
|
|
14890
14890
|
position: fixed;
|
|
14891
14891
|
width: 100%;
|
|
14892
14892
|
/*background: url("https://www.toptal.com/designers/subtlepatterns/patterns/connectwork.png");*/
|
|
14893
|
-
background: url("/assets/img/fancy-cushion.png");
|
|
14893
|
+
background: url("/1.13/assets/img/fancy-cushion.png");
|
|
14894
14894
|
/*background: url("https://www.toptal.com/designers/subtlepatterns/patterns/dark-honeycomb.png");*/
|
|
14895
14895
|
border-bottom: 1px solid black;
|
|
14896
14896
|
box-shadow: 1px 1px 15px -2px black;
|
|
@@ -14976,7 +14976,7 @@ body {
|
|
|
14976
14976
|
color: rgb(76.5, 76.5, 76.5);
|
|
14977
14977
|
}
|
|
14978
14978
|
body.layout-home {
|
|
14979
|
-
background-image: url("/assets/img/home-bg.jpg");
|
|
14979
|
+
background-image: url("/1.13/assets/img/home-bg.jpg");
|
|
14980
14980
|
background-attachment: fixed;
|
|
14981
14981
|
background-position: center;
|
|
14982
14982
|
background-repeat: no-repeat;
|
|
@@ -15124,10 +15124,10 @@ h4 {
|
|
|
15124
15124
|
}
|
|
15125
15125
|
|
|
15126
15126
|
#cover-image.prod-bg {
|
|
15127
|
-
background-image: url("/
|
|
15127
|
+
background-image: url("/1.13/assets/img/sunrise.png") !important;
|
|
15128
15128
|
}
|
|
15129
15129
|
#cover-image.dev-bg {
|
|
15130
|
-
background-image: url("/assets/img/sunrise.png") !important;
|
|
15130
|
+
background-image: url("/1.13/assets/img/sunrise.png") !important;
|
|
15131
15131
|
}
|
|
15132
15132
|
|
|
15133
15133
|
.solution img {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
graphiti.dev
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: graphiti
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.0.0.beta.
|
|
4
|
+
version: 2.0.0.beta.6
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Lee Richmond
|
|
@@ -335,6 +335,8 @@ files:
|
|
|
335
335
|
- lib/graphiti/adapters/graphiti_api.rb
|
|
336
336
|
- lib/graphiti/adapters/null.rb
|
|
337
337
|
- lib/graphiti/adapters/persistence/associations.rb
|
|
338
|
+
- lib/graphiti/audit.rb
|
|
339
|
+
- lib/graphiti/audit/report.rb
|
|
338
340
|
- lib/graphiti/cli.rb
|
|
339
341
|
- lib/graphiti/configuration.rb
|
|
340
342
|
- lib/graphiti/context.rb
|
|
@@ -359,6 +361,7 @@ files:
|
|
|
359
361
|
- lib/graphiti/rails/debugging.rb
|
|
360
362
|
- lib/graphiti/rails/exception_handlers.rb
|
|
361
363
|
- lib/graphiti/rails/railtie.rb
|
|
364
|
+
- lib/graphiti/rails/rake_helpers.rb
|
|
362
365
|
- lib/graphiti/rails/responders.rb
|
|
363
366
|
- lib/graphiti/rails/test_helpers.rb
|
|
364
367
|
- lib/graphiti/renderer.rb
|
|
@@ -400,6 +403,7 @@ files:
|
|
|
400
403
|
- lib/graphiti/spec_helpers/errors.rb
|
|
401
404
|
- lib/graphiti/spec_helpers/errors_proxy.rb
|
|
402
405
|
- lib/graphiti/spec_helpers/helpers.rb
|
|
406
|
+
- lib/graphiti/spec_helpers/matchers.rb
|
|
403
407
|
- lib/graphiti/spec_helpers/node.rb
|
|
404
408
|
- lib/graphiti/spec_helpers/rspec.rb
|
|
405
409
|
- lib/graphiti/stats/dsl.rb
|
|
@@ -459,7 +463,9 @@ files:
|
|
|
459
463
|
- website/static/1.13/assets/img/backend.gif
|
|
460
464
|
- website/static/1.13/assets/img/conformity.png
|
|
461
465
|
- website/static/1.13/assets/img/error_payload.png
|
|
466
|
+
- website/static/1.13/assets/img/fancy-cushion.png
|
|
462
467
|
- website/static/1.13/assets/img/gh.png
|
|
468
|
+
- website/static/1.13/assets/img/home-bg.jpg
|
|
463
469
|
- website/static/1.13/assets/img/lifecycle.gif
|
|
464
470
|
- website/static/1.13/assets/img/logo-500.png
|
|
465
471
|
- website/static/1.13/assets/img/logo.png
|
|
@@ -472,6 +478,7 @@ files:
|
|
|
472
478
|
- website/static/1.13/assets/img/rest2.gif
|
|
473
479
|
- website/static/1.13/assets/img/rest3.gif
|
|
474
480
|
- website/static/1.13/assets/img/rethink-rest-graffiti.jpg
|
|
481
|
+
- website/static/1.13/assets/img/sunrise.png
|
|
475
482
|
- website/static/1.13/assets/img/why.png
|
|
476
483
|
- website/static/1.13/assets/js/highlight.pack.js
|
|
477
484
|
- website/static/1.13/assets/main.css
|
|
@@ -550,6 +557,7 @@ files:
|
|
|
550
557
|
- website/static/1.13/tutorial/step_7.html
|
|
551
558
|
- website/static/1.13/tutorial/step_8.html
|
|
552
559
|
- website/static/1.13/tutorial/step_9.html
|
|
560
|
+
- website/static/CNAME
|
|
553
561
|
- website/static/assets/img/error_payload.png
|
|
554
562
|
- website/static/assets/img/legacy/legacy-0378a3bb39.png
|
|
555
563
|
- website/static/assets/img/legacy/legacy-05bbd3e5fd.png
|
|
@@ -572,14 +580,6 @@ homepage: https://github.com/graphiti-api/graphiti
|
|
|
572
580
|
licenses:
|
|
573
581
|
- MIT
|
|
574
582
|
metadata: {}
|
|
575
|
-
post_install_message: "Graphiti: relationship readable:/writable: guards are now enforced.\n\nSymbols,
|
|
576
|
-
strings, and procs passed to a relationship's readable/writable\nguards were always
|
|
577
|
-
interpreted as true and never actually called before this\nconditional relationship
|
|
578
|
-
change. They are now evaluated per-request, where\nunreadable relationships are
|
|
579
|
-
omitted from responses and includes, and unwritable\nrelationships reject writes.\n\nTo
|
|
580
|
-
list every affected relationship in your app:\n\n bin/rails runner 'puts Graphiti.guarded_relationships'\n\nAudit
|
|
581
|
-
these before deploying. Apps using schema.json will also see affected \nrelationships
|
|
582
|
-
flagged as \"became guarded\" by the schema check.\n"
|
|
583
583
|
rdoc_options: []
|
|
584
584
|
require_paths:
|
|
585
585
|
- lib
|