glib-web 0.5.3 → 0.5.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (146) hide show
  1. checksums.yaml +5 -5
  2. data/app/controllers/concerns/glib/auth/policy.rb +0 -0
  3. data/app/controllers/concerns/glib/json/new_dynamic_text.rb +0 -0
  4. data/app/controllers/concerns/glib/json/traversal.rb +0 -0
  5. data/app/controllers/glib/home_controller.rb +1 -1
  6. data/app/helpers/glib/dynamic_images_helper.rb +0 -0
  7. data/app/helpers/glib/dynamic_texts_helper.rb +0 -0
  8. data/app/helpers/glib/forms_helper.rb +0 -0
  9. data/app/helpers/glib/json_ui/abstract_builder.rb +0 -0
  10. data/app/helpers/glib/json_ui/action_builder.rb +0 -0
  11. data/app/helpers/glib/json_ui/action_builder/dialogs.rb +0 -0
  12. data/app/helpers/glib/json_ui/action_builder/http.rb +0 -0
  13. data/app/helpers/glib/json_ui/action_builder/sheets.rb +0 -0
  14. data/app/helpers/glib/json_ui/action_builder/snackbars.rb +0 -0
  15. data/app/helpers/glib/json_ui/action_builder/windows.rb +0 -0
  16. data/app/helpers/glib/json_ui/generic_builders.rb +0 -0
  17. data/app/helpers/glib/json_ui/list_builders.rb +0 -0
  18. data/app/helpers/glib/json_ui/menu_builder.rb +0 -0
  19. data/app/helpers/glib/json_ui/page_helper.rb +0 -0
  20. data/app/helpers/glib/json_ui/response_helper.rb +0 -0
  21. data/app/helpers/glib/json_ui/split_builders.rb +0 -0
  22. data/app/helpers/glib/json_ui/styling_helper.rb +0 -0
  23. data/app/helpers/glib/json_ui/table_builders.rb +0 -0
  24. data/app/helpers/glib/json_ui/view_builder.rb +0 -0
  25. data/app/helpers/glib/json_ui/view_builder/banners.rb +0 -0
  26. data/app/helpers/glib/json_ui/view_builder/fields.rb +0 -0
  27. data/app/helpers/glib/json_ui/view_builder/panels.rb +0 -0
  28. data/app/models/glib/active_storage/attachment.rb +0 -0
  29. data/app/models/glib/active_storage/blob.rb +0 -0
  30. data/app/models/glib/dynamic_text_record.rb +0 -0
  31. data/app/models/glib/text.rb +0 -0
  32. data/app/policies/glib/application_policy.rb +0 -0
  33. data/app/validators/email_typo_validator.rb +0 -0
  34. data/app/validators/email_validator.rb +0 -0
  35. data/app/validators/url_validator.rb +0 -0
  36. data/app/views/app/views/json_ui/vue/renderer.html.erb +0 -0
  37. data/app/views/json_ui/garage/_nav_menu.json.jbuilder +0 -0
  38. data/app/views/json_ui/garage/actions/_dialogs.json.jbuilder +20 -14
  39. data/app/views/json_ui/garage/actions/_http.json.jbuilder +0 -0
  40. data/app/views/json_ui/garage/actions/_reload.json.jbuilder +0 -0
  41. data/app/views/json_ui/garage/actions/_sheets.json.jbuilder +0 -0
  42. data/app/views/json_ui/garage/actions/_snackbars.json.jbuilder +0 -0
  43. data/app/views/json_ui/garage/actions/_timeouts.json.jbuilder +0 -0
  44. data/app/views/json_ui/garage/actions/_windows.json.jbuilder +0 -0
  45. data/app/views/json_ui/garage/actions/dialogs_oauth_post.json.jbuilder +0 -0
  46. data/app/views/json_ui/garage/actions/index.json.jbuilder +0 -0
  47. data/app/views/json_ui/garage/forms/_alert_post_data.json.jbuilder +0 -0
  48. data/app/views/json_ui/garage/forms/basic.json.jbuilder +0 -0
  49. data/app/views/json_ui/garage/forms/basic_post.json.jbuilder +0 -0
  50. data/app/views/json_ui/garage/forms/checkboxes.json.jbuilder +0 -0
  51. data/app/views/json_ui/garage/forms/dynamic_group.json.jbuilder +0 -0
  52. data/app/views/json_ui/garage/forms/dynamic_select.json.jbuilder +0 -0
  53. data/app/views/json_ui/garage/forms/dynamic_select_data.json.jbuilder +0 -0
  54. data/app/views/json_ui/garage/forms/file_upload.json.jbuilder +0 -0
  55. data/app/views/json_ui/garage/forms/floating_submit.json.jbuilder +0 -0
  56. data/app/views/json_ui/garage/forms/generic_post.json.jbuilder +0 -0
  57. data/app/views/json_ui/garage/forms/get_request.json.jbuilder +0 -0
  58. data/app/views/json_ui/garage/forms/index.json.jbuilder +0 -0
  59. data/app/views/json_ui/garage/forms/pickers.json.jbuilder +0 -0
  60. data/app/views/json_ui/garage/forms/rich_text.json.jbuilder +0 -0
  61. data/app/views/json_ui/garage/forms/selects.json.jbuilder +0 -0
  62. data/app/views/json_ui/garage/forms/show_hide.json.jbuilder +0 -0
  63. data/app/views/json_ui/garage/forms/styled_boxes.json.jbuilder +0 -0
  64. data/app/views/json_ui/garage/forms/submission_flow.json.jbuilder +0 -0
  65. data/app/views/json_ui/garage/forms/submission_flow_post.json.jbuilder +0 -0
  66. data/app/views/json_ui/garage/forms/submission_indicator.json.jbuilder +0 -0
  67. data/app/views/json_ui/garage/forms/submission_indicator_post.json.jbuilder +0 -0
  68. data/app/views/json_ui/garage/forms/text_validation.json.jbuilder +0 -0
  69. data/app/views/json_ui/garage/home/blank.json.jbuilder +0 -0
  70. data/app/views/json_ui/garage/home/index.json.jbuilder +0 -0
  71. data/app/views/json_ui/garage/home/slow.json.jbuilder +0 -0
  72. data/app/views/json_ui/garage/lists/_infinite_scroll_section.json.jbuilder +15 -5
  73. data/app/views/json_ui/garage/lists/edit_actions.json.jbuilder +0 -0
  74. data/app/views/json_ui/garage/lists/fab.json.jbuilder +0 -0
  75. data/app/views/json_ui/garage/lists/index.json.jbuilder +0 -0
  76. data/app/views/json_ui/garage/lists/infinite_scroll.json.jbuilder +0 -0
  77. data/app/views/json_ui/garage/lists/templating.json.jbuilder +0 -0
  78. data/app/views/json_ui/garage/notifications/index.json.jbuilder +0 -43
  79. data/app/views/json_ui/garage/notifications/web_socket.json.jbuilder +0 -0
  80. data/app/views/json_ui/garage/pages/flat_centered.json.jbuilder +0 -0
  81. data/app/views/json_ui/garage/pages/full_width.json.jbuilder +0 -0
  82. data/app/views/json_ui/garage/pages/full_width_height.json.jbuilder +0 -0
  83. data/app/views/json_ui/garage/pages/index.json.jbuilder +0 -0
  84. data/app/views/json_ui/garage/pages/layout.json.jbuilder +0 -0
  85. data/app/views/json_ui/garage/pages/loading_indicator.json.jbuilder +0 -0
  86. data/app/views/json_ui/garage/pages/nav_buttons.json.jbuilder +0 -0
  87. data/app/views/json_ui/garage/pages/tab_bar.json.jbuilder +0 -0
  88. data/app/views/json_ui/garage/panels/_styled.json.jbuilder +0 -0
  89. data/app/views/json_ui/garage/panels/card.json.jbuilder +0 -0
  90. data/app/views/json_ui/garage/panels/carousel.json.jbuilder +0 -0
  91. data/app/views/json_ui/garage/panels/custom.json.jbuilder +0 -0
  92. data/app/views/json_ui/garage/panels/flow.json.jbuilder +0 -0
  93. data/app/views/json_ui/garage/panels/horizontal.json.jbuilder +0 -0
  94. data/app/views/json_ui/garage/panels/index.json.jbuilder +0 -0
  95. data/app/views/json_ui/garage/panels/outlined.json.jbuilder +0 -0
  96. data/app/views/json_ui/garage/panels/responsive.json.jbuilder +0 -0
  97. data/app/views/json_ui/garage/panels/split.json.jbuilder +0 -0
  98. data/app/views/json_ui/garage/panels/vertical.json.jbuilder +0 -0
  99. data/app/views/json_ui/garage/services/dynamic_text.json.jbuilder +0 -0
  100. data/app/views/json_ui/garage/services/image.json.jbuilder +0 -0
  101. data/app/views/json_ui/garage/services/index.json.jbuilder +0 -0
  102. data/app/views/json_ui/garage/tables/_autoload_section.json.jbuilder +0 -0
  103. data/app/views/json_ui/garage/tables/autoload_all.json.jbuilder +0 -0
  104. data/app/views/json_ui/garage/tables/export_import.json.jbuilder +0 -0
  105. data/app/views/json_ui/garage/tables/horizontal_scroll.json.jbuilder +0 -0
  106. data/app/views/json_ui/garage/tables/index.json.jbuilder +0 -0
  107. data/app/views/json_ui/garage/tables/layout.json.jbuilder +0 -0
  108. data/app/views/json_ui/garage/views/_chart_data.json.jbuilder +1 -1
  109. data/app/views/json_ui/garage/views/banners.json.jbuilder +0 -0
  110. data/app/views/json_ui/garage/views/calendar_data.json.jbuilder +23 -27
  111. data/app/views/json_ui/garage/views/carousels.json.jbuilder +0 -0
  112. data/app/views/json_ui/garage/views/charts.json.jbuilder +0 -0
  113. data/app/views/json_ui/garage/views/images.json.jbuilder +0 -0
  114. data/app/views/json_ui/garage/views/index.json.jbuilder +0 -0
  115. data/app/views/json_ui/garage/views/links.json.jbuilder +0 -0
  116. data/app/views/json_ui/garage/views/map_data.json.jbuilder +0 -0
  117. data/app/views/json_ui/garage/views/misc.json.jbuilder +0 -0
  118. data/app/views/json_ui/garage/views/texts.json.jbuilder +0 -0
  119. data/config/routes.rb +0 -0
  120. data/lib/generators/glib/install_generator.rb +0 -0
  121. data/lib/generators/templates/20191017062519_create_texts.rb +0 -0
  122. data/lib/generators/templates/20191024063257_add_scope_to_texts.rb +0 -0
  123. data/lib/generators/templates/20191112095018_add_lang_to_texts.rb +0 -0
  124. data/lib/generators/templates/20191126071051_create_active_storage_tables.active_storage.rb +0 -0
  125. data/lib/generators/templates/database.yml +0 -0
  126. data/lib/generators/templates/dynamic_text.rb +0 -0
  127. data/lib/glib-web.rb +0 -0
  128. data/lib/glib/crypt.rb +1 -1
  129. data/lib/glib/crypt/utils.rb +0 -0
  130. data/lib/glib/dynamic_text.rb +1 -1
  131. data/lib/glib/dynamic_text/config.rb +0 -0
  132. data/lib/glib/engine.rb +0 -0
  133. data/lib/glib/json_crawler.rb +0 -0
  134. data/lib/glib/json_crawler/action_crawler.rb +0 -0
  135. data/lib/glib/json_crawler/action_crawlers/action_http.rb +0 -0
  136. data/lib/glib/json_crawler/action_crawlers/forms_submit.rb +0 -0
  137. data/lib/glib/json_crawler/action_crawlers/nav_initiate.rb +0 -0
  138. data/lib/glib/json_crawler/action_crawlers/windows_open.rb +0 -0
  139. data/lib/glib/json_crawler/coverage.rb +0 -0
  140. data/lib/glib/json_crawler/http.rb +4 -2
  141. data/lib/glib/json_crawler/router.rb +0 -0
  142. data/lib/glib/test_helpers.rb +0 -0
  143. data/lib/glib/value.rb +0 -0
  144. data/lib/glib/version.rb +0 -0
  145. data/lib/tasks/db.rake +0 -0
  146. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA256:
3
- metadata.gz: 8472590ad38171de55b2e30bd3f37cceb15987354bc55ec7a1f892bd597d349f
4
- data.tar.gz: eb88de5c1b0e2a85f51e70270735245f96af992085a7749f4afe54ee7a98377c
2
+ SHA1:
3
+ metadata.gz: c258b37bbad81871f329c41e5b854b5b6563fb4f
4
+ data.tar.gz: 3e8d5f94006a46084869252b667d0c9e405de569
5
5
  SHA512:
6
- metadata.gz: 46f2e0c0c52abf0c9f6e48fd8b9a42183108494c76b6849300482a97449acadb17ccb3603727641871478ed09f3b4192cd676d7e69a85f6f0bae76456108f136
7
- data.tar.gz: 2777afc7ab675a44a67824514bef69d1afada4b4fd608136f485e6333cd5e464c9bceae3a50582a3611f0753ae5df31d85457c25f316fb2ad184ce7f7469aa2f
6
+ metadata.gz: bece2c2bae109009e5b468e9e43cd52591b5c367977a8fec1b623e27876efd28d25a1432bde847943eb310fe62bef9f4e3b1b38ea93924f2767cb9e1a42c4477
7
+ data.tar.gz: 756e23d1771b4f1dae8eebe2d4d0f0c4f5397fc8762baac96c2c5bfe7ffc73a6fcab6cad2575d8aae760d84570edffeb456231d70a815918c234a8e5153895bf
@@ -1,6 +1,6 @@
1
1
  module Glib
2
2
  class HomeController < ApplicationController
3
- if glib_auth_inited?
3
+ if try(:glib_auth_inited?)
4
4
  skip_before_action :glib_load_resource
5
5
  skip_before_action :glib_authorize_resource
6
6
  end
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -79,20 +79,26 @@ section.rows builder: ->(template) do
79
79
  end
80
80
 
81
81
  template.thumbnail title: 'dialogs/oauth', onClick: ->(action) do
82
- provider = {
83
- name: "facebook",
84
- webRequestUrl: user_facebook_omniauth_authorize_url(format: nil, _render: nil),
85
- requestUrl: user_facebook_omniauth_authorize_url(format: nil),
86
- clientId: Devise.omniauth_configs[:facebook].strategy[:client_id],
87
- permissions: Devise.omniauth_configs[:facebook].strategy[:scope],
88
- redirectUrl: user_facebook_omniauth_callback_url(format: nil)
89
- }
90
-
91
- action.dialogs_oauth provider: provider, providerParamName: "session[oauth_provider]", callbackUrlParamName: "session[[oauth_callback_url]", onSuccess: ->(action) do
92
- action.http_post url: json_ui_garage_url(path: 'actions/dialogs_oauth_post'), formData: {
93
- authenticity_token: form_authenticity_token
82
+ if respond_to?(:user_facebook_omniauth_authorize_url)
83
+ provider = {
84
+ name: 'facebook',
85
+ webRequestUrl: user_facebook_omniauth_authorize_url(format: nil, _render: nil),
86
+ requestUrl: user_facebook_omniauth_authorize_url(format: nil),
87
+ clientId: Devise.omniauth_configs[:facebook].strategy[:client_id],
88
+ permissions: Devise.omniauth_configs[:facebook].strategy[:scope],
89
+ redirectUrl: user_facebook_omniauth_callback_url(format: nil)
94
90
  }
91
+ action.dialogs_oauth provider: provider, providerParamName: 'session[oauth_provider]', callbackUrlParamName: 'session[[oauth_callback_url]', onSuccess: ->(subaction) do
92
+ subaction.http_post url: json_ui_garage_url(path: 'actions/dialogs_oauth_post'), formData: {
93
+ authenticity_token: form_authenticity_token
94
+ }
95
+ end
96
+ else
97
+ action.dialogs_alert message: 'To enable this, set up omniauth using devise'
98
+ # E.g.
99
+ # Add `devise :omniauthable, omniauth_providers: %i[facebook]` to user.rb
100
+ # Add `gem 'omniauth-facebook'` to Gemfile
101
+ # Add `config.omniauth :facebook` to devise.rb
95
102
  end
96
103
  end
97
-
98
- end
104
+ end
@@ -1,10 +1,20 @@
1
- json.rows do
1
+
2
+ # json.rows do
3
+ # batch_count = 30
4
+ # batch_count.times do |i|
5
+ # index = page * batch_count + i
6
+ # json.child! do
7
+ # json.template 'thumbnail'
8
+ # json.title "Item #{index}"
9
+ # end
10
+ # end
11
+ # end
12
+
13
+ section = json_ui_section json
14
+ section.rows builder: ->(row) do
2
15
  batch_count = 30
3
16
  batch_count.times do |i|
4
17
  index = page * batch_count + i
5
- json.child! do
6
- json.template 'thumbnail'
7
- json.title "Item #{index}"
8
- end
18
+ row.thumbnail title: "Item #{index}"
9
19
  end
10
20
  end
@@ -1,23 +1,5 @@
1
1
  json.title 'Notifications'
2
2
 
3
- # json.ws({
4
- # "socket" => {
5
- # "endpoint" => "/socket/websocket",
6
- # "params" => {
7
- # "vsn": "2.0.0"
8
- # }
9
- # },
10
- # # "topic" => "room:30",
11
- # # "event" => "comments_updated",
12
- # "topic" => "links",
13
- # "event" => "new_link_added",
14
- # "header" => {
15
- # "user_id" => 2,
16
- # "prev_item_id" => nil,
17
- # "last_item_id" => nil
18
- # }
19
- # })
20
-
21
3
  page = json_ui_page json
22
4
  render "#{@path_prefix}/nav_menu", json: json, page: page, top_nav: true
23
5
 
@@ -31,31 +13,6 @@ page.list firstSection: ->(section) do
31
13
 
32
14
  template.thumbnail title: 'WebSocket Real-time Update', onClick: ->(action) do
33
15
  action.windows_open url: json_ui_garage_url(path: 'notifications/web_socket')
34
- # dialogs_notification title: 'Hello World', message: 'This is a notification', onClick: ->(subaction) do
35
- # subaction.dialogs_alert message: 'Perform action'
36
- # end
37
16
  end
38
-
39
- # template.thumbnail title: 'Send WebSocket Notification', onClick: ->(action) do
40
- # json.action "ws/push"
41
- # json.topic "links"
42
- # json.event "new_link"
43
- # json.payload({
44
- # "club_id": "2",
45
- # "room_id": "30",
46
- # "user_id": "2"
47
- # # title: "TITLE",
48
- # # url: "URL"
49
- # })
50
-
51
- # # "topic": "room:30",
52
- # # "event": "create_comment",
53
- # # "payload": {
54
- # # "club_id": "2",
55
- # # "room_id": "30",
56
- # # "user_id": "2"
57
- # # }
58
-
59
- # end
60
17
  end
61
18
  end
@@ -14,4 +14,4 @@ if page_index < 3
14
14
  json.points (from.month.ago.to_date..to.month.ago.to_date).map { |d| { x: d, y: 100 + rand(40) } }
15
15
  end
16
16
  ]
17
- end
17
+ end
@@ -1,34 +1,30 @@
1
-
2
- json.events do
3
-
4
- json.child! do
5
- json.start '2018-12-14'
6
- json.end '2018-12-17'
7
- json.text 'Hackathon'
8
- json.onClick do
9
- json.action 'dialogs/alert-v1'
10
- json.message 'At Town Hall'
1
+ section = json_ui_section json
2
+ section.rows builder: ->(row) do
3
+ row.custom title: 'Hackathon',
4
+ extra: {
5
+ start: '2018-12-14',
6
+ end: '2018-12-17'
7
+ },
8
+ onClick: ->(action) do
9
+ action.dialogs_alert message: 'At Town Hall'
11
10
  end
12
- end
13
11
 
14
- json.child! do
15
- json.start '2018-12-30'
16
- json.end '2018-12-30'
17
- json.text 'Birthday'
18
- json.onClick do
19
- json.action 'dialogs/alert-v1'
20
- json.message 'At home'
12
+ row.custom title: 'Birthday',
13
+ extra: {
14
+ start: '2018-12-30',
15
+ end: '2018-12-30'
16
+ },
17
+ onClick: ->(action) do
18
+ action.dialogs_alert message: 'At home'
21
19
  end
22
- end
23
20
 
24
- json.child! do
25
- json.start '2018-12-31'
26
- json.end '2018-12-31'
27
- json.text 'Conference'
28
- json.onClick do
29
- json.action 'dialogs/alert-v1'
30
- json.message 'In Perth'
21
+ row.custom title: 'Conference',
22
+ extra: {
23
+ start: '2018-12-31',
24
+ end: '2019-01-02'
25
+ },
26
+ onClick: ->(action) do
27
+ action.dialogs_alert message: 'In Perth'
31
28
  end
32
- end
33
29
 
34
30
  end
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -1 +1 @@
1
- require_relative './crypt/utils'
1
+ require_relative './crypt/utils'
File without changes
@@ -1 +1 @@
1
- require_relative './dynamic_text/config'
1
+ require_relative './dynamic_text/config'
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -58,7 +58,9 @@ module Glib
58
58
  history << url
59
59
  end
60
60
 
61
- @context.assert_match(URI_REGEXP, url)
61
+ if !URI_REGEXP.match(url)
62
+ raise "Invalid URL: `#{url}`. Make sure to use the absolute URL."
63
+ end
62
64
 
63
65
  http_header = {
64
66
  'Client-DeviceOS' => user[:device],
@@ -76,7 +78,7 @@ module Glib
76
78
  @context.send(method, url, params: params, headers: http_header)
77
79
  raw_response = @context.response
78
80
  response = Response.new(raw_response.code.to_i, raw_response.headers, raw_response.media_type, raw_response.body)
79
-
81
+
80
82
  if (controller = @context.controller)
81
83
  Glib::JsonCrawler::Coverage.coverage_files.add(controller.class.instance_method(controller.action_name).source_location.first)
82
84
  end
File without changes
File without changes
File without changes
File without changes
File without changes
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: glib-web
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.3
4
+ version: 0.5.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - ''
@@ -236,7 +236,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
236
236
  version: '0'
237
237
  requirements: []
238
238
  rubyforge_project:
239
- rubygems_version: 2.7.6
239
+ rubygems_version: 2.6.8
240
240
  signing_key:
241
241
  specification_version: 4
242
242
  summary: ''