motor-admin-cstham8 0.4.35

Sign up to get free protection for your applications and to get access to all the features.
Files changed (167) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +661 -0
  3. data/README.md +230 -0
  4. data/Rakefile +11 -0
  5. data/app/channels/motor/application_cable/channel.rb +14 -0
  6. data/app/channels/motor/application_cable/connection.rb +27 -0
  7. data/app/channels/motor/notes_channel.rb +9 -0
  8. data/app/channels/motor/notifications_channel.rb +9 -0
  9. data/app/controllers/concerns/motor/current_ability.rb +21 -0
  10. data/app/controllers/concerns/motor/current_user_method.rb +18 -0
  11. data/app/controllers/concerns/motor/load_and_authorize_dynamic_resource.rb +73 -0
  12. data/app/controllers/concerns/motor/wrap_io_params.rb +25 -0
  13. data/app/controllers/motor/active_storage_attachments_controller.rb +64 -0
  14. data/app/controllers/motor/alerts_controller.rb +82 -0
  15. data/app/controllers/motor/api_base_controller.rb +33 -0
  16. data/app/controllers/motor/api_configs_controller.rb +54 -0
  17. data/app/controllers/motor/application_controller.rb +8 -0
  18. data/app/controllers/motor/assets_controller.rb +43 -0
  19. data/app/controllers/motor/audits_controller.rb +16 -0
  20. data/app/controllers/motor/auth_tokens_controller.rb +36 -0
  21. data/app/controllers/motor/configs_controller.rb +33 -0
  22. data/app/controllers/motor/dashboards_controller.rb +64 -0
  23. data/app/controllers/motor/data_controller.rb +88 -0
  24. data/app/controllers/motor/forms_controller.rb +61 -0
  25. data/app/controllers/motor/icons_controller.rb +22 -0
  26. data/app/controllers/motor/note_tags_controller.rb +13 -0
  27. data/app/controllers/motor/notes_controller.rb +58 -0
  28. data/app/controllers/motor/notifications_controller.rb +33 -0
  29. data/app/controllers/motor/queries_controller.rb +64 -0
  30. data/app/controllers/motor/reminders_controller.rb +38 -0
  31. data/app/controllers/motor/resource_default_queries_controller.rb +23 -0
  32. data/app/controllers/motor/resource_methods_controller.rb +23 -0
  33. data/app/controllers/motor/resources_controller.rb +26 -0
  34. data/app/controllers/motor/run_api_requests_controller.rb +56 -0
  35. data/app/controllers/motor/run_graphql_requests_controller.rb +48 -0
  36. data/app/controllers/motor/run_queries_controller.rb +77 -0
  37. data/app/controllers/motor/schema_controller.rb +31 -0
  38. data/app/controllers/motor/send_alerts_controller.rb +26 -0
  39. data/app/controllers/motor/sessions_controller.rb +23 -0
  40. data/app/controllers/motor/slack_conversations_controller.rb +11 -0
  41. data/app/controllers/motor/tags_controller.rb +11 -0
  42. data/app/controllers/motor/ui_controller.rb +51 -0
  43. data/app/controllers/motor/users_for_autocomplete_controller.rb +23 -0
  44. data/app/jobs/motor/alert_sending_job.rb +13 -0
  45. data/app/jobs/motor/application_job.rb +6 -0
  46. data/app/jobs/motor/notify_note_mentions_job.rb +9 -0
  47. data/app/jobs/motor/notify_reminder_job.rb +9 -0
  48. data/app/mailers/motor/alerts_mailer.rb +39 -0
  49. data/app/mailers/motor/application_mailer.rb +33 -0
  50. data/app/mailers/motor/notifications_mailer.rb +33 -0
  51. data/app/models/motor/alert.rb +30 -0
  52. data/app/models/motor/alert_lock.rb +7 -0
  53. data/app/models/motor/api_config.rb +28 -0
  54. data/app/models/motor/application_record.rb +18 -0
  55. data/app/models/motor/audit.rb +13 -0
  56. data/app/models/motor/config.rb +13 -0
  57. data/app/models/motor/dashboard.rb +26 -0
  58. data/app/models/motor/form.rb +23 -0
  59. data/app/models/motor/note.rb +18 -0
  60. data/app/models/motor/note_tag.rb +7 -0
  61. data/app/models/motor/note_tag_tag.rb +8 -0
  62. data/app/models/motor/notification.rb +14 -0
  63. data/app/models/motor/query.rb +33 -0
  64. data/app/models/motor/reminder.rb +13 -0
  65. data/app/models/motor/resource.rb +15 -0
  66. data/app/models/motor/tag.rb +7 -0
  67. data/app/models/motor/taggable_tag.rb +8 -0
  68. data/app/views/layouts/motor/application.html.erb +17 -0
  69. data/app/views/layouts/motor/mailer.html.erb +72 -0
  70. data/app/views/motor/alerts_mailer/alert_email.html.erb +54 -0
  71. data/app/views/motor/notifications_mailer/notify_mention_email.html.erb +28 -0
  72. data/app/views/motor/notifications_mailer/notify_reminder_email.html.erb +28 -0
  73. data/app/views/motor/ui/show.html.erb +1 -0
  74. data/config/locales/el.yml +420 -0
  75. data/config/locales/en.yml +340 -0
  76. data/config/locales/es.yml +420 -0
  77. data/config/locales/ja.yml +340 -0
  78. data/config/locales/pt.yml +416 -0
  79. data/config/routes.rb +65 -0
  80. data/lib/generators/motor/install_generator.rb +24 -0
  81. data/lib/generators/motor/install_notes_generator.rb +22 -0
  82. data/lib/generators/motor/migration.rb +17 -0
  83. data/lib/generators/motor/templates/install.rb +271 -0
  84. data/lib/generators/motor/templates/install_api_configs.rb +86 -0
  85. data/lib/generators/motor/templates/install_notes.rb +83 -0
  86. data/lib/generators/motor/templates/upgrade_motor_api_actions.rb +71 -0
  87. data/lib/generators/motor/upgrade_generator.rb +43 -0
  88. data/lib/motor/active_record_utils/action_text_attribute_patch.rb +19 -0
  89. data/lib/motor/active_record_utils/active_record_connection_column_patch.rb +14 -0
  90. data/lib/motor/active_record_utils/active_record_filter.rb +405 -0
  91. data/lib/motor/active_record_utils/active_storage_blob_patch.rb +30 -0
  92. data/lib/motor/active_record_utils/active_storage_links_extension.rb +11 -0
  93. data/lib/motor/active_record_utils/defined_scopes_extension.rb +25 -0
  94. data/lib/motor/active_record_utils/fetch_methods.rb +24 -0
  95. data/lib/motor/active_record_utils/types.rb +64 -0
  96. data/lib/motor/active_record_utils.rb +45 -0
  97. data/lib/motor/admin.rb +141 -0
  98. data/lib/motor/alerts/persistance.rb +97 -0
  99. data/lib/motor/alerts/scheduled_alerts_cache.rb +29 -0
  100. data/lib/motor/alerts/scheduler.rb +30 -0
  101. data/lib/motor/alerts/slack_sender.rb +74 -0
  102. data/lib/motor/alerts.rb +52 -0
  103. data/lib/motor/api_configs.rb +41 -0
  104. data/lib/motor/api_query/apply_scope.rb +44 -0
  105. data/lib/motor/api_query/build_json.rb +171 -0
  106. data/lib/motor/api_query/build_meta.rb +20 -0
  107. data/lib/motor/api_query/filter.rb +125 -0
  108. data/lib/motor/api_query/paginate.rb +19 -0
  109. data/lib/motor/api_query/search.rb +60 -0
  110. data/lib/motor/api_query/sort.rb +64 -0
  111. data/lib/motor/api_query.rb +24 -0
  112. data/lib/motor/assets.rb +62 -0
  113. data/lib/motor/build_schema/active_storage_attachment_schema.rb +125 -0
  114. data/lib/motor/build_schema/adjust_devise_model_schema.rb +60 -0
  115. data/lib/motor/build_schema/apply_permissions.rb +64 -0
  116. data/lib/motor/build_schema/defaults.rb +66 -0
  117. data/lib/motor/build_schema/find_display_column.rb +65 -0
  118. data/lib/motor/build_schema/find_icon.rb +135 -0
  119. data/lib/motor/build_schema/find_searchable_columns.rb +33 -0
  120. data/lib/motor/build_schema/load_from_rails.rb +361 -0
  121. data/lib/motor/build_schema/merge_schema_configs.rb +157 -0
  122. data/lib/motor/build_schema/reorder_schema.rb +88 -0
  123. data/lib/motor/build_schema/utils.rb +31 -0
  124. data/lib/motor/build_schema.rb +125 -0
  125. data/lib/motor/cancan_utils/ability_patch.rb +31 -0
  126. data/lib/motor/cancan_utils/can_manage_all.rb +14 -0
  127. data/lib/motor/cancan_utils.rb +9 -0
  128. data/lib/motor/configs/build_configs_hash.rb +90 -0
  129. data/lib/motor/configs/build_ui_app_tag.rb +177 -0
  130. data/lib/motor/configs/load_from_cache.rb +110 -0
  131. data/lib/motor/configs/sync_from_file.rb +35 -0
  132. data/lib/motor/configs/sync_from_hash.rb +159 -0
  133. data/lib/motor/configs/sync_middleware.rb +72 -0
  134. data/lib/motor/configs/sync_with_remote.rb +47 -0
  135. data/lib/motor/configs/write_to_file.rb +36 -0
  136. data/lib/motor/configs.rb +39 -0
  137. data/lib/motor/dashboards/persistance.rb +73 -0
  138. data/lib/motor/dashboards.rb +8 -0
  139. data/lib/motor/forms/persistance.rb +93 -0
  140. data/lib/motor/forms.rb +8 -0
  141. data/lib/motor/hash_serializer.rb +21 -0
  142. data/lib/motor/net_http_utils.rb +50 -0
  143. data/lib/motor/notes/notify_mentions.rb +71 -0
  144. data/lib/motor/notes/notify_reminder.rb +48 -0
  145. data/lib/motor/notes/persist.rb +36 -0
  146. data/lib/motor/notes/reminders_scheduler.rb +39 -0
  147. data/lib/motor/notes/tags.rb +34 -0
  148. data/lib/motor/notes.rb +12 -0
  149. data/lib/motor/queries/persistance.rb +90 -0
  150. data/lib/motor/queries/postgresql_exec_query.rb +28 -0
  151. data/lib/motor/queries/render_sql_template.rb +61 -0
  152. data/lib/motor/queries/run_query.rb +289 -0
  153. data/lib/motor/queries.rb +11 -0
  154. data/lib/motor/railtie.rb +11 -0
  155. data/lib/motor/resources/custom_sql_columns_cache.rb +17 -0
  156. data/lib/motor/resources/fetch_configured_model.rb +269 -0
  157. data/lib/motor/resources/persist_configs.rb +232 -0
  158. data/lib/motor/resources.rb +19 -0
  159. data/lib/motor/slack/client.rb +62 -0
  160. data/lib/motor/slack.rb +16 -0
  161. data/lib/motor/tags.rb +32 -0
  162. data/lib/motor/tasks/motor.rake +54 -0
  163. data/lib/motor/version.rb +5 -0
  164. data/lib/motor-admin-cstham8.rb +3 -0
  165. data/lib/motor.rb +87 -0
  166. data/ui/dist/manifest.json +1990 -0
  167. metadata +303 -0
@@ -0,0 +1,340 @@
1
+ en:
2
+ motor:
3
+ action_has_been_applied: Action has been applied!
4
+ action_has_failed_with_code: Action failed with code
5
+ action_type: Action type
6
+ actions: Actions
7
+ add: Add
8
+ add_action: Add Action
9
+ add_alert: Add Alert
10
+ add_column: Add Column
11
+ add_dashboard: Add Dashboard
12
+ add_field: Add Field
13
+ add_filter: Add Filter
14
+ add_form: Add Form
15
+ add_group: Add Group
16
+ add_item: Add Item
17
+ add_link: Add Link
18
+ add_query: Add Query
19
+ add_scope: Add Scope
20
+ add_tab: Add Tab
21
+ adjust_form: Adjust form
22
+ adjust_fields: Adjust fields
23
+ alert_email_has_been_sent: Alert email has been sent!
24
+ alert_has_been_activated: Alert has been activated
25
+ alert_has_been_disabled: Alert has been disabled
26
+ alert_has_been_saved: Alert has been saved!
27
+ alert_name: Alert name
28
+ alerts: Alerts
29
+ all: All
30
+ all_resources: All Resources
31
+ and: And
32
+ api_path: API path
33
+ api_request: API request
34
+ apply: Apply
35
+ are_you_sure: Are you sure?
36
+ associations: Associations
37
+ bar_chart: Bar chart
38
+ base: Base
39
+ boolean: Boolean
40
+ build_custom_form: Build custom form
41
+ cancel: Cancel
42
+ cents: Cents
43
+ checkbox: Checkbox
44
+ clear_all: Clear All
45
+ clear_selection: Clear selection
46
+ close: Close
47
+ close_editor: Close editor
48
+ close_settings: Close Settings
49
+ close_variables: Close Variables
50
+ columns: Columns
51
+ contains: Contains
52
+ create: Create
53
+ currency: Currency
54
+ dashboard: Dashboard
55
+ dashboard_has_been_saved: Dashboard has been saved!
56
+ dashboard_title: Dashboard title
57
+ dashboards: Dashboards
58
+ date: Date
59
+ date_and_time: Date and Time
60
+ decimal: Decimal
61
+ default: Default
62
+ default_value: Default value
63
+ describe_this_alert_optional: Describe this alert (optional)
64
+ describe_your_dashboard_optional: Describe your dashboard (optional)
65
+ describe_your_form_optional: Describe your form (optional)
66
+ describe_your_query_optional: Describe your query (optional)
67
+ description: Description
68
+ deselect_all: Deselect All
69
+ details: Details
70
+ disable: Disable
71
+ display_as: Display as
72
+ edit: Edit
73
+ edit_sql: Edit SQL
74
+ edit_markdown: Edit Markdown
75
+ emails: Emails
76
+ ends_with: Ends with
77
+ equal_to: Equal to
78
+ every_day_at_hh_mm: every day at HH:mm PM...
79
+ excludes: excludes
80
+ field_is_not_a_number: '%{field} is not a number'
81
+ field_is_required: '%{field} is required'
82
+ field_list_cant_be_empty: "%{field} list can't be empty"
83
+ field_must_be_exactly_in_length: '%{field} must be exactly %{length} in length'
84
+ field_must_be_less_in_length: '%{field} must be less than %{length} in length'
85
+ field_must_be_more_in_length: '%{field} must be more than %{length} in length'
86
+ field_name: Field name
87
+ field_value_does_not_match_pattern: '%{field} value does not match %{pattern}'
88
+ file: File
89
+ filter: Filter
90
+ filters: Filters
91
+ form: Form
92
+ form_has_been_saved: Form has been saved!
93
+ form_has_been_submitted_successfully: Form has been submitted successfully!
94
+ form_name: Form name
95
+ forms: Forms
96
+ funnel: Funnel
97
+ greater_or_equal: Greater or equal
98
+ greater_than: Greater than
99
+ greater_than_or_equal_to: Greater than or equal to
100
+ group_name: Group name
101
+ has_been_created: has been created
102
+ has_been_removed_succesfully: has been removed succesfully
103
+ has_been_updated: has been updated
104
+ hello_admin: Hello Admin 👋
105
+ hidden: Hidden
106
+ image: Image
107
+ includes: Includes
108
+ input_type: Input type
109
+ integer: Integer
110
+ interval: Interval
111
+ is: Is
112
+ is_not: Is not
113
+ items_have_been_removed: items have been removed
114
+ items_will_be_removed: '%{count} items will be removed'
115
+ json: JSON
116
+ label: Currency
117
+ less_or_equal: Less or equal
118
+ less_than: Less than
119
+ less_than_or_equal_to: Less than or equal to
120
+ line_chart: Line chart
121
+ link_name: Link name
122
+ links: Links
123
+ load_initial_data: Load initial data
124
+ loading: Loading...
125
+ looks_like_you_are_new_here: Looks like you are new here 🙃
126
+ markdown: Markdown
127
+ method: Method
128
+ method_call: Method call
129
+ multiple: Multiple
130
+ name: Name
131
+ new_alert: New alert
132
+ new_dashboard: New dashboard
133
+ new_form: New form
134
+ new_query: New query
135
+ no_data: No data
136
+ not_found: Not Found
137
+ number: Number
138
+ ok: OK
139
+ options_separated_with_new_line_or_comma: Options separated with new line or comma
140
+ or: Or
141
+ other_than: Other than
142
+ param_name: Param name
143
+ password: Password
144
+ path: Path
145
+ percent: Percent
146
+ pie_chart: Pie chart
147
+ queries: Queries
148
+ query: Query
149
+ query_has_been_saved: Query has been saved!
150
+ query_name: Query name
151
+ query_not_selected: Query not selected
152
+ query_revisions: Query Revisions
153
+ read_only: Read-Only
154
+ read_write: Read-Write
155
+ reference: Reference
156
+ reference_resource: Reference resource
157
+ remove: Remove
158
+ reports: Reports
159
+ request_param: Request param
160
+ required: Required
161
+ resource_filters: '%{resource} Filters'
162
+ resource_settings: '%{resource} Settings'
163
+ resources: Resources
164
+ resubmit: Resubmit
165
+ revert: Revert
166
+ revision_has_been_applied: Revision has been applied
167
+ revisions: Revisions
168
+ richtext: Richtext
169
+ row_chart: Row chart
170
+ save: Save
171
+ save_and_create_new: Save and Create New
172
+ save_as_new: Save as new
173
+ save_dashboard: Save dashboard
174
+ save_form: Save form
175
+ save_query: Save query
176
+ scopes: Scopes
177
+ search: Search
178
+ search_placeholder: Search...
179
+ search_query: Search Query
180
+ select: Select
181
+ select_alert_tags: Select alert tags
182
+ select_dashboard: Select dashboard
183
+ select_dashboard_tags: Select dashboard tags
184
+ select_form: Select form
185
+ select_form_tags: Select dashform tags
186
+ select_options: Select options
187
+ select_placeholder: Select...
188
+ select_query: Select query
189
+ select_query_tags: Select query tags
190
+ select_resource_placeholder: Select resource...
191
+ selected_item_has_been_removed: Selected item has been removed
192
+ selected_item_will_be_removed: Selected item will be removed
193
+ selected_item_will_be_removed_are_you_sure: Selected item will be removed. Are you sure?
194
+ send_empty: Send empty?
195
+ send_now: Send Now
196
+ send_to: Send to
197
+ set_tags: Set tags
198
+ settings: Settings
199
+ should_be_a_valid_json: '%{field} should be a valid JSON'
200
+ should_be_error_constraint: '%{field} should be %{error} %{constraint}'
201
+ stacked_bars: Stacked bars
202
+ starts_with: Starts with
203
+ submit: Submit
204
+ tab_type: Tab type
205
+ table: Table
206
+ tabs: Tabs
207
+ tags: Tags
208
+ text: Text
209
+ textarea: Textarea
210
+ timezone: Timezone
211
+ title: Title
212
+ type: Type
213
+ unable_to_load_form_data: Unable to load form data
214
+ unable_to_remove_item: Unable to remove item
215
+ unable_to_remove_items: Unable to remove items
216
+ unable_to_send_email: Unable to send email
217
+ unable_to_submit_form: Unable to submit form
218
+ unit: Unit
219
+ value: Value
220
+ values_axis: Values axis
221
+ variables: Variables
222
+ visibility: Visibility
223
+ visualization: Visualization
224
+ write_only: Write-Only
225
+ long_text: Long text
226
+ percentage: Percentage
227
+ change: Change
228
+ chart: Chart
229
+ tag: Tag
230
+ link: Link
231
+ color: Color
232
+ link_text: Link text
233
+ copied_to_the_clipboard: Copied to the clipboard
234
+ queries_can_contain_variable_via_syntax_html: "Queries can contain embed variables using <code>{{variable}}</code> syntax:"
235
+ syntax_is_used_for_if_and_if_not_conditions_html: "<code>{{#variable}} ... {{/variable}}</code> and <code>{{^variable}} ... {{variable}}</code> syntax is used for <code>if</code> and <code>if not</code> conditions respectively:"
236
+ current_user_variables_are_always_passed_explicitly_and_can_he_used_html: "<code>{{current_user_id}}</code> and <code>{{current_user_email}}</code> variables are always passed explicitly, and can be used to decide which data should be displayed for certain user:"
237
+ create_new: Create New
238
+ conditional: Conditional
239
+ condition: Condition
240
+ field: Field
241
+ empty: Empty
242
+ not_empty: Not empty
243
+ general: General
244
+ run: Run
245
+ use_default: Use Default
246
+ query_editor: Query Editor
247
+ polymorphic: Polymorphic
248
+ foreign_key: Foreign key
249
+ primary_key: Primary key
250
+ through: Through
251
+ source: Source
252
+ resource: Resource
253
+ add_association: Add Association
254
+ there_are_unsaved_changes_from: "There are unsaved changes from %{timestamp}"
255
+ clear: Clear
256
+ restore: Restore
257
+ more: More
258
+ add_text: Add Text
259
+ edit_text: Edit Text
260
+ open_in_markdown_editor: Open in markdown editor
261
+ activate: Activate
262
+ load_existing_options_from_database: Load existing options from the database
263
+ add_database: Add Database
264
+ audio: Audio
265
+ video: Video
266
+ display_column: Display column
267
+ not_authorized_to_perform_action: You are not authorized to perform this action.
268
+ upload: Upload
269
+ there_is_nothing_here_yet: There is nothing here yet 🤷‍♂️
270
+ is_null: Is null
271
+ is_not_null: Is not null
272
+ split_tags_by: Split tags by
273
+ do_not_split: Do not split
274
+ semicolon: Semicolon
275
+ hyphen: Hyphen
276
+ comma: Comma
277
+ slash: Slash
278
+ searchable_columns: Searchable columns
279
+ validate: Validate
280
+ error_message: Error message
281
+ validation_regexp: Validation RegExp
282
+ regexp: RegExp
283
+ message: Message
284
+ should_be_a_valid_regexp: Should be a valid RegExp string
285
+ order_by: Order by
286
+ ascending: Ascending
287
+ descending: Descending
288
+ url: URL
289
+ expand: Expand
290
+ add_api: Add API
291
+ on_collection: On collection
292
+ association: Association
293
+ action_has_been_removed: This action has been removed
294
+ every_5_seconds: Every 5 seconds
295
+ every_30_seconds: Every 30 seconds
296
+ every_minute: Every minute
297
+ every_5_minutes: Every 5 minutes
298
+ do_not_refresh: Do not refresh
299
+ html: HTML
300
+ edit_html: Edit HTML
301
+ there_are_unsaved_changes_close_form: "There are unsaved changes. Close form?"
302
+ send_file_url: Send file URL
303
+ rating: Rating
304
+ total: Total
305
+ radar_chart: Radar chart
306
+ show_on_table: Show on table
307
+ map: Map
308
+ audits: Audits
309
+ nothing_to_show_here_yet: Nothing to show here yet 🤷
310
+ internal: Internal/Anonymous
311
+ updated: updated
312
+ created: created
313
+ deleted: deleted
314
+ sign_out: Sign out
315
+ header: Header
316
+ user_dropdown: User dropdown
317
+ add_condition: Add Condition
318
+ remove_condition: Remove Condition
319
+ unable_to_send_alert: Unable to send alert
320
+ send_via: Send via
321
+ download: Download
322
+ alert: Alert
323
+ downloading: Downloading
324
+ display_id: Display ID
325
+ display_settings: Display settings
326
+ sql: SQL
327
+ api: API
328
+ variable_name: Variable name
329
+ add_variable: Add variable
330
+ notes: Notes
331
+ new_mention_for: "New Mention for %{resource}"
332
+ user_mentioned_you_with_note: "%{user} mentioned you with:\n%{note}"
333
+ edit_note: Edit Note
334
+ create_reminder: Create Reminder
335
+ new_reminder_for: "New Reminder for %{resource}"
336
+ reminder_has_been_removed: Reminder has been removed
337
+ note_has_been_removed: Note has been removed
338
+ schedule_at: Schedule at
339
+ kanban_columns: Kanban columns
340
+ kanban_card_columns: Kanban card columns