smriti 0.5.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 +7 -0
- data/LICENSE +21 -0
- data/README.md +168 -0
- data/Rakefile +15 -0
- data/app/assets/images/smriti/android-chrome-192x192.png +0 -0
- data/app/assets/images/smriti/android-chrome-512x512.png +0 -0
- data/app/assets/images/smriti/apple-touch-icon.png +0 -0
- data/app/assets/images/smriti/favicon-16x16.png +0 -0
- data/app/assets/images/smriti/favicon-32x32.png +0 -0
- data/app/assets/images/smriti/favicon-48x48.png +0 -0
- data/app/assets/images/smriti/favicon.ico +0 -0
- data/app/assets/images/smriti/favicon.svg +18 -0
- data/app/assets/images/smriti/logo.svg +18 -0
- data/app/assets/images/smriti/mask-icon.svg +5 -0
- data/app/assets/stylesheets/smriti/application.css +1040 -0
- data/app/controllers/smriti/admin/application_controller.rb +135 -0
- data/app/controllers/smriti/admin/dashboard_controller.rb +32 -0
- data/app/controllers/smriti/admin/mat_view_definitions_controller.rb +372 -0
- data/app/controllers/smriti/admin/mat_view_runs_controller.rb +185 -0
- data/app/controllers/smriti/admin/preferences_controller.rb +91 -0
- data/app/helpers/smriti/admin/datatable_helper.rb +249 -0
- data/app/helpers/smriti/admin/localized_digit_helper.rb +70 -0
- data/app/helpers/smriti/admin/ui_helper.rb +539 -0
- data/app/javascript/smriti/application.js +8 -0
- data/app/javascript/smriti/controllers/application.js +10 -0
- data/app/javascript/smriti/controllers/body_setup_controller.js +120 -0
- data/app/javascript/smriti/controllers/datatable_controller.js +351 -0
- data/app/javascript/smriti/controllers/details_controller.js +200 -0
- data/app/javascript/smriti/controllers/drawer_controller.js +470 -0
- data/app/javascript/smriti/controllers/flash_controller.js +112 -0
- data/app/javascript/smriti/controllers/index.js +10 -0
- data/app/javascript/smriti/controllers/mv_confirm_controller.js +435 -0
- data/app/javascript/smriti/controllers/tabs_controller.js +184 -0
- data/app/javascript/smriti/controllers/tooltip_controller.js +525 -0
- data/app/javascript/smriti/controllers/turbo_frame_lifecycle_controller.js +342 -0
- data/app/jobs/smriti/application_job.rb +144 -0
- data/app/jobs/smriti/create_view_job.rb +87 -0
- data/app/jobs/smriti/delete_view_job.rb +89 -0
- data/app/jobs/smriti/refresh_view_job.rb +94 -0
- data/app/models/concerns/smriti_i18n.rb +139 -0
- data/app/models/concerns/smriti_paginate.rb +70 -0
- data/app/models/concerns/smriti_query_helper.rb +36 -0
- data/app/models/smriti/application_record.rb +39 -0
- data/app/models/smriti/mat_view_definition.rb +254 -0
- data/app/models/smriti/mat_view_run.rb +275 -0
- data/app/views/layouts/smriti/_footer.html.erb +47 -0
- data/app/views/layouts/smriti/_header.html.erb +25 -0
- data/app/views/layouts/smriti/admin.html.erb +47 -0
- data/app/views/layouts/smriti/turbo_frame.html.erb +3 -0
- data/app/views/smriti/admin/dashboard/index.html.erb +38 -0
- data/app/views/smriti/admin/mat_view_definitions/_definition_actions.html.erb +94 -0
- data/app/views/smriti/admin/mat_view_definitions/_dt-index-empty-row.html.erb +11 -0
- data/app/views/smriti/admin/mat_view_definitions/_dt-index-row.html.erb +27 -0
- data/app/views/smriti/admin/mat_view_definitions/empty.html.erb +1 -0
- data/app/views/smriti/admin/mat_view_definitions/form.html.erb +79 -0
- data/app/views/smriti/admin/mat_view_definitions/index.html.erb +10 -0
- data/app/views/smriti/admin/mat_view_definitions/show.html.erb +40 -0
- data/app/views/smriti/admin/mat_view_runs/_dt-index-empty-row.html.erb +11 -0
- data/app/views/smriti/admin/mat_view_runs/_dt-index-row.html.erb +41 -0
- data/app/views/smriti/admin/mat_view_runs/index.html.erb +1 -0
- data/app/views/smriti/admin/mat_view_runs/show.html.erb +64 -0
- data/app/views/smriti/admin/preferences/show.html.erb +49 -0
- data/app/views/smriti/admin/ui/_card.html.erb +15 -0
- data/app/views/smriti/admin/ui/_datatable.html.erb +34 -0
- data/app/views/smriti/admin/ui/_datatable_filters.html.erb +45 -0
- data/app/views/smriti/admin/ui/_datatable_tbody.html.erb +11 -0
- data/app/views/smriti/admin/ui/_datatable_tfoot.html.erb +70 -0
- data/app/views/smriti/admin/ui/_datatable_thead.html.erb +105 -0
- data/app/views/smriti/admin/ui/_details.html.erb +10 -0
- data/app/views/smriti/admin/ui/_flash.html.erb +6 -0
- data/app/views/smriti/admin/ui/_table.html.erb +8 -0
- data/config/importmap.rb +9 -0
- data/config/locales/ar.yml +223 -0
- data/config/locales/de.yml +230 -0
- data/config/locales/en-AU-ocker.yml +223 -0
- data/config/locales/en-AU.yml +202 -0
- data/config/locales/en-BORK.yml +225 -0
- data/config/locales/en-CA.yml +223 -0
- data/config/locales/en-GB.yml +223 -0
- data/config/locales/en-LOL.yml +219 -0
- data/config/locales/en-SCOT.yml +223 -0
- data/config/locales/en-SHAKESPEARE.yml +225 -0
- data/config/locales/en-US-pirate.yml +222 -0
- data/config/locales/en-US.yml +225 -0
- data/config/locales/en-YODA.yml +221 -0
- data/config/locales/en.yml +223 -0
- data/config/locales/es.yml +226 -0
- data/config/locales/fa.yml +223 -0
- data/config/locales/fr-CA.yml +227 -0
- data/config/locales/fr.yml +227 -0
- data/config/locales/he.yml +218 -0
- data/config/locales/hi.yml +223 -0
- data/config/locales/it.yml +225 -0
- data/config/locales/ja-JP.yml +215 -0
- data/config/locales/pt.yml +225 -0
- data/config/locales/ru.yml +228 -0
- data/config/locales/ur.yml +225 -0
- data/config/locales/zh-CN.yml +214 -0
- data/config/locales/zh-TW.yml +214 -0
- data/config/routes.rb +36 -0
- data/lib/ext/exception.rb +20 -0
- data/lib/generators/smriti/install/install_generator.rb +86 -0
- data/lib/generators/smriti/install/templates/create_mat_view_definitions.rb +29 -0
- data/lib/generators/smriti/install/templates/create_mat_view_runs.rb +32 -0
- data/lib/generators/smriti/install/templates/smriti_initializer.rb +23 -0
- data/lib/smriti/admin/auth_bridge.rb +93 -0
- data/lib/smriti/admin/default_auth.rb +62 -0
- data/lib/smriti/configuration.rb +58 -0
- data/lib/smriti/engine.rb +82 -0
- data/lib/smriti/helpers/ui_test_ids.rb +49 -0
- data/lib/smriti/jobs/adapter.rb +81 -0
- data/lib/smriti/service_response.rb +75 -0
- data/lib/smriti/services/base_service.rb +471 -0
- data/lib/smriti/services/check_matview_exists.rb +76 -0
- data/lib/smriti/services/concurrent_refresh.rb +94 -0
- data/lib/smriti/services/create_view.rb +173 -0
- data/lib/smriti/services/delete_view.rb +111 -0
- data/lib/smriti/services/regular_refresh.rb +90 -0
- data/lib/smriti/services/swap_refresh.rb +181 -0
- data/lib/smriti/version.rb +21 -0
- data/lib/smriti.rb +64 -0
- data/lib/tasks/helpers.rb +185 -0
- data/lib/tasks/smriti_tasks.rake +151 -0
- metadata +206 -0
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
---
|
|
2
|
+
en-SHAKESPEARE:
|
|
3
|
+
activerecord:
|
|
4
|
+
attributes:
|
|
5
|
+
smriti/mat_view_definition:
|
|
6
|
+
created_at: Wrought upon
|
|
7
|
+
dependencies: Allies entangled
|
|
8
|
+
last_run_at: Last did run
|
|
9
|
+
name: Moniker
|
|
10
|
+
refresh_strategy: Stratagem of renewal
|
|
11
|
+
schedule_cron: Chronicle (cron)
|
|
12
|
+
sql: SQL (SELECT ... anon)
|
|
13
|
+
unique_index_columns: Columns singular
|
|
14
|
+
updated_at: Renewed upon
|
|
15
|
+
smriti/mat_view_run:
|
|
16
|
+
created_at: Wrought upon
|
|
17
|
+
details: Particulars
|
|
18
|
+
duration_ms: Passage (ms)
|
|
19
|
+
error: Mishap
|
|
20
|
+
finished_at: Concluded upon
|
|
21
|
+
mat_view_definition: Definition
|
|
22
|
+
meta: Hidden lore
|
|
23
|
+
operation: Enterprise
|
|
24
|
+
row_count_after: Rows thereafter
|
|
25
|
+
row_count_before: Rows erewhile
|
|
26
|
+
rows_before_after: Rows (ere/after)
|
|
27
|
+
started_at: Commenced upon
|
|
28
|
+
status: Estate
|
|
29
|
+
updated_at: Renewed upon
|
|
30
|
+
enums:
|
|
31
|
+
smriti/mat_view_definition:
|
|
32
|
+
refresh_strategy:
|
|
33
|
+
concurrent: All at once
|
|
34
|
+
regular: Customary
|
|
35
|
+
swap: Exchange
|
|
36
|
+
smriti/mat_view_run:
|
|
37
|
+
operation:
|
|
38
|
+
create: Conjure
|
|
39
|
+
drop: Unmake
|
|
40
|
+
refresh: Renew
|
|
41
|
+
status:
|
|
42
|
+
failed: Laid low
|
|
43
|
+
running: In motion
|
|
44
|
+
success: Triumphant
|
|
45
|
+
errors:
|
|
46
|
+
models:
|
|
47
|
+
smriti/mat_view_definition:
|
|
48
|
+
attributes:
|
|
49
|
+
name:
|
|
50
|
+
blank: must needs be bestowed
|
|
51
|
+
invalid: befits not a noble PostgreSQL sign
|
|
52
|
+
taken: must stand alone
|
|
53
|
+
sql:
|
|
54
|
+
blank: must needs be bestowed
|
|
55
|
+
invalid: must dawn with SELECT
|
|
56
|
+
unique_index_columns:
|
|
57
|
+
at_least_one: requireth at least one column when the concurrent stratagem
|
|
58
|
+
is invoked
|
|
59
|
+
hints:
|
|
60
|
+
smriti/mat_view_definition:
|
|
61
|
+
dependencies: A roll of tables or views, in commas bound, upon which this
|
|
62
|
+
materialised vision leaneth.
|
|
63
|
+
name: The title this materialised view doth bear within the ledger.
|
|
64
|
+
refresh_strategy: Declares how this materialised view seeketh fresh life.
|
|
65
|
+
schedule_cron: Employ the common cron script. Leave void for none.
|
|
66
|
+
sql: Thy SQL oration must be a rightful SELECT proclamation.
|
|
67
|
+
unique_index_columns: Columns that shall don a singular index. Needed for
|
|
68
|
+
concurrent renewal.
|
|
69
|
+
smriti/mat_view_run:
|
|
70
|
+
error: A missive of misfortune if the run be stricken.
|
|
71
|
+
meta: Further chronicles in the tongue of JSON.
|
|
72
|
+
operation: What noble deed was wrought.
|
|
73
|
+
status: The present estate of the run.
|
|
74
|
+
models:
|
|
75
|
+
smriti/mat_view_definition: Materialised View Definition
|
|
76
|
+
smriti/mat_view_run: Materialised View Run
|
|
77
|
+
placeholders:
|
|
78
|
+
smriti/mat_view_definition:
|
|
79
|
+
dependencies: Inscribe allies (comma separated, optional)
|
|
80
|
+
name: Bestow a moniker
|
|
81
|
+
refresh_strategy: Choose thy stratagem
|
|
82
|
+
schedule_cron: 0 0 * * * for nightly stroke of twelve, leave void for none
|
|
83
|
+
sql: Inscribe SQL (SELECT ... anon)
|
|
84
|
+
unique_index_columns: Inscribe columns singular (comma separated, optional)
|
|
85
|
+
smriti/mat_view_run:
|
|
86
|
+
error: Mishap text
|
|
87
|
+
mat_view_definition: Select the materialised vision
|
|
88
|
+
meta: Hidden lore (JSON)
|
|
89
|
+
operation: Name the enterprise
|
|
90
|
+
status: Name the estate
|
|
91
|
+
i18n:
|
|
92
|
+
name: English (Shakespearean)
|
|
93
|
+
smriti:
|
|
94
|
+
actions: Acts
|
|
95
|
+
cancel: Stay thy hand
|
|
96
|
+
close: Close
|
|
97
|
+
close_window: Bar the window
|
|
98
|
+
create: Conjure
|
|
99
|
+
dashboard:
|
|
100
|
+
metrics:
|
|
101
|
+
title: Measures
|
|
102
|
+
title: Grand tableau
|
|
103
|
+
datatable:
|
|
104
|
+
clear_search_aria_label: Banish thy search
|
|
105
|
+
search_aria_label: Seek within the table
|
|
106
|
+
search_placeholder: Pray, search...
|
|
107
|
+
definition: Definition
|
|
108
|
+
definitions: Definitions
|
|
109
|
+
delete: Cast away
|
|
110
|
+
details: Particulars
|
|
111
|
+
edit: Revise
|
|
112
|
+
edit_var: Revise %{name}
|
|
113
|
+
errors:
|
|
114
|
+
frame_only: This deed may only in a frame be done; thou art returned unto the
|
|
115
|
+
dashboard.
|
|
116
|
+
prevented_saving:
|
|
117
|
+
few: "%{count} missteps stayed the saving:"
|
|
118
|
+
many: "%{count} missteps stayed the saving:"
|
|
119
|
+
one: 'One misstep stayed the saving:'
|
|
120
|
+
other: "%{count} missteps stayed the saving:"
|
|
121
|
+
two: 'Two missteps stayed the saving:'
|
|
122
|
+
zero: No missteps, all is well!
|
|
123
|
+
filter_by: 'Filter by:'
|
|
124
|
+
footer:
|
|
125
|
+
copyright: "© %{year} %{company} All rights reserved."
|
|
126
|
+
documentation: Chronicles
|
|
127
|
+
need_help: Seek'st thou steadfast uptime and sage counsel?
|
|
128
|
+
open_issue: Raise an Issue
|
|
129
|
+
project_homepage: Project hall
|
|
130
|
+
support: Procure Noble Support →
|
|
131
|
+
tagline: Forged with ❤️ by artisans of code, for their kin.
|
|
132
|
+
tooltip:
|
|
133
|
+
documentation: Peruse the chronicles
|
|
134
|
+
gem_version: Journey to RubyGems
|
|
135
|
+
open_issue: Report a blight or petition a feature
|
|
136
|
+
project_homepage: GitHub stronghold
|
|
137
|
+
support: Councils of professional aid
|
|
138
|
+
version: v%{version}
|
|
139
|
+
header:
|
|
140
|
+
signed_in_as: Thou art signed as %{email}
|
|
141
|
+
history: Annals
|
|
142
|
+
loading: In the making...
|
|
143
|
+
loading_definitions: Summoning definitions...
|
|
144
|
+
loading_runs: Summoning runs...
|
|
145
|
+
mat_view_definition:
|
|
146
|
+
create_mv: Conjure Smriti
|
|
147
|
+
create_mv_tooltip: Summons the materialised view within the storehouse.
|
|
148
|
+
delete_confirm: Wilt thou unmake %{name}'s definition? (Smriti abideth)
|
|
149
|
+
delete_tooltip: Strikes the definition, yet the materialised view endureth within
|
|
150
|
+
the storehouse.
|
|
151
|
+
drop_mv: Unmake Smriti
|
|
152
|
+
drop_mv_cascade: Unmake Smriti (Cascade)
|
|
153
|
+
drop_mv_cascade_confirm: Unmake the materialised view and each dependant soul
|
|
154
|
+
of %{name}?
|
|
155
|
+
drop_mv_cascade_tooltip: Unmakes the materialised view and its kin within the
|
|
156
|
+
storehouse. The definition abides.
|
|
157
|
+
drop_mv_confirm: Unmake the materialised view for %{name}?
|
|
158
|
+
drop_mv_tooltip: Unmakes the materialised view within the storehouse. The definition
|
|
159
|
+
abides.
|
|
160
|
+
edit_tooltip: Revise the materialised view definition.
|
|
161
|
+
materialized_view: Materialised view
|
|
162
|
+
materialized_view_exists: The materialised view doth exist
|
|
163
|
+
materialized_view_not_exists: The materialised view is yet unborn!
|
|
164
|
+
new_definition: New definition
|
|
165
|
+
new_definition_tooltip: Forge a new materialised view definition.
|
|
166
|
+
no_definitions: No materialised view definitions were espied. Forge one to begin.
|
|
167
|
+
no_definitions_if_filtered: No materialised view definitions answered those
|
|
168
|
+
filters or quests.
|
|
169
|
+
refresh_tooltip: Renews the materialised view within the storehouse.
|
|
170
|
+
sql_summary_tooltip: Tap to unfurl or furl the SQL
|
|
171
|
+
view_tooltip: Behold the materialised view definition.
|
|
172
|
+
mat_view_run:
|
|
173
|
+
error_tooltip: Missive of mishap should the run fall asunder.
|
|
174
|
+
meta_tooltip: Further chronicles in JSON.
|
|
175
|
+
no_runs: No runs were witnessed.
|
|
176
|
+
no_runs_if_filtered: No runs met those filters' call.
|
|
177
|
+
view_details: Survey particulars
|
|
178
|
+
view_tooltip: Survey the run's particulars.
|
|
179
|
+
no_filter: Any (unfettered)
|
|
180
|
+
no_value: No value (nil or void)
|
|
181
|
+
per_page: Per page
|
|
182
|
+
project_author: CodeVedas Inc.
|
|
183
|
+
project_description: An admin stage to marshal PostgreSQL materialised views for
|
|
184
|
+
Rails works.
|
|
185
|
+
project_tags: rails, ruby, materialized views, admin, dashboard, ui, interface,
|
|
186
|
+
management
|
|
187
|
+
refresh: Renew
|
|
188
|
+
refresh_contents: Freshen contents
|
|
189
|
+
reloading: Reloading...
|
|
190
|
+
reset: Reset
|
|
191
|
+
run: Run
|
|
192
|
+
runs: Runs
|
|
193
|
+
save_changes: Commit thy changes
|
|
194
|
+
settings:
|
|
195
|
+
auto: Auto
|
|
196
|
+
dark: Dusky
|
|
197
|
+
language: Tongue
|
|
198
|
+
language_hint: Choose the tongue of thine interface.
|
|
199
|
+
light: Bright
|
|
200
|
+
theme: Theme
|
|
201
|
+
theme_hint: Auto heeds thy system; bright and dusky o'errule it.
|
|
202
|
+
title: Preferences
|
|
203
|
+
title: Smriti Stage
|
|
204
|
+
view_var: Observe %{name}
|
|
205
|
+
x_miliseconds: "%{count} ms"
|
|
206
|
+
number:
|
|
207
|
+
format:
|
|
208
|
+
delimiter: ","
|
|
209
|
+
separator: "."
|
|
210
|
+
numbers:
|
|
211
|
+
eight: 8
|
|
212
|
+
five: 5
|
|
213
|
+
four: 4
|
|
214
|
+
nine: 9
|
|
215
|
+
one: 1
|
|
216
|
+
seven: 7
|
|
217
|
+
six: 6
|
|
218
|
+
three: 3
|
|
219
|
+
two: 2
|
|
220
|
+
zero: 0
|
|
221
|
+
time:
|
|
222
|
+
am: Ante meridiem
|
|
223
|
+
formats:
|
|
224
|
+
datetime12hour: "%Y-%m-%d %I:%M:%S %p"
|
|
225
|
+
pm: Post meridiem
|
|
@@ -0,0 +1,222 @@
|
|
|
1
|
+
---
|
|
2
|
+
en-US-pirate:
|
|
3
|
+
activerecord:
|
|
4
|
+
attributes:
|
|
5
|
+
smriti/mat_view_definition:
|
|
6
|
+
created_at: Hoisted at
|
|
7
|
+
dependencies: Mateys relied upon
|
|
8
|
+
last_run_at: Last voyage
|
|
9
|
+
name: Moniker
|
|
10
|
+
refresh_strategy: Refresh riggin'
|
|
11
|
+
schedule_cron: Ship's bell (cron)
|
|
12
|
+
sql: SQL (SELECT ... arr!)
|
|
13
|
+
unique_index_columns: Singular mast columns
|
|
14
|
+
updated_at: Trimmed at
|
|
15
|
+
smriti/mat_view_run:
|
|
16
|
+
created_at: Hoisted at
|
|
17
|
+
details: Tale
|
|
18
|
+
duration_ms: Voyage span (ms)
|
|
19
|
+
error: Mutiny
|
|
20
|
+
finished_at: Made port
|
|
21
|
+
mat_view_definition: Definition
|
|
22
|
+
meta: Hidden booty
|
|
23
|
+
operation: Manoeuvre
|
|
24
|
+
row_count_after: Deckhands after
|
|
25
|
+
row_count_before: Deckhands afore
|
|
26
|
+
rows_before_after: Deckhands (afore/after)
|
|
27
|
+
started_at: Cast off
|
|
28
|
+
status: Status
|
|
29
|
+
updated_at: Trimmed at
|
|
30
|
+
enums:
|
|
31
|
+
smriti/mat_view_definition:
|
|
32
|
+
refresh_strategy:
|
|
33
|
+
concurrent: All hands
|
|
34
|
+
regular: Steady as she goes
|
|
35
|
+
swap: Rigging swap
|
|
36
|
+
smriti/mat_view_run:
|
|
37
|
+
operation:
|
|
38
|
+
create: Raise
|
|
39
|
+
drop: Scuttle
|
|
40
|
+
refresh: Swab
|
|
41
|
+
status:
|
|
42
|
+
failed: Sank
|
|
43
|
+
running: Underway
|
|
44
|
+
success: Made the haul
|
|
45
|
+
errors:
|
|
46
|
+
models:
|
|
47
|
+
smriti/mat_view_definition:
|
|
48
|
+
attributes:
|
|
49
|
+
name:
|
|
50
|
+
blank: needs a name fer the log
|
|
51
|
+
invalid: ain't a seaworthy PostgreSQL mark
|
|
52
|
+
taken: must fly alone
|
|
53
|
+
sql:
|
|
54
|
+
blank: needs charted words
|
|
55
|
+
invalid: must hoist the word SELECT first
|
|
56
|
+
unique_index_columns:
|
|
57
|
+
at_least_one: needs at least one mast when ye sail the concurrent refresh
|
|
58
|
+
hints:
|
|
59
|
+
smriti/mat_view_definition:
|
|
60
|
+
dependencies: Comma-linked roll o' tables or views this materialized vessel
|
|
61
|
+
leans upon.
|
|
62
|
+
name: What the materialized view be called in the hold.
|
|
63
|
+
refresh_strategy: How the materialized view be swabbed and renewed.
|
|
64
|
+
schedule_cron: Follow proper cron bells. Leave blank fer no watch.
|
|
65
|
+
sql: Yer SQL chant must be a true SELECT shanty.
|
|
66
|
+
unique_index_columns: Columns to bind fer a singular index. Needed fer all-hands
|
|
67
|
+
refresh.
|
|
68
|
+
smriti/mat_view_run:
|
|
69
|
+
error: Message in a bottle if the sailin' failed.
|
|
70
|
+
meta: Extra booty writ in JSON.
|
|
71
|
+
operation: What manoeuvre ye ordered.
|
|
72
|
+
status: Where the run be now.
|
|
73
|
+
models:
|
|
74
|
+
smriti/mat_view_definition: Materialized View Definition
|
|
75
|
+
smriti/mat_view_run: Materialized View Run
|
|
76
|
+
placeholders:
|
|
77
|
+
smriti/mat_view_definition:
|
|
78
|
+
dependencies: List mateys (comma separated, optional)
|
|
79
|
+
name: Mark a moniker
|
|
80
|
+
refresh_strategy: Choose the refresh riggin'
|
|
81
|
+
schedule_cron: 0 0 * * * fer midnight watch, leave blank fer no watch
|
|
82
|
+
sql: Pen SQL (SELECT ... arr!)
|
|
83
|
+
unique_index_columns: Mark singular mast columns (comma separated, optional)
|
|
84
|
+
smriti/mat_view_run:
|
|
85
|
+
error: Mutiny note
|
|
86
|
+
mat_view_definition: Choose the materialized vessel
|
|
87
|
+
meta: Hidden booty (JSON)
|
|
88
|
+
operation: Name the manoeuvre
|
|
89
|
+
status: Name the status
|
|
90
|
+
i18n:
|
|
91
|
+
name: English (Pirate)
|
|
92
|
+
smriti:
|
|
93
|
+
actions: Orders
|
|
94
|
+
cancel: Belay
|
|
95
|
+
close: Batten down
|
|
96
|
+
close_window: Batten window
|
|
97
|
+
create: Hoist anew
|
|
98
|
+
dashboard:
|
|
99
|
+
metrics:
|
|
100
|
+
title: Tally
|
|
101
|
+
title: Captain's deck
|
|
102
|
+
datatable:
|
|
103
|
+
clear_search_aria_label: Clear the spyglass
|
|
104
|
+
search_aria_label: Scan the ledger
|
|
105
|
+
search_placeholder: Scan fer...
|
|
106
|
+
definition: Definition
|
|
107
|
+
definitions: Definitions
|
|
108
|
+
delete: Scuttle
|
|
109
|
+
details: Details
|
|
110
|
+
edit: Refit
|
|
111
|
+
edit_var: Refit %{name}
|
|
112
|
+
errors:
|
|
113
|
+
frame_only: Ye can only pull this deed in a frame, so back to the captain's
|
|
114
|
+
deck with ye.
|
|
115
|
+
prevented_saving:
|
|
116
|
+
few: "%{count} mishaps blocked the stash:"
|
|
117
|
+
many: "%{count} mishaps blocked the stash:"
|
|
118
|
+
one: 'One mishap blocked the stash:'
|
|
119
|
+
other: "%{count} mishaps blocked the stash:"
|
|
120
|
+
two: 'Two mishaps blocked the stash:'
|
|
121
|
+
zero: No mishaps, fair winds!
|
|
122
|
+
filter_by: 'Sort by:'
|
|
123
|
+
footer:
|
|
124
|
+
copyright: "© %{year} %{company} All rights reserved."
|
|
125
|
+
documentation: Ship's log
|
|
126
|
+
need_help: Need steady tides & seasoned mates?
|
|
127
|
+
open_issue: Raise an Issue
|
|
128
|
+
project_homepage: Project berth
|
|
129
|
+
support: Secure Pro Support →
|
|
130
|
+
tagline: Forged with ❤️ by coders fer their crew.
|
|
131
|
+
tooltip:
|
|
132
|
+
documentation: Read the ship's log
|
|
133
|
+
gem_version: Sail to RubyGems
|
|
134
|
+
open_issue: Report mutiny or request new cannons
|
|
135
|
+
project_homepage: GitHub harbor
|
|
136
|
+
support: Professional support charts
|
|
137
|
+
version: v%{version}
|
|
138
|
+
header:
|
|
139
|
+
signed_in_as: Signed aboard as %{email}
|
|
140
|
+
history: Logbook
|
|
141
|
+
loading: Hoistin...
|
|
142
|
+
loading_definitions: Gatherin definitions...
|
|
143
|
+
loading_runs: Gatherin voyages...
|
|
144
|
+
mat_view_definition:
|
|
145
|
+
create_mv: Hoist Smriti
|
|
146
|
+
create_mv_tooltip: Brings the materialized vessel into the hold.
|
|
147
|
+
delete_confirm: Scuttle %{name}'s definition? (Smriti stays afloat)
|
|
148
|
+
delete_tooltip: Cuts the definition yet leaves the materialized vessel in the
|
|
149
|
+
hold.
|
|
150
|
+
drop_mv: Scuttle Smriti
|
|
151
|
+
drop_mv_cascade: Scuttle Smriti (Chainfire)
|
|
152
|
+
drop_mv_cascade_confirm: Scuttle the materialized vessel and all cling-ons fer
|
|
153
|
+
%{name}?
|
|
154
|
+
drop_mv_cascade_tooltip: Sends the materialized vessel and every hanger-on to
|
|
155
|
+
Davy Jones. Definition remains on deck.
|
|
156
|
+
drop_mv_confirm: Scuttle the materialized vessel fer %{name}?
|
|
157
|
+
drop_mv_tooltip: Sends the vessel from the hold. Definition stays abaft.
|
|
158
|
+
edit_tooltip: Refit the materialized vessel's definition.
|
|
159
|
+
materialized_view: Materialized vessel
|
|
160
|
+
materialized_view_exists: The vessel floats
|
|
161
|
+
materialized_view_not_exists: The vessel ain't built yet!
|
|
162
|
+
new_definition: New charter
|
|
163
|
+
new_definition_tooltip: Draft a fresh charter fer a materialized vessel.
|
|
164
|
+
no_definitions: No charters charted. Craft one an set sail.
|
|
165
|
+
no_definitions_if_filtered: No charters match them filters or searches.
|
|
166
|
+
refresh_tooltip: Swabs the materialized vessel within the hold.
|
|
167
|
+
sql_summary_tooltip: Click to unfurl/stow the SQL sails
|
|
168
|
+
view_tooltip: Inspect the vessel's charter.
|
|
169
|
+
mat_view_run:
|
|
170
|
+
error_tooltip: Mutiny note if the voyage failed.
|
|
171
|
+
meta_tooltip: Extra booty in JSON.
|
|
172
|
+
no_runs: No voyages logged.
|
|
173
|
+
no_runs_if_filtered: No voyages match them filters.
|
|
174
|
+
view_details: Inspect the tale
|
|
175
|
+
view_tooltip: Inspect the voyage's tale.
|
|
176
|
+
no_filter: Any (no filter)
|
|
177
|
+
no_value: No booty (nil or empty)
|
|
178
|
+
per_page: Per page
|
|
179
|
+
project_author: CodeVedas Inc.
|
|
180
|
+
project_description: Admin quarterdeck fer mindin PostgreSQL materialized views
|
|
181
|
+
in Rails crafts.
|
|
182
|
+
project_tags: rails, ruby, materialized views, admin, dashboard, ui, interface,
|
|
183
|
+
management
|
|
184
|
+
refresh: Swab
|
|
185
|
+
refresh_contents: Swab contents
|
|
186
|
+
reloading: Reloadin...
|
|
187
|
+
reset: Reset
|
|
188
|
+
run: Sail
|
|
189
|
+
runs: Voyages
|
|
190
|
+
save_changes: Stow changes
|
|
191
|
+
settings:
|
|
192
|
+
auto: Auto
|
|
193
|
+
dark: Dark
|
|
194
|
+
language: Tongue
|
|
195
|
+
language_hint: Choose the crew's tongue.
|
|
196
|
+
light: Light
|
|
197
|
+
theme: Theme
|
|
198
|
+
theme_hint: Auto heeds yer helm; light and dark overrule it.
|
|
199
|
+
title: Preferences
|
|
200
|
+
title: Smriti Quarterdeck
|
|
201
|
+
view_var: Survey %{name}
|
|
202
|
+
x_miliseconds: "%{count} ms"
|
|
203
|
+
number:
|
|
204
|
+
format:
|
|
205
|
+
delimiter: ","
|
|
206
|
+
separator: "."
|
|
207
|
+
numbers:
|
|
208
|
+
eight: 8
|
|
209
|
+
five: 5
|
|
210
|
+
four: 4
|
|
211
|
+
nine: 9
|
|
212
|
+
one: 1
|
|
213
|
+
seven: 7
|
|
214
|
+
six: 6
|
|
215
|
+
three: 3
|
|
216
|
+
two: 2
|
|
217
|
+
zero: 0
|
|
218
|
+
time:
|
|
219
|
+
am: Ship's morn
|
|
220
|
+
formats:
|
|
221
|
+
datetime12hour: "%Y-%m-%d %I:%M:%S %p"
|
|
222
|
+
pm: Ship's eve
|
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
---
|
|
2
|
+
en-US:
|
|
3
|
+
activerecord:
|
|
4
|
+
attributes:
|
|
5
|
+
smriti/mat_view_definition:
|
|
6
|
+
created_at: Created on
|
|
7
|
+
dependencies: Dependencies
|
|
8
|
+
last_run_at: Last run
|
|
9
|
+
name: Name
|
|
10
|
+
refresh_strategy: Refresh strategy
|
|
11
|
+
schedule_cron: Schedule (cron)
|
|
12
|
+
sql: SQL (SELECT ...)
|
|
13
|
+
unique_index_columns: Unique index columns
|
|
14
|
+
updated_at: Updated on
|
|
15
|
+
smriti/mat_view_run:
|
|
16
|
+
created_at: Created on
|
|
17
|
+
details: Details
|
|
18
|
+
duration_ms: Duration (ms)
|
|
19
|
+
error: Error
|
|
20
|
+
finished_at: Finished on
|
|
21
|
+
mat_view_definition: Definition
|
|
22
|
+
meta: Metadata
|
|
23
|
+
operation: Operation
|
|
24
|
+
row_count_after: Row count after
|
|
25
|
+
row_count_before: Row count before
|
|
26
|
+
rows_before_after: Rows (before/after)
|
|
27
|
+
started_at: Started on
|
|
28
|
+
status: Status
|
|
29
|
+
updated_at: Updated on
|
|
30
|
+
enums:
|
|
31
|
+
smriti/mat_view_definition:
|
|
32
|
+
refresh_strategy:
|
|
33
|
+
concurrent: Concurrent
|
|
34
|
+
regular: Regular
|
|
35
|
+
swap: Swap
|
|
36
|
+
smriti/mat_view_run:
|
|
37
|
+
operation:
|
|
38
|
+
create: Create
|
|
39
|
+
drop: Drop
|
|
40
|
+
refresh: Refresh
|
|
41
|
+
status:
|
|
42
|
+
failed: Failed
|
|
43
|
+
running: Running
|
|
44
|
+
success: Success
|
|
45
|
+
errors:
|
|
46
|
+
models:
|
|
47
|
+
smriti/mat_view_definition:
|
|
48
|
+
attributes:
|
|
49
|
+
name:
|
|
50
|
+
blank: must be provided
|
|
51
|
+
invalid: is not a valid PostgreSQL identifier
|
|
52
|
+
taken: must be unique
|
|
53
|
+
sql:
|
|
54
|
+
blank: must be provided
|
|
55
|
+
invalid: must start with SELECT
|
|
56
|
+
unique_index_columns:
|
|
57
|
+
at_least_one: must include at least one column when using the concurrent
|
|
58
|
+
refresh strategy
|
|
59
|
+
hints:
|
|
60
|
+
smriti/mat_view_definition:
|
|
61
|
+
dependencies: Comma-separated list of tables or views this materialized view
|
|
62
|
+
depends on.
|
|
63
|
+
name: Name of the materialized view in the database.
|
|
64
|
+
refresh_strategy: Determines how the materialized view is refreshed.
|
|
65
|
+
schedule_cron: Use standard cron format. Leave empty for no scheduling.
|
|
66
|
+
sql: The SQL query must be a valid SELECT statement.
|
|
67
|
+
unique_index_columns: Columns to create a unique index on. Required for concurrent
|
|
68
|
+
refresh.
|
|
69
|
+
smriti/mat_view_run:
|
|
70
|
+
error: Error message if the run failed.
|
|
71
|
+
meta: Additional metadata in JSON format.
|
|
72
|
+
operation: Type of operation performed.
|
|
73
|
+
status: Current status of the run.
|
|
74
|
+
models:
|
|
75
|
+
smriti/mat_view_definition: Materialized View Definition
|
|
76
|
+
smriti/mat_view_run: Materialized View Run
|
|
77
|
+
placeholders:
|
|
78
|
+
smriti/mat_view_definition:
|
|
79
|
+
dependencies: Enter dependencies (comma separated, optional)
|
|
80
|
+
name: Enter name
|
|
81
|
+
refresh_strategy: Select refresh strategy
|
|
82
|
+
schedule_cron: 0 0 * * * for daily at midnight, leave empty for no scheduling
|
|
83
|
+
sql: Enter SQL (SELECT ...)
|
|
84
|
+
unique_index_columns: Enter unique index columns (comma separated, optional)
|
|
85
|
+
smriti/mat_view_run:
|
|
86
|
+
error: Error message
|
|
87
|
+
mat_view_definition: Select materialized view
|
|
88
|
+
meta: Metadata (JSON)
|
|
89
|
+
operation: Select operation
|
|
90
|
+
status: Select status
|
|
91
|
+
i18n:
|
|
92
|
+
name: English (US)
|
|
93
|
+
smriti:
|
|
94
|
+
actions: Actions
|
|
95
|
+
cancel: Cancel
|
|
96
|
+
close: Close
|
|
97
|
+
close_window: Close window
|
|
98
|
+
create: Create
|
|
99
|
+
dashboard:
|
|
100
|
+
metrics:
|
|
101
|
+
title: Metrics
|
|
102
|
+
title: Dashboard
|
|
103
|
+
datatable:
|
|
104
|
+
clear_search_aria_label: Clear search
|
|
105
|
+
search_aria_label: Search table
|
|
106
|
+
search_placeholder: Search...
|
|
107
|
+
definition: Definition
|
|
108
|
+
definitions: Definitions
|
|
109
|
+
delete: Delete
|
|
110
|
+
details: Details
|
|
111
|
+
edit: Edit
|
|
112
|
+
edit_var: Edit %{name}
|
|
113
|
+
errors:
|
|
114
|
+
frame_only: This action can only be performed in a frame, redirecting to the
|
|
115
|
+
dashboard.
|
|
116
|
+
prevented_saving:
|
|
117
|
+
few: "%{count} errors prevented saving:"
|
|
118
|
+
many: "%{count} errors prevented saving:"
|
|
119
|
+
one: '1 error prevented saving:'
|
|
120
|
+
other: "%{count} errors prevented saving:"
|
|
121
|
+
two: '2 errors prevented saving:'
|
|
122
|
+
zero: No errors, all good!
|
|
123
|
+
filter_by: 'Filter by:'
|
|
124
|
+
footer:
|
|
125
|
+
copyright: "© %{year} %{company} All rights reserved."
|
|
126
|
+
documentation: Documentation
|
|
127
|
+
need_help: Need guaranteed uptime & expert help?
|
|
128
|
+
open_issue: Open an Issue
|
|
129
|
+
project_homepage: Project Homepage
|
|
130
|
+
support: Get Professional Support →
|
|
131
|
+
tagline: Built with ❤️ by developers, for developers.
|
|
132
|
+
tooltip:
|
|
133
|
+
documentation: Read the documentation
|
|
134
|
+
gem_version: Click to visit the RubyGems page
|
|
135
|
+
open_issue: Report a bug or request a feature
|
|
136
|
+
project_homepage: GitHub repository
|
|
137
|
+
support: Professional support plans
|
|
138
|
+
version: v%{version}
|
|
139
|
+
header:
|
|
140
|
+
signed_in_as: Signed in as %{email}
|
|
141
|
+
history: History
|
|
142
|
+
loading: Loading...
|
|
143
|
+
loading_definitions: Loading definitions...
|
|
144
|
+
loading_runs: Loading runs...
|
|
145
|
+
mat_view_definition:
|
|
146
|
+
create_mv: Create Smriti
|
|
147
|
+
create_mv_tooltip: Creates the materialized view in the database.
|
|
148
|
+
delete_confirm: Delete the definition %{name}? (Does NOT drop Smriti)
|
|
149
|
+
delete_tooltip: Deletes the definition but does NOT drop the materialized view
|
|
150
|
+
in the database.
|
|
151
|
+
drop_mv: Drop Smriti
|
|
152
|
+
drop_mv_cascade: Drop Smriti (Cascade)
|
|
153
|
+
drop_mv_cascade_confirm: Drop the materialized view and all dependent objects
|
|
154
|
+
for %{name}?
|
|
155
|
+
drop_mv_cascade_tooltip: Drops the materialized view and all dependent objects
|
|
156
|
+
in the database. The definition remains.
|
|
157
|
+
drop_mv_confirm: Drop the materialized view for %{name}?
|
|
158
|
+
drop_mv_tooltip: Drops the materialized view in the database. The definition
|
|
159
|
+
remains.
|
|
160
|
+
edit_tooltip: Edit materialized view definition.
|
|
161
|
+
materialized_view: Materialized view
|
|
162
|
+
materialized_view_exists: Materialized view exists
|
|
163
|
+
materialized_view_not_exists: Materialized view not created yet!
|
|
164
|
+
new_definition: New definition
|
|
165
|
+
new_definition_tooltip: Create a new materialized view definition.
|
|
166
|
+
no_definitions: No materialized view definitions found. Create one to get started.
|
|
167
|
+
no_definitions_if_filtered: No materialized view definitions found for the selected
|
|
168
|
+
filters or search.
|
|
169
|
+
refresh_tooltip: Refreshes the materialized view in the database.
|
|
170
|
+
sql_summary_tooltip: Click to expand/collapse SQL
|
|
171
|
+
view_tooltip: View materialized view definition.
|
|
172
|
+
mat_view_run:
|
|
173
|
+
error_tooltip: Error message if the run failed.
|
|
174
|
+
meta_tooltip: Additional metadata in JSON format.
|
|
175
|
+
no_runs: No runs found.
|
|
176
|
+
no_runs_if_filtered: No runs found for the selected filters.
|
|
177
|
+
view_details: View details
|
|
178
|
+
view_tooltip: View run details.
|
|
179
|
+
no_filter: Any (no filter)
|
|
180
|
+
no_value: No value (nil or empty)
|
|
181
|
+
per_page: Per page
|
|
182
|
+
project_author: CodeVedas Inc.
|
|
183
|
+
project_description: Admin interface for managing PostgreSQL materialized views
|
|
184
|
+
in Rails applications.
|
|
185
|
+
project_tags: rails, ruby, materialized views, admin, dashboard, ui, interface,
|
|
186
|
+
management
|
|
187
|
+
refresh: Refresh
|
|
188
|
+
refresh_contents: Refresh contents
|
|
189
|
+
reloading: Reloading...
|
|
190
|
+
reset: Reset
|
|
191
|
+
run: Run
|
|
192
|
+
runs: Runs
|
|
193
|
+
save_changes: Save changes
|
|
194
|
+
settings:
|
|
195
|
+
auto: Auto
|
|
196
|
+
dark: Dark
|
|
197
|
+
language: Language
|
|
198
|
+
language_hint: Choose your interface language.
|
|
199
|
+
light: Light
|
|
200
|
+
theme: Theme
|
|
201
|
+
theme_hint: Auto follows your system preference; light and dark override it.
|
|
202
|
+
title: Preferences
|
|
203
|
+
title: Smriti Admin
|
|
204
|
+
view_var: View %{name}
|
|
205
|
+
x_miliseconds: "%{count} ms"
|
|
206
|
+
number:
|
|
207
|
+
format:
|
|
208
|
+
delimiter: ","
|
|
209
|
+
separator: "."
|
|
210
|
+
numbers:
|
|
211
|
+
eight: 8
|
|
212
|
+
five: 5
|
|
213
|
+
four: 4
|
|
214
|
+
nine: 9
|
|
215
|
+
one: 1
|
|
216
|
+
seven: 7
|
|
217
|
+
six: 6
|
|
218
|
+
three: 3
|
|
219
|
+
two: 2
|
|
220
|
+
zero: 0
|
|
221
|
+
time:
|
|
222
|
+
am: AM
|
|
223
|
+
formats:
|
|
224
|
+
datetime12hour: "%Y-%m-%d %I:%M:%S %p"
|
|
225
|
+
pm: PM
|