administrate 1.0.0.beta3 → 1.0.0
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/app/assets/builds/administrate/application.css +91 -19
- data/app/assets/builds/administrate/application.css.map +1 -1
- data/app/assets/builds/administrate/application.js +12576 -3114
- data/app/assets/builds/administrate/application.js.map +4 -4
- data/app/assets/builds/administrate-internal/docs.css +25 -12
- data/app/assets/builds/administrate-internal/docs.css.map +1 -1
- data/app/assets/javascripts/administrate/application.js +1 -0
- data/app/assets/javascripts/administrate/controllers/index.js +2 -0
- data/app/assets/javascripts/administrate/controllers/select_controller.js +18 -1
- data/app/assets/javascripts/administrate/controllers/tooltip_controller.js +24 -0
- data/app/assets/javascripts/administrate/vendor/css-anchor-positioning.js +9310 -0
- data/app/assets/stylesheets/administrate/base/_typography.scss +8 -5
- data/app/assets/stylesheets/administrate/components/_buttons.scss +26 -1
- data/app/assets/stylesheets/administrate/components/_cells.scss +8 -1
- data/app/assets/stylesheets/administrate/components/_search.scss +44 -3
- data/app/assets/stylesheets/administrate-internal/docs.scss +25 -23
- data/app/controllers/administrate/application_controller.rb +9 -22
- data/app/controllers/concerns/administrate/punditize.rb +1 -9
- data/app/helpers/administrate/application_helper.rb +9 -1
- data/app/views/administrate/application/_collection.html.erb +29 -19
- data/app/views/administrate/application/_collection_header_actions.html.erb +1 -1
- data/app/views/administrate/application/_collection_item_actions.html.erb +2 -2
- data/app/views/administrate/application/_form.html.erb +1 -1
- data/app/views/administrate/application/_icons.html.erb +14 -6
- data/app/views/administrate/application/_index_header.html.erb +19 -0
- data/app/views/administrate/application/index.html.erb +1 -0
- data/app/views/fields/has_many/_form.html.erb +1 -1
- data/app/views/fields/has_one/_form.html.erb +6 -0
- data/app/views/fields/polymorphic/_form.html.erb +1 -1
- data/docs/customizing_dashboards.md +75 -6
- data/docs/guides/switching_templates_with_view_variants.md +45 -0
- data/docs/guides.md +1 -0
- data/docs/migrating-to-v1.md +34 -0
- data/lib/administrate/base_dashboard.rb +0 -6
- data/lib/administrate/field/associative.rb +2 -21
- data/lib/administrate/field/base.rb +19 -2
- data/lib/administrate/field/belongs_to.rb +1 -6
- data/lib/administrate/field/date.rb +5 -1
- data/lib/administrate/field/date_time.rb +2 -3
- data/lib/administrate/field/deferred.rb +5 -17
- data/lib/administrate/field/has_many.rb +22 -3
- data/lib/administrate/field/has_one.rb +1 -9
- data/lib/administrate/field/password.rb +4 -0
- data/lib/administrate/field/polymorphic.rb +1 -1
- data/lib/administrate/field/time.rb +5 -4
- data/lib/administrate/namespace.rb +10 -10
- data/lib/administrate/order.rb +8 -8
- data/lib/administrate/search.rb +8 -9
- data/lib/administrate/version.rb +1 -1
- data/lib/administrate/view_generator.rb +1 -0
- data/lib/administrate.rb +0 -38
- data/lib/generators/administrate/install/install_generator.rb +1 -0
- data/lib/generators/administrate/routes/routes_generator.rb +1 -0
- metadata +12 -20
|
@@ -1,3 +1,16 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
--blue: #53adc6;
|
|
3
|
+
--red: #cf726e;
|
|
4
|
+
--green: #5bc89e;
|
|
5
|
+
--white: #f0f0f0;
|
|
6
|
+
--code-black: #202020;
|
|
7
|
+
--code-white: #e0e0dc;
|
|
8
|
+
--code-green: #b0bf82;
|
|
9
|
+
--code-blue: #8fbdcc;
|
|
10
|
+
--code-yellow: #f8d29d;
|
|
11
|
+
--code-red: #b95c56;
|
|
12
|
+
}
|
|
13
|
+
|
|
1
14
|
html,
|
|
2
15
|
body {
|
|
3
16
|
font-family: "Lato", serif;
|
|
@@ -18,7 +31,7 @@ h3 {
|
|
|
18
31
|
}
|
|
19
32
|
|
|
20
33
|
a {
|
|
21
|
-
color:
|
|
34
|
+
color: var(--blue);
|
|
22
35
|
text-decoration: none;
|
|
23
36
|
}
|
|
24
37
|
|
|
@@ -43,8 +56,8 @@ a {
|
|
|
43
56
|
}
|
|
44
57
|
|
|
45
58
|
.flash-wrapper {
|
|
46
|
-
background-color:
|
|
47
|
-
color:
|
|
59
|
+
background-color: var(--red);
|
|
60
|
+
color: var(--white);
|
|
48
61
|
padding: 1em;
|
|
49
62
|
}
|
|
50
63
|
.flash-wrapper .flash {
|
|
@@ -59,31 +72,31 @@ code {
|
|
|
59
72
|
padding: 0.4em 0.2em 0;
|
|
60
73
|
}
|
|
61
74
|
code.hljs {
|
|
62
|
-
background-color:
|
|
63
|
-
color:
|
|
75
|
+
background-color: var(--code-black);
|
|
76
|
+
color: var(--code-white);
|
|
64
77
|
padding-left: 1rem;
|
|
65
78
|
}
|
|
66
79
|
code.hljs .hljs-string {
|
|
67
|
-
color:
|
|
80
|
+
color: var(--code-green);
|
|
68
81
|
}
|
|
69
82
|
code.hljs .hljs-subst {
|
|
70
|
-
color:
|
|
83
|
+
color: var(--code-white);
|
|
71
84
|
}
|
|
72
85
|
code.hljs .hljs-constant {
|
|
73
|
-
color:
|
|
86
|
+
color: var(--code-blue);
|
|
74
87
|
}
|
|
75
88
|
code.hljs .hljs-symbol {
|
|
76
|
-
color:
|
|
89
|
+
color: var(--code-red);
|
|
77
90
|
}
|
|
78
91
|
code.hljs .hljs-keyword {
|
|
79
|
-
color:
|
|
92
|
+
color: var(--code-yellow);
|
|
80
93
|
}
|
|
81
94
|
code.hljs .hljs-title,
|
|
82
95
|
code.hljs .hljs-parent {
|
|
83
|
-
color:
|
|
96
|
+
color: var(--code-blue);
|
|
84
97
|
}
|
|
85
98
|
code.hljs .hljs-tag {
|
|
86
|
-
color:
|
|
99
|
+
color: var(--code-yellow);
|
|
87
100
|
}
|
|
88
101
|
|
|
89
102
|
/*# sourceMappingURL=docs.css.map */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sourceRoot":"","sources":["../../stylesheets/administrate-internal/docs.scss"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["../../stylesheets/administrate-internal/docs.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;AAAA;AAAA;EAGE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAEA;EACE;EACA;;AAIJ;EACE;EACA;;;AAIJ;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;;AAIJ;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAEA;EAAe;;AACf;EAAc;;AACd;EAAiB;;AACjB;EAAe;;AACf;EAAgB;;AAEhB;AAAA;EACe;;AAEf;EAAY","file":"docs.css","sourcesContent":[":root {\n --blue: #53adc6;\n --red: #cf726e;\n --green: #5bc89e;\n --white: #f0f0f0;\n\n --code-black: #202020;\n --code-white: #e0e0dc;\n --code-green: #b0bf82;\n --code-blue: #8fbdcc;\n --code-yellow: #f8d29d;\n --code-red: #b95c56;\n}\n\nhtml,\nbody {\n font-family: 'Lato', serif;\n font-size: 18px;\n line-height: 1.62em;\n margin: 0;\n}\n\nimg {\n max-width: 100%;\n}\n\nh1,\nh2,\nh3 {\n font-family: 'Fjalla One', sans-serif;\n margin-top: 2em;\n}\n\na {\n color: var(--blue);\n text-decoration: none;\n}\n\n.content {\n margin-bottom: 2em;\n margin-left: auto;\n margin-right: auto;\n margin-top: 2em;\n width: 60em;\n\n .sidebar {\n float: left;\n width: 20em;\n\n &-links {\n list-style: none;\n padding-left: 0;\n }\n }\n\n .main {\n float: right;\n width: 40em;\n }\n}\n\n.flash-wrapper {\n background-color: var(--red);\n color: var(--white);\n padding: 1em;\n\n .flash {\n margin-left: auto;\n margin-right: auto;\n width: 40em;\n }\n}\n\ncode {\n font-family: \"Source Code Pro\";\n font-size: 0.8rem;\n padding: 0.4em 0.2em 0;\n\n &.hljs {\n background-color: var(--code-black);\n color: var(--code-white);\n padding-left: 1rem;\n\n .hljs-string { color: var(--code-green); }\n .hljs-subst { color: var(--code-white); }\n .hljs-constant { color: var(--code-blue); }\n .hljs-symbol { color: var(--code-red); }\n .hljs-keyword { color: var(--code-yellow); }\n\n .hljs-title,\n .hljs-parent { color: var(--code-blue); }\n\n .hljs-tag { color: var(--code-yellow); }\n }\n}\n"]}
|
|
@@ -2,6 +2,8 @@ import { application } from "./application";
|
|
|
2
2
|
|
|
3
3
|
import SelectController from "./select_controller";
|
|
4
4
|
import TableController from "./table_controller";
|
|
5
|
+
import TooltipController from "./tooltip_controller";
|
|
5
6
|
|
|
6
7
|
application.register("select", SelectController);
|
|
7
8
|
application.register("table", TableController);
|
|
9
|
+
application.register("tooltip", TooltipController);
|
|
@@ -3,6 +3,23 @@ import $ from "jquery";
|
|
|
3
3
|
|
|
4
4
|
export default class extends Controller {
|
|
5
5
|
connect() {
|
|
6
|
-
|
|
6
|
+
if (!this.selectize) {
|
|
7
|
+
const options = this.selectizeOptions || {};
|
|
8
|
+
const selectedValues = $(this.element).val();
|
|
9
|
+
this.selectize = $(this.element).selectize(options)[0].selectize;
|
|
10
|
+
this.selectize.setValue(selectedValues);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
disconnect() {
|
|
15
|
+
if (this.selectize) {
|
|
16
|
+
const selectedValues = this.selectize.getValue();
|
|
17
|
+
if (!this.selectizeOptions) {
|
|
18
|
+
this.selectizeOptions = this.selectize.settings;
|
|
19
|
+
}
|
|
20
|
+
this.selectize.destroy();
|
|
21
|
+
this.selectize = null;
|
|
22
|
+
$(this.element).val(selectedValues);
|
|
23
|
+
}
|
|
7
24
|
}
|
|
8
25
|
};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Controller } from "@hotwired/stimulus";
|
|
2
|
+
|
|
3
|
+
export default class extends Controller {
|
|
4
|
+
static targets = ["popover", "tooltip"];
|
|
5
|
+
|
|
6
|
+
connect() {
|
|
7
|
+
this.tooltipTarget.addEventListener("mouseenter", this.showPopover);
|
|
8
|
+
this.tooltipTarget.addEventListener("mouseleave", this.hidePopover);
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
disconnect() {
|
|
12
|
+
this.tooltipTarget.removeEventListener("mouseenter", this.showPopover);
|
|
13
|
+
this.tooltipTarget.removeEventListener("mouseleave", this.hidePopover);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
showPopover = () => {
|
|
17
|
+
this.popoverTarget.showPopover();
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
hidePopover = () => {
|
|
21
|
+
this.popoverTarget.hidePopover();
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
|