json_flit 0.0.1 → 0.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +3 -0
- data/Gemfile.lock +29 -3
- data/README.md +3 -5
- data/demo/.ruby-version +1 -0
- data/demo/Gemfile +73 -0
- data/demo/Gemfile.lock +218 -0
- data/demo/Procfile.dev +3 -0
- data/demo/README.md +24 -0
- data/demo/Rakefile +6 -0
- data/demo/app/assets/builds/.keep +0 -0
- data/demo/app/assets/fonts/Lato-Regular.ttf +0 -0
- data/demo/app/assets/fonts/MetalMania-Regular.ttf +0 -0
- data/demo/app/assets/images/.keep +0 -0
- data/demo/app/assets/images/image1.jpg +0 -0
- data/demo/app/assets/images/image10.jpg +0 -0
- data/demo/app/assets/images/image11.jpg +0 -0
- data/demo/app/assets/images/image12.jpg +0 -0
- data/demo/app/assets/images/image13.jpg +0 -0
- data/demo/app/assets/images/image14.jpg +0 -0
- data/demo/app/assets/images/image15.jpg +0 -0
- data/demo/app/assets/images/image16.jpg +0 -0
- data/demo/app/assets/images/image17.jpg +0 -0
- data/demo/app/assets/images/image2.jpg +0 -0
- data/demo/app/assets/images/image3.jpg +0 -0
- data/demo/app/assets/images/image4.jpg +0 -0
- data/demo/app/assets/images/image5.jpg +0 -0
- data/demo/app/assets/images/image6.jpg +0 -0
- data/demo/app/assets/images/image7.jpg +0 -0
- data/demo/app/assets/images/image8.jpg +0 -0
- data/demo/app/assets/images/image9.jpg +0 -0
- data/demo/app/assets/images/profile.jpg +0 -0
- data/demo/app/assets/images/visa.svg +1 -0
- data/demo/app/assets/pages/align.json +182 -0
- data/demo/app/assets/pages/animated_align.json +50 -0
- data/demo/app/assets/pages/animated_container.json +56 -0
- data/demo/app/assets/pages/animated_cross_fade.json +63 -0
- data/demo/app/assets/pages/animated_default_text_style.json +53 -0
- data/demo/app/assets/pages/animated_opacity.json +49 -0
- data/demo/app/assets/pages/animated_padding.json +50 -0
- data/demo/app/assets/pages/animated_physical_model.json +73 -0
- data/demo/app/assets/pages/animated_positioned.json +54 -0
- data/demo/app/assets/pages/animated_positioned_directional.json +60 -0
- data/demo/app/assets/pages/animated_size.json +61 -0
- data/demo/app/assets/pages/animated_switcher.json +62 -0
- data/demo/app/assets/pages/animated_theme.json +52 -0
- data/demo/app/assets/pages/aspect_ratio.json +124 -0
- data/demo/app/assets/pages/asset_images.json +667 -0
- data/demo/app/assets/pages/bank_example.json +913 -0
- data/demo/app/assets/pages/baseline.json +81 -0
- data/demo/app/assets/pages/buttons.json +139 -0
- data/demo/app/assets/pages/card.json +121 -0
- data/demo/app/assets/pages/center.json +25 -0
- data/demo/app/assets/pages/checkbox.json +77 -0
- data/demo/app/assets/pages/circular_progress_indicator.json +45 -0
- data/demo/app/assets/pages/clips.json +156 -0
- data/demo/app/assets/pages/conditional.json +197 -0
- data/demo/app/assets/pages/cupertino_switch.yaml +72 -0
- data/demo/app/assets/pages/decorated_box.json +38 -0
- data/demo/app/assets/pages/directionality.json +31 -0
- data/demo/app/assets/pages/dynamic.json +299 -0
- data/demo/app/assets/pages/fitted_box.json +41 -0
- data/demo/app/assets/pages/for_each.json +130 -0
- data/demo/app/assets/pages/form.json +276 -0
- data/demo/app/assets/pages/fractional_translation.json +31 -0
- data/demo/app/assets/pages/fractionally_sized_box.json +34 -0
- data/demo/app/assets/pages/gestures.json +83 -0
- data/demo/app/assets/pages/grid_view.json +217 -0
- data/demo/app/assets/pages/image_page.json +32 -0
- data/demo/app/assets/pages/images.json +89 -0
- data/demo/app/assets/pages/indexed_stack.json +101 -0
- data/demo/app/assets/pages/input_error.json +64 -0
- data/demo/app/assets/pages/interactive_viewer.json +30 -0
- data/demo/app/assets/pages/intrinsic_height.json +63 -0
- data/demo/app/assets/pages/intrinsic_width.json +63 -0
- data/demo/app/assets/pages/issue_10.json +23 -0
- data/demo/app/assets/pages/issue_109.json +65 -0
- data/demo/app/assets/pages/issue_11.json +23 -0
- data/demo/app/assets/pages/issue_12.json +34 -0
- data/demo/app/assets/pages/issue_20_list.json +31 -0
- data/demo/app/assets/pages/issue_20_single.json +31 -0
- data/demo/app/assets/pages/issue_30.json +35 -0
- data/demo/app/assets/pages/layout_builder.json +403 -0
- data/demo/app/assets/pages/length.json +125 -0
- data/demo/app/assets/pages/limited_box.json +33 -0
- data/demo/app/assets/pages/linear_progress_indicator.json +25 -0
- data/demo/app/assets/pages/list_view.json +410 -0
- data/demo/app/assets/pages/measured.json +266 -0
- data/demo/app/assets/pages/offstage.json +50 -0
- data/demo/app/assets/pages/opacity.json +136 -0
- data/demo/app/assets/pages/overflow_box.json +52 -0
- data/demo/app/assets/pages/placeholder.json +57 -0
- data/demo/app/assets/pages/popup_menu_button.json +38 -0
- data/demo/app/assets/pages/radio.json +60 -0
- data/demo/app/assets/pages/rich_text.json +45 -0
- data/demo/app/assets/pages/scroll_view.json +974 -0
- data/demo/app/assets/pages/semantics.json +212 -0
- data/demo/app/assets/pages/set_default_value.json +77 -0
- data/demo/app/assets/pages/simple_page.json +25 -0
- data/demo/app/assets/pages/slivers.json +268 -0
- data/demo/app/assets/pages/switch.json +77 -0
- data/demo/app/assets/pages/theme.json +228 -0
- data/demo/app/assets/pages/tooltip.json +77 -0
- data/demo/app/assets/pages/tween_animation.json +43 -0
- data/demo/app/assets/pages/variables.json +64 -0
- data/demo/app/assets/pages/wrap.json +117 -0
- data/demo/app/assets/stylesheets/application.css +1 -0
- data/demo/app/assets/stylesheets/application.tailwind.css +13 -0
- data/demo/app/assets/widgets/issue_24.json +42 -0
- data/demo/app/channels/application_cable/channel.rb +4 -0
- data/demo/app/channels/application_cable/connection.rb +4 -0
- data/demo/app/controllers/application_controller.rb +2 -0
- data/demo/app/controllers/concerns/.keep +0 -0
- data/demo/app/controllers/welcome_controller.rb +22 -0
- data/demo/app/helpers/application_helper.rb +2 -0
- data/demo/app/helpers/welcome_helper.rb +2 -0
- data/demo/app/javascript/application.js +3 -0
- data/demo/app/javascript/controllers/application.js +9 -0
- data/demo/app/javascript/controllers/hello_controller.js +7 -0
- data/demo/app/javascript/controllers/index.js +8 -0
- data/demo/app/jobs/application_job.rb +7 -0
- data/demo/app/mailers/application_mailer.rb +4 -0
- data/demo/app/models/application_record.rb +3 -0
- data/demo/app/models/concerns/.keep +0 -0
- data/demo/app/views/layouts/application.html.erb +16 -0
- data/demo/app/views/layouts/mailer.html.erb +13 -0
- data/demo/app/views/layouts/mailer.text.erb +1 -0
- data/demo/app/views/welcome/index.html.erb +5 -0
- data/demo/app/views/welcome/show.html.erb +6 -0
- data/demo/bin/bundle +109 -0
- data/demo/bin/dev +8 -0
- data/demo/bin/rails +4 -0
- data/demo/bin/rake +4 -0
- data/demo/bin/setup +33 -0
- data/demo/config/application.rb +37 -0
- data/demo/config/boot.rb +4 -0
- data/demo/config/cable.yml +11 -0
- data/demo/config/credentials.yml.enc +1 -0
- data/demo/config/database.yml +25 -0
- data/demo/config/environment.rb +5 -0
- data/demo/config/environments/development.rb +68 -0
- data/demo/config/environments/production.rb +87 -0
- data/demo/config/environments/test.rb +60 -0
- data/demo/config/initializers/assets.rb +12 -0
- data/demo/config/initializers/content_security_policy.rb +25 -0
- data/demo/config/initializers/filter_parameter_logging.rb +8 -0
- data/demo/config/initializers/inflections.rb +16 -0
- data/demo/config/initializers/permissions_policy.rb +11 -0
- data/demo/config/locales/en.yml +33 -0
- data/demo/config/puma.rb +43 -0
- data/demo/config/routes.rb +5 -0
- data/demo/config/storage.yml +34 -0
- data/demo/config/tailwind.config.js +22 -0
- data/demo/config.ru +6 -0
- data/demo/db/development.sqlite3 +0 -0
- data/demo/db/seeds.rb +7 -0
- data/demo/lib/assets/.keep +0 -0
- data/demo/lib/tasks/.keep +0 -0
- data/demo/log/.keep +0 -0
- data/demo/public/404.html +67 -0
- data/demo/public/422.html +67 -0
- data/demo/public/500.html +66 -0
- data/demo/public/apple-touch-icon-precomposed.png +0 -0
- data/demo/public/apple-touch-icon.png +0 -0
- data/demo/public/favicon.ico +0 -0
- data/demo/public/robots.txt +1 -0
- data/demo/storage/.keep +0 -0
- data/demo/tmp/.keep +0 -0
- data/demo/tmp/pids/.keep +0 -0
- data/demo/tmp/storage/.keep +0 -0
- data/demo/vendor/.keep +0 -0
- data/lib/json_flit/registry.rb +144 -0
- data/lib/json_flit/version.rb +1 -1
- metadata +185 -3
@@ -0,0 +1,228 @@
|
|
1
|
+
{
|
2
|
+
"type": "set_widget",
|
3
|
+
"args": {
|
4
|
+
"body": {
|
5
|
+
"type": "scaffold",
|
6
|
+
"args": {
|
7
|
+
"appBar": {
|
8
|
+
"type": "app_bar",
|
9
|
+
"args": {
|
10
|
+
"title": {
|
11
|
+
"type": "text",
|
12
|
+
"args": {
|
13
|
+
"text": "Theme"
|
14
|
+
}
|
15
|
+
}
|
16
|
+
}
|
17
|
+
},
|
18
|
+
"body": {
|
19
|
+
"type": "safe_area",
|
20
|
+
"args": {
|
21
|
+
"bottom": true,
|
22
|
+
"top": true
|
23
|
+
},
|
24
|
+
"child": {
|
25
|
+
"type": "padding",
|
26
|
+
"args": {
|
27
|
+
"padding": 16
|
28
|
+
},
|
29
|
+
"child": {
|
30
|
+
"type": "stack",
|
31
|
+
"children": [
|
32
|
+
{
|
33
|
+
"type": "align",
|
34
|
+
"args": {
|
35
|
+
"alignment": "bottomLeft"
|
36
|
+
},
|
37
|
+
"child": {
|
38
|
+
"type": "elevated_button",
|
39
|
+
"args": {
|
40
|
+
"onPressed": "${set_value('theme', 'big_red')}"
|
41
|
+
},
|
42
|
+
"child": {
|
43
|
+
"type": "text",
|
44
|
+
"args": {
|
45
|
+
"text": "Big Red"
|
46
|
+
}
|
47
|
+
}
|
48
|
+
}
|
49
|
+
},
|
50
|
+
{
|
51
|
+
"type": "align",
|
52
|
+
"args": {
|
53
|
+
"alignment": "bottomRight"
|
54
|
+
},
|
55
|
+
"child": {
|
56
|
+
"type": "elevated_button",
|
57
|
+
"args": {
|
58
|
+
"onPressed": "${set_value('theme', 'cool_blue')}"
|
59
|
+
},
|
60
|
+
"child": {
|
61
|
+
"type": "text",
|
62
|
+
"args": {
|
63
|
+
"text": "Cool Blue"
|
64
|
+
}
|
65
|
+
}
|
66
|
+
}
|
67
|
+
},
|
68
|
+
{
|
69
|
+
"type": "positioned",
|
70
|
+
"args": {
|
71
|
+
"bottom": 80,
|
72
|
+
"left": 16,
|
73
|
+
"right": 16,
|
74
|
+
"top": 0
|
75
|
+
},
|
76
|
+
"child": {
|
77
|
+
"type": "single_child_scroll_view",
|
78
|
+
"args": {
|
79
|
+
"padding": [
|
80
|
+
16,
|
81
|
+
0
|
82
|
+
]
|
83
|
+
},
|
84
|
+
"child": {
|
85
|
+
"type": "column",
|
86
|
+
"args": {
|
87
|
+
"mainAxisSize": "min"
|
88
|
+
},
|
89
|
+
"children": [
|
90
|
+
{
|
91
|
+
"type": "checkbox"
|
92
|
+
},
|
93
|
+
{
|
94
|
+
"type": "sized_box",
|
95
|
+
"args": {
|
96
|
+
"height": 16.0
|
97
|
+
}
|
98
|
+
},
|
99
|
+
{
|
100
|
+
"type": "row",
|
101
|
+
"args": {
|
102
|
+
"mainAxisAlignment": "spaceEvenly"
|
103
|
+
},
|
104
|
+
"children": [
|
105
|
+
{
|
106
|
+
"type": "radio",
|
107
|
+
"args": {
|
108
|
+
"groupValue": "false",
|
109
|
+
"id": "radio",
|
110
|
+
"value": true
|
111
|
+
}
|
112
|
+
},
|
113
|
+
{
|
114
|
+
"type": "radio",
|
115
|
+
"args": {
|
116
|
+
"groupValue": "false",
|
117
|
+
"id": "radio",
|
118
|
+
"value": false
|
119
|
+
}
|
120
|
+
}
|
121
|
+
]
|
122
|
+
},
|
123
|
+
{
|
124
|
+
"type": "text",
|
125
|
+
"args": {
|
126
|
+
"text": "Hello, World!"
|
127
|
+
}
|
128
|
+
},
|
129
|
+
{
|
130
|
+
"type": "sized_box",
|
131
|
+
"args": {
|
132
|
+
"height": 16.0
|
133
|
+
}
|
134
|
+
},
|
135
|
+
{
|
136
|
+
"type": "text_form_field",
|
137
|
+
"args": {
|
138
|
+
"decoration": {
|
139
|
+
"hintText": "example@example.com",
|
140
|
+
"labelText": "Email Address"
|
141
|
+
}
|
142
|
+
},
|
143
|
+
"id": "text_form_field"
|
144
|
+
},
|
145
|
+
{
|
146
|
+
"type": "sized_box",
|
147
|
+
"args": {
|
148
|
+
"height": 16.0
|
149
|
+
}
|
150
|
+
}
|
151
|
+
]
|
152
|
+
}
|
153
|
+
}
|
154
|
+
}
|
155
|
+
]
|
156
|
+
}
|
157
|
+
}
|
158
|
+
}
|
159
|
+
}
|
160
|
+
}
|
161
|
+
},
|
162
|
+
"child": {
|
163
|
+
"type": "conditional",
|
164
|
+
"args": {
|
165
|
+
"conditional": {
|
166
|
+
"values": {
|
167
|
+
"theme": "big_red"
|
168
|
+
}
|
169
|
+
},
|
170
|
+
"onFalse": {
|
171
|
+
"type": "theme",
|
172
|
+
"args": {
|
173
|
+
"data": {
|
174
|
+
"backgroundColor": "#f5f5f5",
|
175
|
+
"buttonColor": "#0d47a1",
|
176
|
+
"buttonTheme": {
|
177
|
+
"buttonColor": "#0d47a1",
|
178
|
+
"textTheme": "primary"
|
179
|
+
},
|
180
|
+
"canvasColor": "#ffffff",
|
181
|
+
"disabledColor": "#e0e0e0",
|
182
|
+
"errorColor": "#d50000",
|
183
|
+
"fontFamily": "lato",
|
184
|
+
"iconTheme": {
|
185
|
+
"color": "#37474f"
|
186
|
+
},
|
187
|
+
"primaryColor": "#37474f",
|
188
|
+
"primaryColorBrightness": "dark",
|
189
|
+
"toggleableActiveColor": "#33691e"
|
190
|
+
}
|
191
|
+
},
|
192
|
+
"child": "${body}"
|
193
|
+
}
|
194
|
+
},
|
195
|
+
"child": {
|
196
|
+
"type": "theme",
|
197
|
+
"args": {
|
198
|
+
"data": {
|
199
|
+
"backgroundColor": "#f5f5f5",
|
200
|
+
"buttonColor": "#b71c1c",
|
201
|
+
"buttonTheme": {
|
202
|
+
"buttonColor": "#b71c1c",
|
203
|
+
"textTheme": "primary"
|
204
|
+
},
|
205
|
+
"canvasColor": "#ffffff",
|
206
|
+
"disabledColor": "#f8bbd0",
|
207
|
+
"errorColor": "#880e4f",
|
208
|
+
"fontFamily": "metal",
|
209
|
+
"iconTheme": {
|
210
|
+
"color": "#37474f"
|
211
|
+
},
|
212
|
+
"inputDecorationTheme": {
|
213
|
+
"border": {
|
214
|
+
"type": "outline"
|
215
|
+
},
|
216
|
+
"errorStyle": {
|
217
|
+
"color": "#880e4f"
|
218
|
+
}
|
219
|
+
},
|
220
|
+
"primaryColor": "#b71c1c",
|
221
|
+
"primaryColorBrightness": "dark",
|
222
|
+
"toggleableActiveColor": "#b71c1c"
|
223
|
+
}
|
224
|
+
},
|
225
|
+
"child": "${body}"
|
226
|
+
}
|
227
|
+
}
|
228
|
+
}
|
@@ -0,0 +1,77 @@
|
|
1
|
+
{
|
2
|
+
"type": "scaffold",
|
3
|
+
"args": {
|
4
|
+
"appBar": {
|
5
|
+
"type": "app_bar",
|
6
|
+
"args": {
|
7
|
+
"title": {
|
8
|
+
"type": "text",
|
9
|
+
"args": {
|
10
|
+
"text": "Simple Page"
|
11
|
+
}
|
12
|
+
}
|
13
|
+
}
|
14
|
+
},
|
15
|
+
"body": {
|
16
|
+
"type": "column",
|
17
|
+
"children": [
|
18
|
+
{
|
19
|
+
"type": "tooltip",
|
20
|
+
"args": {
|
21
|
+
"message": "DEFAULT TOOLTIP"
|
22
|
+
},
|
23
|
+
"child": {
|
24
|
+
"type": "material",
|
25
|
+
"args": {
|
26
|
+
"borderRadius": 8,
|
27
|
+
"color": "#ccc"
|
28
|
+
},
|
29
|
+
"child": {
|
30
|
+
"type": "padding",
|
31
|
+
"args": {
|
32
|
+
"padding": 16
|
33
|
+
},
|
34
|
+
"child": {
|
35
|
+
"type": "text",
|
36
|
+
"args": {
|
37
|
+
"text": "Default Tooltip"
|
38
|
+
}
|
39
|
+
}
|
40
|
+
}
|
41
|
+
}
|
42
|
+
},
|
43
|
+
{
|
44
|
+
"type": "sized_box",
|
45
|
+
"args": {
|
46
|
+
"height": 16
|
47
|
+
}
|
48
|
+
},
|
49
|
+
{
|
50
|
+
"type": "tooltip",
|
51
|
+
"args": {
|
52
|
+
"message": "CUSTOM TOOLTIP"
|
53
|
+
},
|
54
|
+
"child": {
|
55
|
+
"type": "material",
|
56
|
+
"args": {
|
57
|
+
"borderRadius": 8,
|
58
|
+
"color": "#ccc"
|
59
|
+
},
|
60
|
+
"child": {
|
61
|
+
"type": "padding",
|
62
|
+
"args": {
|
63
|
+
"padding": 16
|
64
|
+
},
|
65
|
+
"child": {
|
66
|
+
"type": "text",
|
67
|
+
"args": {
|
68
|
+
"text": "Custom Tooltip"
|
69
|
+
}
|
70
|
+
}
|
71
|
+
}
|
72
|
+
}
|
73
|
+
}
|
74
|
+
]
|
75
|
+
}
|
76
|
+
}
|
77
|
+
}
|
@@ -0,0 +1,43 @@
|
|
1
|
+
{
|
2
|
+
"type": "scaffold",
|
3
|
+
"args": {
|
4
|
+
"appBar": {
|
5
|
+
"type": "app_bar",
|
6
|
+
"args": {
|
7
|
+
"title": {
|
8
|
+
"type": "text",
|
9
|
+
"args": {
|
10
|
+
"text": "TweenAnimation"
|
11
|
+
}
|
12
|
+
}
|
13
|
+
}
|
14
|
+
},
|
15
|
+
"body": {
|
16
|
+
"type": "set_value",
|
17
|
+
"args": {
|
18
|
+
"customSize": 50.0
|
19
|
+
},
|
20
|
+
"child": {
|
21
|
+
"type": "center",
|
22
|
+
"child": {
|
23
|
+
"type": "tween_animation",
|
24
|
+
"args": {
|
25
|
+
"builder": "${getCustomTweenBuilder()}",
|
26
|
+
"duration": 1000,
|
27
|
+
"tween": "${getCustomTween(customSize)}"
|
28
|
+
},
|
29
|
+
"child": {
|
30
|
+
"type": "icon",
|
31
|
+
"args": {
|
32
|
+
"color": "#0000FF",
|
33
|
+
"icon": {
|
34
|
+
"codePoint": "0xe5db",
|
35
|
+
"fontFamily": "MaterialIcons"
|
36
|
+
}
|
37
|
+
}
|
38
|
+
}
|
39
|
+
}
|
40
|
+
}
|
41
|
+
}
|
42
|
+
}
|
43
|
+
}
|
@@ -0,0 +1,64 @@
|
|
1
|
+
{
|
2
|
+
"type": "set_value",
|
3
|
+
"args": {
|
4
|
+
"people": [
|
5
|
+
{
|
6
|
+
"firstName": "John",
|
7
|
+
"lastName": "Smith",
|
8
|
+
"address": {
|
9
|
+
"street": "1234 Lane Ave",
|
10
|
+
"city": "Springfield",
|
11
|
+
"state": "OH"
|
12
|
+
}
|
13
|
+
},
|
14
|
+
{
|
15
|
+
"firstName": "Jane",
|
16
|
+
"lastName": "Smith",
|
17
|
+
"address": {
|
18
|
+
"street": "1234 Lane Ave",
|
19
|
+
"city": "Springfield",
|
20
|
+
"state": "MI"
|
21
|
+
}
|
22
|
+
}
|
23
|
+
]
|
24
|
+
},
|
25
|
+
"child": {
|
26
|
+
"type": "scaffold",
|
27
|
+
"args": {
|
28
|
+
"appBar": {
|
29
|
+
"type": "app_bar",
|
30
|
+
"args": {
|
31
|
+
"title": {
|
32
|
+
"type": "text",
|
33
|
+
"args": {
|
34
|
+
"text": "Variables"
|
35
|
+
}
|
36
|
+
}
|
37
|
+
}
|
38
|
+
},
|
39
|
+
"body": {
|
40
|
+
"type": "center",
|
41
|
+
"child": {
|
42
|
+
"type": "row",
|
43
|
+
"args": {
|
44
|
+
"mainAxisSize": "min"
|
45
|
+
},
|
46
|
+
"children": [
|
47
|
+
{
|
48
|
+
"type": "text",
|
49
|
+
"args": {
|
50
|
+
"text": "Hello, "
|
51
|
+
}
|
52
|
+
},
|
53
|
+
{
|
54
|
+
"type": "text",
|
55
|
+
"args": {
|
56
|
+
"text": "${people[0]['firstName']}"
|
57
|
+
}
|
58
|
+
}
|
59
|
+
]
|
60
|
+
}
|
61
|
+
}
|
62
|
+
}
|
63
|
+
}
|
64
|
+
}
|
@@ -0,0 +1,117 @@
|
|
1
|
+
{
|
2
|
+
"type": "set_value",
|
3
|
+
"args": {
|
4
|
+
"entries": {
|
5
|
+
"values": [
|
6
|
+
"align",
|
7
|
+
"animated_align",
|
8
|
+
"animated_container",
|
9
|
+
"animated_cross_fade",
|
10
|
+
"animated_default_text_style",
|
11
|
+
"animated_opacity",
|
12
|
+
"animated_padding",
|
13
|
+
"animated_physical_model",
|
14
|
+
"animated_positioned",
|
15
|
+
"animated_positioned_directional",
|
16
|
+
"animated_size",
|
17
|
+
"animated_switcher",
|
18
|
+
"animated_theme",
|
19
|
+
"aspect_ratio",
|
20
|
+
"asset_images",
|
21
|
+
"bank_example",
|
22
|
+
"baseline",
|
23
|
+
"buttons",
|
24
|
+
"card",
|
25
|
+
"center",
|
26
|
+
"checkbox",
|
27
|
+
"circular_progress_indicator",
|
28
|
+
"clips",
|
29
|
+
"conditional",
|
30
|
+
"cupertino_switch",
|
31
|
+
"decorated_box",
|
32
|
+
"directionality",
|
33
|
+
"dynamic",
|
34
|
+
"fitted_box",
|
35
|
+
"for_each",
|
36
|
+
"form",
|
37
|
+
"fractional_translation",
|
38
|
+
"fractionally_sized_box",
|
39
|
+
"gestures",
|
40
|
+
"images",
|
41
|
+
"indexed_stack",
|
42
|
+
"input_error",
|
43
|
+
"interactive_viewer",
|
44
|
+
"intrinsic_height",
|
45
|
+
"intrinsic_width",
|
46
|
+
"issue_10",
|
47
|
+
"issue_11",
|
48
|
+
"issue_12",
|
49
|
+
"issue_20_list",
|
50
|
+
"issue_20_single",
|
51
|
+
"issue_24",
|
52
|
+
"issue_30",
|
53
|
+
"layout_builder",
|
54
|
+
"limited_box",
|
55
|
+
"linear_progress_indicator",
|
56
|
+
"list_view",
|
57
|
+
"measured",
|
58
|
+
"offstage",
|
59
|
+
"opacity",
|
60
|
+
"overflow_box",
|
61
|
+
"placeholder",
|
62
|
+
"popup_menu_button",
|
63
|
+
"simple_page",
|
64
|
+
"switch",
|
65
|
+
"theme",
|
66
|
+
"tween_animation",
|
67
|
+
"variables"
|
68
|
+
]
|
69
|
+
},
|
70
|
+
"template": {
|
71
|
+
"type": "material",
|
72
|
+
"args": {
|
73
|
+
"borderRadius": 8,
|
74
|
+
"color": "#ccc"
|
75
|
+
},
|
76
|
+
"child": {
|
77
|
+
"type": "padding",
|
78
|
+
"args": {
|
79
|
+
"padding": 16.0
|
80
|
+
},
|
81
|
+
"child": {
|
82
|
+
"type": "text",
|
83
|
+
"args": {
|
84
|
+
"text": "${value}"
|
85
|
+
}
|
86
|
+
}
|
87
|
+
}
|
88
|
+
}
|
89
|
+
},
|
90
|
+
"child": {
|
91
|
+
"type": "scaffold",
|
92
|
+
"args": {
|
93
|
+
"appBar": {
|
94
|
+
"type": "app_bar",
|
95
|
+
"args": {
|
96
|
+
"title": {
|
97
|
+
"type": "text",
|
98
|
+
"args": {
|
99
|
+
"text": "Wrap"
|
100
|
+
}
|
101
|
+
}
|
102
|
+
}
|
103
|
+
},
|
104
|
+
"body": {
|
105
|
+
"type": "single_child_scroll_view",
|
106
|
+
"child": {
|
107
|
+
"type": "wrap",
|
108
|
+
"args": {
|
109
|
+
"runSpacing": 16.0,
|
110
|
+
"spacing": 16.0
|
111
|
+
},
|
112
|
+
"children": "${for_each(entries['values'], 'template')}"
|
113
|
+
}
|
114
|
+
}
|
115
|
+
}
|
116
|
+
}
|
117
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
/* Application styles */
|
@@ -0,0 +1,42 @@
|
|
1
|
+
{
|
2
|
+
"type": "scaffold",
|
3
|
+
"args": {
|
4
|
+
"appBar": {
|
5
|
+
"type": "app_bar",
|
6
|
+
"args": {
|
7
|
+
"title": {
|
8
|
+
"type": "text",
|
9
|
+
"args": {
|
10
|
+
"text": "List of English words"
|
11
|
+
}
|
12
|
+
},
|
13
|
+
"actions": [
|
14
|
+
{
|
15
|
+
"type": "icon_button",
|
16
|
+
"args": {
|
17
|
+
"icon": {
|
18
|
+
"type": "icon",
|
19
|
+
"args": {
|
20
|
+
"icon": {
|
21
|
+
"codePoint": 59418,
|
22
|
+
"fontFamily": "MaterialIcons"
|
23
|
+
}
|
24
|
+
}
|
25
|
+
},
|
26
|
+
"onPressed": "${simplePrintMessage()}"
|
27
|
+
}
|
28
|
+
}
|
29
|
+
]
|
30
|
+
}
|
31
|
+
},
|
32
|
+
"body": {
|
33
|
+
"type": "center",
|
34
|
+
"child": {
|
35
|
+
"type": "circular_progress_indicator",
|
36
|
+
"args": {
|
37
|
+
"valueColor": "#f00"
|
38
|
+
}
|
39
|
+
}
|
40
|
+
}
|
41
|
+
}
|
42
|
+
}
|
File without changes
|
@@ -0,0 +1,22 @@
|
|
1
|
+
class WelcomeController < ApplicationController
|
2
|
+
def index
|
3
|
+
dir = Rails.root.join('app', 'assets', 'pages', '*')
|
4
|
+
@pages = Dir.glob(dir).map { |f| File.basename(f, File.extname(f)) }
|
5
|
+
end
|
6
|
+
|
7
|
+
def show
|
8
|
+
@data = {}
|
9
|
+
@page = params[:page]
|
10
|
+
file = Rails.root.join('app', 'assets', 'pages', @page)
|
11
|
+
begin
|
12
|
+
raw = File.read("#{file}.json")
|
13
|
+
@layout = MultiJson.load(raw)
|
14
|
+
rescue => exception
|
15
|
+
raw = File.read("#{file}.yaml")
|
16
|
+
@layout = YAML.safe_load(raw)
|
17
|
+
rescue => exception
|
18
|
+
raise "Invalid data format"
|
19
|
+
end
|
20
|
+
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,8 @@
|
|
1
|
+
// This file is auto-generated by ./bin/rails stimulus:manifest:update
|
2
|
+
// Run that command whenever you add a new controller or create them with
|
3
|
+
// ./bin/rails generate stimulus controllerName
|
4
|
+
|
5
|
+
import { application } from "./application"
|
6
|
+
|
7
|
+
import HelloController from "./hello_controller"
|
8
|
+
application.register("hello", HelloController)
|
@@ -0,0 +1,7 @@
|
|
1
|
+
class ApplicationJob < ActiveJob::Base
|
2
|
+
# Automatically retry jobs that encountered a deadlock
|
3
|
+
# retry_on ActiveRecord::Deadlocked
|
4
|
+
|
5
|
+
# Most jobs are safe to ignore if the underlying records are no longer available
|
6
|
+
# discard_on ActiveJob::DeserializationError
|
7
|
+
end
|